use-voice is a developer-oriented open-source platform for building voice AI chatbots. It abstracts away the complexities of creating speech-to-speech pipelines, allowing you to focus on building the best voice AI applications.
- No-Code Provider Swapping: Easily switch between different STT, LLM, and TTS providers without writing any code.
- Built-in Testing Environment: Test your voice chatbot directly within the platform.
- Rapid Deployment: Add your chatbot to your website with just an access token and three lines of code.
- Usage Analytics: Access usage history and track chatbot and user interactions.
- Optimized Performance: Leverages streaming and LiveKit WebRTC to minimize latency.
First, create a chatbot. You will need an account to do this. Sign up here.
In the chatbot dashboard, complete all the required config fields. This is where you define your chatbot's pipeline and behavior. Then, generate a public access token in the deploy tab.
Next, add the use-voice NPM package to your project.
pnpm add use-voice
Finally, import use-voice and run start
. Done!
import { useVoice } from "use-voice";
export default function Example() {
const { start } = useVoice({
accessToken: "INSERT CHATBOT PUBLIC ACCESS TOKEN HERE",
});
return <button onClick={start}>start</button>;
}
use-voice chatbots operate as speech-to-speech pipelines:
- Speech-to-Text (STT): Converts user's speech input into text.
- Large-Language-Model (LLM): Uses the transcription as input for a large language model to generate the chatbot's response.
- Text-to-Speech (TTS): Transforms the generated text response back into audio for the user.
use-voice currently supports 10 providers:
Type | Company | Model |
---|---|---|
STT | Deepgram | Nova-2 |
LLM | OpenAI | GPT-4o |
LLM | OpenAI | GPT-4o mini |
LLM | Anthropic | Claude 3.5 Sonnet |
LLM | Anthropic | Claude 3 Haiku |
TTS | ElevenLabs | Turbo v2.5 |
TTS | ElevenLabs | Multilingual v2 |
TTS | OpenAI | tts-1 |
TTS | OpenAI | tts-1-hd |
TTS | Cartesia | Sonic English |