Oliva : un assistant de recherche de produits à intelligence multiple commandé par la voix
Introduction générale
Oliva est un outil d'assistance multi-intelligence open source développé par Deluxer sur GitHub. Oliva est un outil d'assistance multi-intelligence open source développé par Deluxer sur GitHub, qui aide les utilisateurs à rechercher des informations sur les produits dans la base de données Qdrant grâce à la collaboration de plusieurs intelligences artificielles. Oliva convient aux développeurs et aux chercheurs, et le code est entièrement ouvert pour que les utilisateurs puissent le télécharger, le modifier et le déployer. Il s'agit non seulement d'un outil pratique, mais aussi d'une plateforme d'apprentissage de l'architecture multi-intelligence. Le projet s'appuie sur des piles technologiques modernes telles que Livekit et Deepgram, qui permettent une interaction vocale en temps réel.

Liste des fonctions
- Recherche commandée par la voix : l'utilisateur saisit des commandes vocales et le corps intelligent exécute la tâche de recherche.
- Collaboration multi-intelligence : plusieurs intelligences IA se répartissent les tâches de traitement, sous la coordination d'une intelligence superviseur.
- Aide à la recherche sémantique : basée sur LangChain et Superlinked, elle permet une recherche de contenu précise.
- Code source ouvert : le code complet est fourni et les utilisateurs sont libres de le modifier et d'en étendre les fonctionnalités.
- Déploiement local ou dans le nuage : prise en charge de l'exécution locale ou sur un serveur avec une grande flexibilité.
Utiliser l'aide
Oliva est un projet open source basé sur GitHub, vous devez configurer l'environnement et les dépendances avant de l'utiliser. Vous trouverez ci-dessous un guide d'installation et d'utilisation détaillé pour vous aider à démarrer rapidement.
Processus d'installation
- Préparation de l'environnement Python
Oliva nécessite Python 3.12 ou une version ultérieure. Vérifier la version :
python --version
Si vous n'avez pas la bonne version, allez sur le site web de Python, téléchargez-la et installez-la.
- projet de clonage
Ouvrez https://github.com/Deluxer/oliva, cliquez sur le bouton "Code", copiez le lien HTTPS et exécutez-le :
git clone https://github.com/Deluxer/oliva.git
Vous devez d'abord installer Git, adresse de téléchargement : site officiel de Git.
- Aller dans le répertoire du projet
Téléchargez et allez dans le dossier :
cd oliva
- Créer un environnement virtuel
Pour éviter les conflits de dépendance, il est recommandé de créer un environnement virtuel :
python -m venv .venv
Activer l'environnement :
- Fenêtres :
.venv\Scripts\activate
- Mac/Linux :
source .venv/bin/activate
- Installation des dépendances
utiliseruv
Dépendances en matière de synchronisation des outils :
uv sync
Cela créera automatiquement l'environnement virtuel et installera toutes les dépendances telles que LangChain, Superlinked, etc. Si vous n'avez pas uv
Il faut donc d'abord l'installer :
pip install uv
- Configuration de la base de données Qdrant
Exécuter Qdrant avec 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
Vous devez d'abord installer Docker, téléchargez-le à partir du site officiel de Docker. Placez le fichier your_api_key
Remplacer par une clé personnalisée.
- Création d'un compte Livekit
existent Livekit Cloud Inscrivez-vous pour obtenir les informations suivantes :
LIVEKIT_URL=wss://your-project.livekit.cloud
LIVEKIT_API_KEY=your_key
LIVEKIT_API_SECRET=your_secret
Enregistrez ces valeurs dans une variable d'environnement.
- Configuration des variables d'environnement
Copiez le fichier d'exemple et modifiez-le :
cp .env.example .env
existent .env
Le fichier est rempli de Livekit et de Deepgram (Deepgram doit être dans le Site officiel de Deepgram (S'inscrire pour y accéder).
- Alimentation de la base de données
sur la base de tabular-semantic-search-tutorial pour configurer les données, ou décompressez simplement le fichierassets/snapshot.zip
vers Qdrant.
Principales fonctions
- Lancer l'assistant vocal
Exécutez-le dans le répertoire du projet :
make oliva-start
Cela démarrera le service d'assistant vocal. Assurez-vous que Qdrant et Livekit sont en cours d'exécution.
- Connexion à l'interface frontale
entretiens Agent Terrain de jeuxSi vous avez un projet Livekit, entrez vos identifiants de projet Livekit pour vous connecter à l'assistant. Vous pouvez également l'exécuter localement : - clone (mot d'emprunt) Agent Terrain de jeux Entrepôt: :
git clone https://github.com/livekit/agents-playground.git
- Installez les dépendances et démarrez :
npm install npm run start
Saisissez une commande vocale dans l'interface, par exemple "Rechercher un produit".
- recherche sémantique
Il y a deux façons d'effectuer une recherche : - Utiliser Superlinked :
make agent-search-by-superlinked
- Utiliser des fichiers JSON :
make agent-search-by-json
Les résultats de la recherche sont renvoyés par les intelligences de la base de données Qdrant.
Fonction en vedette Fonctionnement
- interaction vocale
Oliva permet de saisir des commandes vocales. Après le démarrage, dans l'Agent Terrain de jeux Cliquez sur l'icône du microphone dans Deepgram et dites ce que vous voulez (par exemple, "Trouver un téléphone portable"). Deepgram convertit la parole en texte et les intelligences la traitent et renvoient les résultats. L'intelligence du superviseur décidera de l'intelligence qui exécutera la tâche. - collaboration multi-intelligence
Le projet utilise un flux de travail graphique (LangGraph) contenant plusieurs nœuds (par exemple, rechercher, générer) et des arêtes conditionnelles. Le fichier de configuration se trouve dans le répertoireapp/agents/langchain/config/
dans lequel le comportement du corps intelligent peut être ajusté. La logique de base de laapp/agents/
Catalogue. - Extensions personnalisées
Vous souhaitez ajouter des fonctionnalités ? Modifierapp/agents/implementations/
dans le code du corps intelligent. Par exemple, pour ajouter un nouvel outil, vous devez ajouter l'élémentapp/agents/langchain/tools/
Défini dans.
mise en garde
- Assurez-vous d'avoir une bonne connexion internet, Livekit et Deepgram nécessitent une connexion internet.
- Le projet comporte de nombreuses dépendances et la configuration initiale peut nécessiter plusieurs sessions de débogage.
- Vérifiez les commits de GitHub pour vous assurer que vous utilisez le code le plus récent.
Grâce à ces étapes, vous pouvez faire fonctionner Oliva dans son intégralité et découvrir la fonction de recherche à commande vocale.
scénario d'application
- Demande d'informations sur les produits
Les utilisateurs demandent vocalement des détails sur les produits et Oliva renvoie les résultats de la base de données Qdrant, ce qui convient aux scénarios de commerce électronique. - Apprentissage technique
Les développeurs étudient les architectures de corps multi-intelligents et modifient le code pour tester différents flux de travail. - Démonstration en direct
Démontrer la fonctionnalité de l'assistant vocal lors des réunions pour mettre en évidence les capacités de collaboration de l'IA.
QA
- Que dois-je faire si mon assistant vocal ne répond pas ?
Vérifiez que les clés Livekit et Deepgram sont correctement configurées et que la connexion réseau fonctionne. - Que dois-je faire si Qdrant ne démarre pas ?
Vérifiez que Docker fonctionne et que les ports 6333 et 6334 ne sont pas occupés. - Peut-il être utilisé hors ligne ?
La fonction vocale nécessite une connexion internet et la fonction de recherche peut être exécutée hors ligne si les données sont localisées.
© déclaration de droits d'auteur
L'article est protégé par le droit d'auteur et ne doit pas être reproduit sans autorisation.
Articles connexes
Pas de commentaires...