Aprendizagem pessoal com IA
e orientação prática
讯飞绘镜

Oliva: um assistente de pesquisa de produtos com inteligência múltipla controlado por voz

Introdução geral

O Oliva é uma ferramenta de assistente de inteligência múltipla de código aberto desenvolvida pela Deluxer no GitHub. O Oliva é uma ferramenta de assistente de inteligência múltipla de código aberto desenvolvida pela Deluxer no GitHub, que ajuda os usuários a pesquisar informações sobre produtos no banco de dados Qdrant por meio da colaboração de várias inteligências de IA. O Oliva é adequado para desenvolvedores ou pesquisadores, e o código é totalmente aberto para que os usuários possam fazer download, modificar e implantar. Ele não é apenas uma ferramenta prática, mas também uma plataforma para aprender sobre a arquitetura de inteligência múltipla. O projeto se baseia em pilhas de tecnologia modernas, como Livekit e Deepgram, que oferecem suporte à interação de voz em tempo real.

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


 

Lista de funções

  • Pesquisa controlada por voz: o usuário insere comandos por voz e o corpo inteligente conclui a tarefa de pesquisa.
  • Colaboração de várias inteligências: várias inteligências de IA dividem as tarefas de processamento, coordenadas por uma inteligência supervisora.
  • Suporte à pesquisa semântica: com base no LangChain e no Superlinked, ele permite a recuperação precisa de conteúdo.
  • Código-fonte aberto: o código completo é fornecido e os usuários têm liberdade para modificar e ampliar a funcionalidade.
  • Implementação local ou na nuvem: suporte para execução local ou em um servidor com alta flexibilidade.

 

Usando a Ajuda

O Oliva é um projeto de código aberto baseado no GitHub, e você precisa configurar o ambiente e as dependências antes de usá-lo. A seguir, um guia detalhado de instalação e uso para ajudá-lo a começar rapidamente.

Processo de instalação

  1. Preparando o ambiente Python
    O Oliva requer o Python 3.12 ou posterior. Verifique a versão:
python --version

Se você não tiver a versão correta, acesse o site do Python e faça o download e a instalação.

  1. projeto de clonagem
    Abra o site https://github.com/Deluxer/oliva, clique no botão "Code" (Código), copie o link HTTPS e execute-o:
git clone https://github.com/Deluxer/oliva.git

Primeiro, você precisa instalar o Git, endereço de download: site oficial do Git.

  1. Vá para o diretório do projeto
    Faça o download e vá para a pasta:
cd oliva
  1. Criação de um ambiente virtual
    Para evitar conflitos de dependência, é recomendável criar um ambiente virtual:
python -m venv .venv

Ativar o ambiente:

  • Windows:
    .venv\Scripts\activate
    
  • Mac/Linux:
    source .venv/bin/activate
    
  1. Instalação de dependências
    fazer uso de uv Dependências de sincronização de ferramentas:
uv sync

Isso criará automaticamente o ambiente virtual e instalará todas as dependências, como LangChain, Superlinked, etc. Se você não tiver o uvInstale-o primeiro:

pip install uv
  1. Configuração do banco de dados Qdrant
    Executar o Qdrant com o 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

Primeiro, você precisa instalar o Docker; faça o download em: site oficial do Docker. Coloque o arquivo your_api_key Substitua por uma chave personalizada.

  1. Configuração de uma conta do Livekit
    existir Nuvem do Livekit Registre-se para obter as seguintes informações:
LIVEKIT_URL=wss://your-project.livekit.cloud
LIVEKIT_API_KEY=your_key
LIVEKIT_API_SECRET=your_secret

Salve esses valores em uma variável de ambiente.

  1. Configuração de variáveis de ambiente
    Copie o arquivo de exemplo e edite-o:
cp .env.example .env

existir .env O arquivo é preenchido com o Livekit e o Deepgram (O Deepgram precisa estar no Site oficial do Deepgram (Registre-se para acessar).

  1. Preenchimento do banco de dados
    com base em Tabular-semantic-search-tutorial para configurar os dados, ou simplesmente descompacte o arquivo assets/snapshot.zip snapshots para o Qdrant.

Funções principais

  • Iniciar o assistente de voz
    Execute-o no diretório do projeto:
make oliva-start

Isso iniciará o serviço de assistente de voz. Certifique-se de que o Qdrant e o Livekit estejam em execução.

  • Conexão com a interface de front-end
    entrevistas Agente PlaygroundDigite suas credenciais de projeto do Livekit para se conectar ao assistente. Ou execute-o localmente:
  • clone (palavra emprestada) Agente Playground Warehouse::
    git clone https://github.com/livekit/agents-playground.git
    
  • Instale as dependências e inicie:
    npm install
    npm run start
    

Digite um comando de voz na interface, como "Search for a product" (Procurar um produto).

  • pesquisa semântica
    Há duas maneiras de pesquisar:
  • Use o Superlinked:
    make agent-search-by-superlinked
    
  • Use arquivos JSON:
    make agent-search-by-json
    

Os resultados da pesquisa são retornados por inteligências do banco de dados Qdrant.

Operação da função em destaque

  • interação por voz
    O Oliva suporta a inserção de comandos por voz. Após a inicialização, no menu Agent Playground Toque no ícone do microfone no Deepgram e diga o que deseja (por exemplo, "Localizar um telefone celular"). O Deepgram converte a fala em texto, e as inteligências a processam e retornam os resultados. A inteligência supervisora decidirá qual inteligência executará a tarefa.
  • colaboração de inteligência múltipla
    O projeto usa um fluxo de trabalho gráfico (LangGraph) que contém vários nós (por exemplo, pesquisar, gerar) e bordas condicionais. O arquivo de configuração está no diretório app/agents/langchain/config/ em que o comportamento inteligente do corpo pode ser ajustado. A lógica central do app/agents/ Catálogo.
  • Extensões personalizadas
    Deseja adicionar recursos? Editar app/agents/implementations/ no código do corpo inteligente. Por exemplo, para adicionar uma nova ferramenta, você precisa adicionar a tag app/agents/langchain/tools/ Definido em.

advertência

  • Certifique-se de que você tenha uma boa conexão com a Internet, pois o Livekit e o Deepgram exigem uma conexão com a Internet.
  • O projeto tem muitas dependências, e a configuração inicial pode exigir várias sessões de depuração.
  • Verifique os commits do GitHub para ter certeza de que está usando o código mais recente.

Com essas etapas, você pode executar o Oliva em sua totalidade e experimentar a função de pesquisa controlada por voz.

 

cenário do aplicativo

  1. Consulta de informações sobre o produto
    Os usuários solicitam detalhes do produto por voz e o Oliva retorna os resultados do banco de dados Qdrant, adequado para cenários de comércio eletrônico.
  2. Aprendizagem técnica
    Os desenvolvedores estudam arquiteturas de corpos com várias inteligências e modificam o código para testar diferentes fluxos de trabalho.
  3. Demonstração ao vivo
    Demonstre a funcionalidade do assistente de voz em reuniões para destacar os recursos de colaboração com IA.

 

QA

  1. O que devo fazer se meu assistente de voz não responder?
    Verifique se as chaves do Livekit e do Deepgram estão configuradas corretamente e certifique-se de que a conexão de rede esteja funcionando.
  2. O que devo fazer se o Qdrant não conseguir iniciar?
    Verifique se o Docker está em execução e se as portas 6333 e 6334 não estão ocupadas.
  3. Ele pode ser usado off-line?
    A função de voz requer uma conexão com a Internet, e a função de pesquisa pode ser executada off-line se os dados estiverem localizados.
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Oliva: um assistente de pesquisa de produtos com inteligência múltipla controlado por voz
pt_BRPortuguês do Brasil