Irina es una asistente de voz rusa para el trabajo fuera de línea. Requiere Python 3.5+ (la dependencia puede ser menor, pero en cualquier caso Python 3)
Admite complementos (habilidades).
Artículo sobre Habri | El segundo artículo sobre Habri | El tercer artículo sobre Habri | Grupo en telegrama
A través del servicio vsegpt.ru, otro proyecto del autor de Irina:
Vaya a https://github.com/janvarev/irene-va-win-installer, descargue el código (código/descarga zip) y siga las instrucciones.
Después de la instalación, los siguientes comandos estarán disponibles: "Irina Hello", "Irina Throw the Coin", "Irina Tear the Cube", "Irina el juego es más pequeño", "Timer de Irina tres minutos"
Para preparar o resolver problemas, inicie start-settings-manager.bat para iniciar el Administrador de configuración: puede finalizar los complementos y encontrar comandos adicionales.
Más muelles para unir esta opción: Docs/install_win_compact.md
Después de la instalación, los equipos fuera de línea estarán disponibles (porque esta es una configuración predeterminada). Ejemplo: "Irina Hello", "Irina Tear the Coin", "Irina Tear the Cube", "Irina el juego es más pequeño", "Timer de Irina tres minutos"
Cómo preparar esta opción: docs/install_win_compact.md
Necesitará el Python instalado (aproximadamente 3.7-3.11).
Para instalar rápidamente todas las dependencias requeridas, puede usar el comando: pip install -r requirements.txt (para Linux y MacOS - Primer instalación de paquetes para AudioPlayer)
Para comenzar a comenzar, ejecute el archivo runva_vosk.py en la carpeta raíz. Por defecto, lanzará el seguidor de VOSK fuera de línea para reconocer el discurso con un micrófono y el motor PYTSX para expresar más a un asistente sobre PYTTSX aquí.
Después de comenzar, puede consultar con un equipo simple, diga "¡Irina, hola!" En el micrófono
La carpeta con la configuración de opciones aparecerá después del primer lanzamiento de Irina, en ella puede corregir la configuración.
Más paso por paso de la instalación sobre la instalación en Win (especialmente Win 7): Docs/Install_win.md
Resolver algunos problemas al instalar en Linux: Docs/install_linux.md
Resolver algunos problemas al instalar en Macs: Docs/install_mac.md
Los principios de depuración durante los problemas de instalación: Docs/Install_debug.md
Los errores se pueden escribir en temas, discutidos, en telegrama
C Versión 9.0 Administrador de configuración web disponible a través de Gradio.
Para iniciar, inicie el archivo runva_settings_manager.py desde la carpeta root.
Si desea ejecutar todo a través de un muelle: Docs/Install_docker.md (también hay muelles de Docker for Arm (frambuesas, etc.) de Ivan-Firefly)
Si solo desea componentes de clave complejos, ejecute el Dock: Docs/Install_Docker_Comp.MD
El lanzamiento de todos los equipos comienza con el nombre del asistente (sintonizado en Opciones/Core.json, por defecto - Irina). Esto se hace para excluir obras incorrectas cuando constante escucha el micrófono. A continuación, los equipos describirán los equipos sin el prefijo "Irina".
El soporte para el control local a través de la interfaz web por el reproductor MPC-HC está integrado en el motor, por lo que se recomienda usarlo. Se puede configurar en opciones/core.json
El soporte de complementos se realiza en el motor JAA.PY: el motor de soporte de motor de un solo archivo minimalista y su configuración.
Los complementos se encuentran en la carpeta de complementos y deben comenzar con el prefijo Plugins_.
La configuración de los complementos, si las hay, se encuentran en la carpeta de opciones (creada después del primer lanzamiento).
Para cada complemento se escribe si se requiere en línea. Retire para apagar la carpeta de complementos
Información completa: documentos/complementos.md
Si quieres saber:
Visita: #1
(Desde la versión 10.0.0) Para el lanzamiento, ejecute runva_plugin_installer.py
Atención: ¡Los complementos propuestos son compatibles con los desarrolladores de terceros partidos y pueden complementar y cambiar! ¡El autor de Irina no es responsable de su mantenimiento!
Para los desarrolladores : si desea agregar su complemento a esta lista para una instalación simplificada, deberá hacer lo siguiente:
Ejemplo del diseño del complemento: https://github.com/janvarev/irene_plugin_boltalka2_openai
Hay un buen complemento de terceros que le permite lanzar scripts de asistente de inicio a través de Irina: https://github.com/timhok/ireneva-script-trigger-plugugin
La configuración de complementos específicos se observa mejor en complementos
{
"contextDefaultDuration" : 10 , # Время в секундах, пока Ирина находится в контексте (контекст используется в непрерывном чате, играх и пр.; в контексте не надо использовать слово Ирина)
"contextRemoteWaitForCall" : false , # должна ли Ирина ждать от клиентов сингнала "Проигрывание ответа закончена, запускаем время для контекста?"
# официальные клиенты поддерживают contextRemoteWaitForCall, рекомендуется true
"fuzzyThreshold" : 0.5 , # (ПРО) Порог уверенности при использовании плагинов нечеткого распознавания команд
"isOnline" : true , # при установке в false будет выдавать заглушку на команды плагинов, требующих онлайн. Рекомендуется, если нужен только оффлайн.
"linguaFrancaLang" : "ru" , # язык для конвертации чисел в lingua-franca. Смените, если будете работать с другим языком
"logPolicy" : "cmd" , # all|cmd|none . Когда распознается речь с микрофона - выводить в консоль всегда | только, если является командой | никогда
"mpcHcPath" : "C: \ Program Files (x86) \ K-Lite Codec Pack \ MPC-HC64 \ mpc-hc64_nvo.exe" , # путь до MPC HC, если используете
"mpcIsUse" : true , # используется ли MPC HC?
"mpcIsUseHttpRemote" : true , # MPC HC - включено ли управление через веб-интерфейс?
"playWavEngineId" : "audioplayer" , # плагин проигрыша WAV-файлов. Некоторые WAV требуют sounddevice.
"replyNoCommandFound" : "Извини, я не поняла" , # ответ при непонимании
"replyNoCommandFoundInContext" : "Не поняла..." , # ответ при непонимании в состоянии контекста
"replyOnlineRequired" : "Нужен онлайн" , # ответ при вызове в оффлайн функции плагина, требующего онлайн
"tempDir" : "temp" , # папка для временных файлов
"ttsEngineId" : "pyttsx" , # используемый TTS-движок
"ttsEngineId2" : "" , # 2 используемый TTS-движок. Работает только на локальную озвучку - например, буфера обмена. Вызывается командой say2
"useTTSCache" : false , # при установке true в папке tts_cache будет кэшировать .wav файлы со сгенерированными TTS-движком ответами
"v" : "1.7" , # версия плагина core. Обновляется автоматически, не трогайте
"voiceAssNames" : "ирина|ирины|ирину" , # Если это появится в звуковом потоке, то дальше будет команда. (Различные имена помощника, рекомендуется несколько)
"voiceAssNameRunCmd" : { # если вы обратитесь к помощнику по этому имени, то в начало вашей команды будет подставлено соответствующее слово
"альбина" : "чатгпт"
}
}Para la depuración, puede usar el lanzamiento del sistema a través del archivo runva_cmdline.py .
Ella hace el núcleo ( vacío en vacore.py ) a través de la interfaz de la línea de comandos, esto es más conveniente que dictar en una voz.
Documentación de desarrollo
La instalación múltiple en el modo "cliente-servidor" es algo más complicada, pero le permite administrar IRINA:
Lea más sobre la configuración del cliente-servidor
Documentación de la API web
Si tiene problemas con la instalación de VOSK (por ejemplo, en Mac), puede usar el trabajo a través del servidor de reconocimiento de voz de Vosk Auto, que se lanza a través del muelle.
docker run -d -p 2700:2700 alphacep/kaldi-ru:latest (detalles: https://alphacephei.com/vosk/server)vosk_asr_server.py , reduciendo los parámetros dentro args . interface = os . environ . get ( 'VOSK_SERVER_INTERFACE' , "0.0.0.0" )
args . port = int ( os . environ . get ( 'VOSK_SERVER_PORT' , 2700 )runva_voskrem.py . Leerá datos del micrófono y enviará al servidor para obtener reconocimiento. Si necesita lanzar el reconocimiento en otra máquina -use el parámetro -u (--uri): runva_voskrem.py -u=ws://100.100.100.100:2700 para aclarar la dirección del servidor.
SpeechRecognition: un motor clásico para el lanzamiento de Google y varios otros servicios. Para iniciar este reconocimiento, inicie el sistema a través del archivo runva_speecrecognition.py .
Para el trabajo, necesitará:
pip install PyAudio
pip install SpeechRecognition
Si hay problemas con la instalación de Pyaudio, lea los detalles de Enjirouz
Características: Reconocimiento de números. La misma frase se reconoce de la siguiente manera:
El proyecto en su conjunto no implica soporte para términos multilingües, porque utiliza palabras de análisis personalizadas en complementos. Pero, sin embargo, el núcleo ( Vacore.py ) no está completamente vinculado a la lengua, y puede recolectar su propia instalación en otro idioma, simplemente reescribiendo los complementos para ellos.
Se configuran varias frases de lenguaje que determinan el comportamiento central del asistente de lenguaje (su nombre, así como frases como "No entendí") se configuran en el archivo de configuración del complemento central .
C Versión 7.5 Admite procesamiento difuso de entrada de usuario.
Para establecer el umbral de reconocimiento, existe un parámetro global difuso en Core.json, acepta valores de 0 a 1 (1 - Confianza completa en la frase)
Complementos famosos que trabajan con esto:
Desde la versión 8.1 en el modo de prueba, se hizo soporte para el plano Core-Plane de Vasya's Voice Assistant: https://github.com/oknolaz/vasisualy
Para agregar:
Funciona en los casos más simples, probados en los complementos de monedas y cristal_ball.
Si no funciona, lea el código. El soporte se realiza a través del complemento complemento_vasi.py.
Si desea agregar algo al proyecto, es bueno familiarizarse con la Política de MD.
Corto:
@Enjirouz para el proyecto del asistente de voz: https://github.com/enjirouz/voice-sistant-app, que se convirtió en la base (aunque fue muy rediseñada)
Alphacephei para la hermosa biblioteca de reconocimiento Vosk (https://alphacephei.com/vosk/index.ru)
La principal dificultad en Opensors es no escribir un código. Escribir el código es interesante.
La dificultad en OpenSors es mantener el código y los usuarios durante mucho tiempo.
Responder preguntas. Corrige errores. Escribe artículos y documentación.
Si desea apoyar mi interés y hacer de Irina, como asistente vocal independiente de las grandes empresas, puede apoyar, puede: puede: