
Ver demostración • Introducción • Características de solicitud •
Project Saturday es una caja de herramientas para la computación vocal. Proporciona herramientas para construir interfaces vocales elegantes para los LLM modernos. El objetivo de este proyecto es fomentar una comunidad de personas con mentalidad similar que desean presentar la tecnología que hemos sido prometidas en las películas de ciencia ficción durante décadas. Su objetivo es ser altamente modular y flexible mientras permanece desacoplado de modelos de IA específicos. Esto permite actualizaciones perfectas cuando se lanza una nueva tecnología de IA.
Project Sábado está compuesto por herramientas. Una herramienta es una abstracción que encapsula una parte específica de la pila de computación vocal. Hay 2 construcciones principales que comprenden una herramienta:
Motor : un motor encapsula la funcionalidad específica del dominio de una herramienta. Esta lógica debe seguir siendo la misma independientemente del backend de inferencia utilizado. Por ejemplo, en el caso de la herramienta STT, el motor contiene el algoritmo de detección de actividad de voz junto con una lógica de almacenamiento de almacenamiento personalizado. Esto permite que el backend cambie fácilmente sin necesidad de reescribir el código.
Backend : un backend es lo que realmente ejecuta la inferencia de IA. Este suele ser un envoltorio delgado, pero permite más flexibilidad y facilidad de actualización. También se puede escribir un backend para interactuar con un servidor HTTP para permitir un lenguaje fácil de inter-op.
Este proyecto contiene 3 tipos principales de herramientas. Las 3 herramientas principales son STT, TTT y TTS.
Las herramientas STT son los oídos del sistema y realizan una inferencia de voz a texto en audio entrante.
Las herramientas TTT son los cerebros del sistema y realizan una inferencia de texto a texto una vez que el audio se ha transformado en texto.
Las herramientas TTS son la boca del sistema y realizan una inferencia de texto a voz en el texto probado por la herramienta TTT.
Aquí hay un diagrama de cómo funciona actualmente la demostración principal.

La demostración que viene en este repositorio es su propio jarvis personal como asistente.
Descargo de responsabilidad : solo he probado esto en procesadores M1 Pro y Max. Estamos haciendo mucha inferencia local, por lo que la demostración requiere bastante potencia de procesamiento. Su kilometraje puede muy en diferentes sistemas operativos y hardware. Si se encuentra con problemas, abra un problema.
Para ejecutar la demostración hay algunos requisitos previos.
Para ejecutar la demostración, Golang, Python, Make y un cumplidor de C se requieren.
Hay 3 procesos que deben ejecutarse para la demostración:
pkg-config y opus . En macOS estos se pueden instalar con Brew: brew install opus pkg-configmecab y espeak . En macOS se pueden instalar con Brew: brew install mecab espeakNota : Por ahora, el orden en el que inicia los procesos son importantes. Debe iniciar el servidor RTC y el servidor TTS antes de iniciar el cliente.
Desde la raíz de la ejecución del proyecto, make rtc
make rtcConfiguración por primera vez : cuando ejecuta el servidor TTS por primera vez, deberá instalar las dependencias. Considere usar un entorno virtual para esto.
cd tts/servers/coqui-tts
pip install -r requirements.txt Desde la raíz de la ejecución del proyecto make tts
El cliente requiere whisper.cpp y el uso de cgo , sin embargo, el script Make debe encargarse de esto por usted.
Desde la raíz del proyecto ejecutar make client
make clientLo principal en la hoja de ruta en este momento es obtener una inferencia TTT para correr localmente con algo como Llama.cpp. Al momento de publicar esto, no tengo excelente Internet y no puedo descargar los pesos del modelo necesarios para que esto funcione.
El segundo elemento más grande en mi hoja de ruta es continuar mejorando el proceso de configuración y configuración.
Lo último en mi hoja de ruta es continuar construyendo aplicaciones con el sábado. Espero que más personas se construyan junto a mí, ya que esta es la forma #1 de mejorar el proyecto y descubrir nuevas características que deben agregarse.
¡Únete a la discordia para mantenerte actualizado!
Este proyecto está construido con los siguientes paquetes de código abierto:
Soy muy perfecto y seguramente habrá errores y cosas que he pasado por alto en el proceso de instalación. Por favor, agregue problemas y no dude en comunicarse si algo no está claro. Además, tenemos una discordia.
Las contribuciones son las que hacen que la comunidad de código abierto sea un lugar tan increíble para aprender, inspirar y crear. Cualquier contribución que haga es muy apreciada .
git checkout -b feature/AmazingFeaturegit commit -m 'Add some AmazingFeature'git push origin feature/AmazingFeatureMIT
Si le gusta el proyecto y desea apoyarlo financieramente, no dude en comprarme un café
Github @grvydev · twitter @grvydev · Envíe un correo electrónico a [email protected]