Este projeto é um assistente de voz movido a IA, utilizando vários modelos e serviços de IA para fornecer respostas inteligentes às consultas do usuário. Ele suporta entrada de voz, transcrição, texto em fala, processamento de imagens e chamadas de função com componentes da interface do usuário renderizados condicionalmente. Isso foi inspirado na recente tendência de dispositivos de IA, como o Humane AI Pin e o Rabbit R1.
git clone https://github.com/developersdigest/ai-devices.gitnpm install
# or
bun installPara usar esse assistente de voz movido a IA, você precisa fornecer as teclas de API necessárias para os modelos e serviços de IA selecionados.
Substitua 'api_key_goes_here' pelas suas teclas de API reais para cada serviço.
npm run dev
# or
bun dev Acesse o aplicativo em http://localhost:3000 ou através do URL fornecido.
Modifique app/config.tsx para ajustar as configurações e configurações para o assistente de voz movido a IA. Aqui está uma visão geral das opções disponíveis:
export const config = {
// Inference settings
inferenceModelProvider : 'groq' , // 'groq' or 'openai'
inferenceModel : 'llama3-8b-8192' , // Groq: 'llama3-70b-8192' or 'llama3-8b-8192'.. OpenAI: 'gpt-4-turbo etc
// BELOW OPTIONAL are some options for the app to use
// Whisper settings
whisperModelProvider : 'openai' , // 'groq' or 'openai'
whisperModel : 'whisper-1' , // Groq: 'whisper-large-v3' OpenAI: 'whisper-1'
// TTS settings
ttsModelProvider : 'openai' , // only openai supported for now...
ttsModel : 'tts-1' , // only openai supported for now...s
ttsvoice : 'alloy' , // only openai supported for now... [alloy, echo, fable, onyx, nova, and shimmer]
// OPTIONAL:Vision settings
visionModelProvider : 'google' , // 'openai' or 'fal.ai' or 'google'
visionModel : 'gemini-1.5-flash-latest' , // OpenAI: 'gpt-4o' or Fal.ai: 'llava-next' or Google: 'gemini-1.5-flash-latest'
// Function calling + conditionally rendered UI
functionCallingModelProvider : 'openai' , // 'openai' current only
functionCallingModel : 'gpt-3.5-turbo' , // OpenAI: 'gpt-3-5-turbo'
// UI settings
enableResponseTimes : false , // Display response times for each message
enableSettingsUIToggle : true , // Display the settings UI toggle
enableTextToSpeechUIToggle : true , // Display the text to speech UI toggle
enableInternetResultsUIToggle : true , // Display the internet results UI toggle
enableUsePhotUIToggle : true , // Display the use photo UI toggle
enabledRabbitMode : true , // Enable the rabbit mode UI toggle
enabledLudicrousMode : true , // Enable the ludicrous mode UI toggle
useAttributionComponent : true , // Use the attribution component to display the attribution of the AI models/services used
// Rate limiting settings
useRateLimiting : false , // Use Upstash rate limiting to limit the number of requests per user
// Tracing with Langchain
useLangSmith : true , // Use LangSmith by Langchain to trace the execution of the functions in the config.tsx set to true to use.
} ; As contribuições são bem -vindas! Se você encontrar algum problema ou ter sugestões de melhorias, abra um problema ou envie uma solicitação de tração.
Eu sou o desenvolvedor por trás dos desenvolvedores Digest. Se você achar meu trabalho útil ou aproveitar o que faço, considere me apoiar. Aqui estão algumas maneiras de fazer isso: