Este es un módulo para MagicMirror².
Cómo funciona https://nikro.me/articles/professional/crafting-our-ai-assistant/
El objetivo del módulo es crear un widget interactivo personalizado que use herramientas de IA abiertas:
La idea es la siguiente:
Para usar este módulo, agregue el siguiente bloque de configuración a la matriz de módulos en el archivo config/config.js :
var config = {
modules : [
{
module : 'MMM-WhisperGPT' ,
config : {
// See below for configurable options
picovoiceKey : 'xxx' ,
picovoiceWord : 'JARVIS' ,
picovoiceSilenceTime : 3 ,
picovoiceSilenceThreshold : 600 ,
audioDeviceIndex : 3 ,
openAiKey : 'xxx' ,
openAiSystemMsg : 'xxx' ,
whisperUrl : '192.168.1.5:9000/asr' ,
whisperMethod : 'openai-whisper' ,
mimic3Url : '192.168.1.6:59125'
}
}
]
} | Opción | ¿Requerido? | Descripción |
|---|---|---|
picovoiceKey | Requerido | Clave de acceso Picovoice: debe registrarse para obtenerla, esto se usa para la palabra de activación. |
picovoiceWord | Opcional | Picovoice Word de activación, es decir, Bumblebee, Jarvis, etc. Predeterminado a Jarvis. |
picovoiceSilenceTime | Opcional | Período de silencio: los valores predeterminados a 3 (3 segundos). |
picovoiceSilenceThreshold | Opcional | Esto suele ser ruido de fondo * este número. El valor predeterminado es 1.1 (también conocido como 10%). |
audioDeviceIndex | Opcional | Dispositivo de audio - IE 3 - Esos se imprimirán cuando esté utilizando el modo de depuración. El valor predeterminado es 0. |
whisperUrl | Requerido | URL (¿o IP?) A la instancia autohospedada del susurro. |
whisperMethod | Opcional | Método Whisper: OpenAi-Whisper o más rápido. El valor predeterminado es: Whaster-Whisper. |
whisperLanguage | Opcional | Predeterminado es: EN. |
openAiKey | Requerido | Clave API de OpenAI. |
openAiSystemMsg | Opcional | MSG del sistema: cómo debe comportarse la IA. |
mimic3Url | Requerido | MIMIC3 URL (servidor), con protocolo, puerto, sin /API /TTS |
mimic3Voice | Opcional | MIMIC3 Voice - Predeterminado: EN_US/CMU -ARCIT_LOW%23GKA |
debug | Opcional | Si desea depurar, el valor predeterminado es: falso. |
Picovoice / puercoespine se usa para la palabra "disparador". Es una pequeña IA / Red Neural (NN) autohospedada. Picovoice ofrece una gama de servicios, incluida una licencia para esta IA fuera de línea. Solo envía estadísticas de uso, no las conversaciones de audio reales.
Whisper es un producto de código abierto de OpenAI. Es una IA de modelo de lenguaje grande (LLM) que maneja el habla a texto (transcripción). En mi caso personal, lo tengo a sí mismo en mi red local.
Usé esto: https://github.com/ahmetoner/whisper-asr-webservice
ChatGPT es otro producto de OpenAI. Es un modelo de lenguaje grande (LLM) ai. Deberá registrarse y obtener una clave API para usarla.
Langchain es una biblioteca construida alrededor de LLM que permite una funcionalidad adicional, como la memoria a largo plazo.
MIMIC3 de MyCroft es un sistema de texto a voz (TTS) basado en un modelo de idioma grande (LLM). Ofrece TTS realistas que pueden ejecutarse en sistemas con restricciones de recursos. Inicialmente intenté configurarlo en mi OrangePi, pero en su lugar, lo instalé en la misma máquina con Whisper y lo usé a través de la red.
Usé este Docker-Compose.yml
version : ' 3.7 '
services :
mimic3 :
image : mycroftai/mimic3
ports :
- 59125:59125
volumes :
- .:/home/mimic3/.local/share/mycroft/mimic3
stdin_open : true
tty : true mpg123 . Puede instalarlo utilizando el comando sudo apt-get install mpg123 .lame para la codificación de audio. Puede instalarlo utilizando el comando sudo apt-get install lame .