-
Notifications
You must be signed in to change notification settings - Fork 162
Uplift AI TTS #712
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Uplift AI TTS #712
Conversation
|
#apiKey: string; | ||
#baseURL: string; | ||
#voiceSettings: VoiceSettings; | ||
#tokenizer: tokenize.WordTokenizer | tokenize.SentenceTokenizer; | ||
#client: WebSocketClient | null = null; | ||
#logger = log(); | ||
#chunkTimeout: number; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd suggest using private
instead of #. cc @Shubhrakanti let me know your thoughts
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah lets use private
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can definitely remove them, but was following the convention on all the other tts.ts
stt.ts
files for other providers, they seem to be using # for all the private variables. Please let me know if I should still remove and replace with private.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah that's out dated let's use private
#apiKey: string; | ||
#baseURL: string; | ||
#voiceSettings: VoiceSettings; | ||
#tokenizer: tokenize.WordTokenizer | tokenize.SentenceTokenizer; | ||
#client: WebSocketClient | null = null; | ||
#logger = log(); | ||
#chunkTimeout: number; | ||
label = 'upliftai.SynthesizeStream'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
^
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added a few small comments, otherwise LGTM!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have you tested this manually with interrupts?
examples/src/test_*.ts | ||
examples/src/test_*.ts | ||
|
||
.claude |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
new line
"GOOGLE_CLOUD_LOCATION" | ||
"GOOGLE_CLOUD_LOCATION", | ||
"UPLIFTAI_API_KEY", | ||
"UPLIFTAI_BASE_URL" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why does this need to be parameterized as an env variable? This can just be defined in code with a default in the class constructor?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
will remove, its in the constructor as well.
#apiKey: string; | ||
#baseURL: string; | ||
#voiceSettings: VoiceSettings; | ||
#tokenizer: tokenize.WordTokenizer | tokenize.SentenceTokenizer; | ||
#client: WebSocketClient | null = null; | ||
#logger = log(); | ||
#chunkTimeout: number; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah lets use private
@Shubhrakanti created a quick loom to show interrupts https://www.loom.com/share/b57500b58a994fd386134240705cdbc2 |
@Shubhrakanti & @toubatbrian lmk what your thoughts are on my comments before I push next revision |
Hey @zaidqureshi2 sorry for the late reply, the loom seems not working. Could you please make a new link? Thanks |
Description
Added a TTS client for Uplift AI TTS, which uses websockets do provide streaming inference. Also added an example agent using it.
Changes Made
Pre-Review Checklist
Testing
restaurant_agent.ts
andrealtime_agent.ts
work properly (for major changes)Additional Notes
Note to reviewers: Please ensure the pre-review checklist is completed before starting your review.