Este proyecto es un asistente de voz a IA que utiliza varios modelos y servicios de IA para proporcionar respuestas inteligentes a las consultas de los usuarios. Admite entrada de voz, transcripción, texto a voz, procesamiento de imágenes y llamadas de función con componentes de UI renderizados condicionalmente. Esto se inspiró en la tendencia reciente de dispositivos AI como el Pin Humano AI y el Conejo R1.
git clone https://github.com/developersdigest/ai-devices.gitnpm install
# or
bun installPara usar este asistente de voz con AI, debe proporcionar las claves API necesarias para los modelos y servicios de IA seleccionados.
Reemplace 'API_KEY_GOES_HERE' con sus teclas API reales para cada servicio.
npm run dev
# or
bun dev Acceda a la aplicación en http://localhost:3000 o mediante la URL proporcionada.
Modifique app/config.tsx para ajustar la configuración y las configuraciones para el asistente de voz con AI. Aquí hay una descripción general de las opciones disponibles:
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.
} ; ¡Las contribuciones son bienvenidas! Si encuentra algún problema o tiene sugerencias de mejoras, abra un problema o envíe una solicitud de extracción.
Soy el desarrollador detrás de los desarrolladores Digest. Si encuentra útil mi trabajo o disfruta de lo que hago, considere apoyarme. Aquí hay algunas formas en que puedes hacer eso: