Oliva: un asistente de búsqueda de productos con inteligencia múltiple controlado por voz

Introducción general

Oliva es una herramienta de asistente multiinteligencia de código abierto desarrollada por Deluxer en GitHub. Oliva es un asistente multi-inteligencia de código abierto desarrollado por Deluxer en GitHub, que ayuda a los usuarios a buscar información de productos en la base de datos Qdrant a través de la colaboración de múltiples inteligencias IA. Oliva es adecuada para desarrolladores o investigadores, y el código es completamente abierto para que los usuarios lo descarguen, modifiquen y desplieguen. No es sólo una herramienta práctica, sino también una plataforma para aprender sobre arquitectura de inteligencias múltiples. El proyecto se basa en pilas tecnológicas modernas como Livekit y Deepgram, que admiten la interacción por voz en tiempo real.

Oliva:语音控制的多智能体产品搜索助手

 

Lista de funciones

  • Búsqueda controlada por voz: el usuario introduce órdenes por voz y el cuerpo inteligente completa la tarea de búsqueda.
  • Colaboración multiinteligencia: varias inteligencias IA se reparten las tareas de procesamiento, coordinadas por una inteligencia supervisora.
  • Soporte de búsqueda semántica: basado en LangChain y Superlinked, permite recuperar contenidos con precisión.
  • Código fuente abierto: se proporciona el código completo y los usuarios son libres de modificar y ampliar la funcionalidad.
  • Implantación local o en la nube: soporte para ejecutar localmente o en un servidor con gran flexibilidad.

 

Utilizar la ayuda

Oliva es un proyecto de código abierto basado en GitHub, es necesario configurar el entorno y las dependencias antes de su uso. La siguiente es una guía detallada de instalación y uso para ayudarle a empezar rápidamente.

Proceso de instalación

  1. Preparación del entorno Python
    Oliva requiere Python 3.12 o posterior. Compruebe la versión:
python --version

Si no tienes la versión correcta, ve al sitio web de Python y descárgala e instálala.

  1. proyecto de clonación
    Abra https://github.com/Deluxer/oliva, haga clic en el botón "Código", copie el enlace HTTPS y ejecútelo:
git clone https://github.com/Deluxer/oliva.git

Primero necesitas instalar Git, dirección de descarga: Git official website.

  1. Vaya al directorio del proyecto
    Descargue y vaya a la carpeta:
cd oliva
  1. Creación de un entorno virtual
    Para evitar conflictos de dependencias, se recomienda crear un entorno virtual:
python -m venv .venv

Activar el entorno:

  • Ventanas:
    .venv\Scripts\activate
    
  • Mac/Linux:
    source .venv/bin/activate
    
  1. Instalación de dependencias
    utilizar uv Dependencias de sincronización de herramientas:
uv sync

Esto creará automáticamente el entorno virtual e instalará todas las dependencias como LangChain, Superlinked, etc. Si no dispone de uvInstálelo primero:

pip install uv
  1. Configuración de la base de datos Qdrant
    Ejecutar Qdrant con Docker:
docker run -p 6333:6333 -p 6334:6334 -e QDRANT__SERVICE__API_KEY=your_api_key -v "$(pwd)/qdrant_storage:/qdrant/storage:z" qdrant/qdrant

Primero necesitas instalar Docker, descárgalo desde: Docker official website. Coloque el your_api_key Sustituir por una clave personalizada.

  1. Crear una cuenta Livekit
    existe Nube Livekit Regístrese para obtener la siguiente información:
LIVEKIT_URL=wss://your-project.livekit.cloud
LIVEKIT_API_KEY=your_key
LIVEKIT_API_SECRET=your_secret

Guarde estos valores en una variable de entorno.

  1. Configuración de variables de entorno
    Copie el archivo de ejemplo y edítelo:
cp .env.example .env

existe .env El archivo está lleno de Livekit y Deepgram (Deepgram tiene que estar en el Sitio web oficial de Deepgram (Regístrese para acceder).

  1. Rellenar la base de datos
    sobre la base de tabular-semantic-search-tutorial instrucciones para configurar los datos, o simplemente descomprima el assets/snapshot.zip instantáneas a Qdrant.

Funciones principales

  • Iniciar el asistente de voz
    Ejecútelo en el directorio del proyecto:
make oliva-start

Esto iniciará el servicio de asistente de voz. Asegúrate de que Qdrant y Livekit se están ejecutando.

  • Conectarse a la interfaz front-end
    entrevistas Zona de juegos para agentesSi tienes un proyecto Livekit, introduce las credenciales de tu proyecto Livekit para conectarte al asistente. O ejecútelo localmente:
  • clon (préstamo) Agente Playground Warehouse::
    git clone https://github.com/livekit/agents-playground.git
    
  • Instale las dependencias e inicie:
    npm install
    npm run start
    

Introduzca un comando de voz en la interfaz, como "Buscar un producto".

  • búsqueda semántica
    Hay dos formas de buscar:
  • Utiliza Superlinked:
    make agent-search-by-superlinked
    
  • Utilizar archivos JSON:
    make agent-search-by-json
    

Los resultados de la búsqueda son devueltos por inteligencias de la base de datos Qdrant.

Función destacada Operación

  • interacción por voz
    Oliva permite introducir comandos por voz. Tras el arranque, en el Agente Parque infantil Toca el icono del micrófono en Deepgram y di lo que quieres (por ejemplo, "Encontrar un teléfono móvil"), Deepgram convierte la voz en texto, y las inteligencias lo procesan y devuelven los resultados. La inteligencia supervisora decidirá qué inteligencia realizará la tarea.
  • colaboración multiinteligencia
    El proyecto utiliza un flujo de trabajo gráfico (LangGraph) que contiene múltiples nodos (por ejemplo, buscar, generar) y aristas condicionales. El archivo de configuración se encuentra en el directorio app/agents/langchain/config/ en el que se puede ajustar el comportamiento del cuerpo inteligente. La lógica central del app/agents/ Catálogo.
  • Extensiones personalizadas
    ¿Quieres añadir funciones? Edite app/agents/implementations/ en el código del cuerpo inteligente. Por ejemplo, para añadir una nueva herramienta es necesario añadir el parámetro app/agents/langchain/tools/ Definido en.

advertencia

  • Asegúrate de que tienes una buena conexión a Internet, Livekit y Deepgram requieren una conexión a Internet.
  • El proyecto tiene muchas dependencias, y la configuración inicial puede requerir varias sesiones de depuración.
  • Comprueba los commits de GitHub para asegurarte de que utilizas el código más reciente.

Con estos pasos, puede ejecutar Oliva en su totalidad y experimentar la función de búsqueda controlada por voz.

 

escenario de aplicación

  1. Solicitud de información sobre productos
    Los usuarios piden detalles del producto por voz y Oliva devuelve los resultados de la base de datos Qdrant, adecuada para escenarios de comercio electrónico.
  2. Aprendizaje técnico
    Los desarrolladores estudian arquitecturas de cuerpos multiinteligentes y modifican el código para probar distintos flujos de trabajo.
  3. Demostración en directo
    Demuestre la funcionalidad del asistente de voz en reuniones para destacar las capacidades de colaboración de la IA.

 

CONTROL DE CALIDAD

  1. ¿Qué debo hacer si mi asistente de voz no responde?
    Comprueba que las claves de Livekit y Deepgram están configuradas correctamente y asegúrate de que la conexión de red funciona.
  2. ¿Qué debo hacer si Qdrant no se inicia?
    Compruebe que Docker se está ejecutando y que los puertos 6333 y 6334 no están ocupados.
  3. ¿Se puede utilizar sin conexión?
    La función de voz requiere una conexión a Internet, y la función de búsqueda puede ejecutarse sin conexión si los datos están localizados.
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...