Skip to content

Latest commit

 

History

History
480 lines (340 loc) · 21.8 KB

File metadata and controls

480 lines (340 loc) · 21.8 KB

Table des matières

Bienvenue dans TEN

TEN est un écosystème open source complet pour créer, personnaliser et déployer des agents conversationnels IA en temps réel avec des capacités multimodales (voix, vision et avatars).

TEN inclut TEN Framework, TEN VAD, TEN Turn Detection et TEN Portal. Consultez l’écosystème TEN pour plus de détails.


Canal communautaire Rôle
Follow on X Suivez TEN Framework sur X pour connaître les actualités et annonces
Follow on LinkedIn Suivez TEN Framework sur LinkedIn pour les mises à jour
Discord TEN Community Rejoignez notre communauté Discord pour échanger avec les développeurs
Hugging Face Space Retrouvez nos espaces et modèles sur Hugging Face
WeChat Rejoignez notre groupe WeChat pour la communauté chinoise

Tip

Mettez une étoile ⭐️ au dépôt TEN

Recevez les notifications de nouvelles versions et aidez-nous à faire grandir TEN !


TEN star us gif



Exemples d’agent


Aperçu Points forts
Assistant vocal polyvalent — Assistant temps réel à faible latence et haute qualité que vous pouvez enrichir avec la mémoire, le VAD, TEN Turn Detection et d’autres extensions.
Consultez le code d’exemple pour plus de détails.
Avatars à synchronisation labiale — Compatible avec plusieurs fournisseurs. La démo présente Kei, un avatar animé en Live2D, et supportera bientôt des avatars réalistes de Trulience, HeyGen et Tavus.
Voir le code d’exemple pour Live2D.
Appel SIP — Extension SIP apportant la téléphonie à TEN.
Code d’exemple
Diaphonie vocale — Diarisation temps réel pour détecter et identifier les interlocuteurs. Le jeu "Who Likes What" illustre un cas d’usage interactif. Code d’exemple
Transcription — Outil de transcription audio vers texte. Code d’exemple
ESP32-S3 Korvo V3 — Exécute un exemple TEN Agent sur la carte Espressif ESP32-S3 Korvo V3 pour combiner LLM et matériel.
Consultez le guide d’intégration pour en savoir plus.


Démarrage rapide avec les exemples d’agent

En local

Étape ⓵ - Prérequis

Catégorie Exigences
Clés • Agora App ID et App Certificate (minutes gratuites chaque mois)
• Clé API OpenAI (tout LLM compatible OpenAI)
• ASR Deepgram (crédits gratuits à l’inscription)
• TTS ElevenLabs (crédits gratuits à l’inscription)
Installation Docker / Docker Compose
Node.js (LTS) v18
Configuration minimale • CPU ≥ 2 cœurs
• RAM ≥ 4 Go

divider

Étape ⓶ - Construire les exemples dans la VM

1. Cloner le dépôt, passer dans ai_agents, et copier .env.example en .env
cd ai_agents
cp ./.env.example ./.env
2. Définir l’App ID et l’App Certificate Agora dans .env
AGORA_APP_ID=
AGORA_APP_CERTIFICATE=

# Si vous exécutez l’exemple d’assistant vocal par défaut
# Deepgram (requis pour la reconnaissance vocale)
DEEPGRAM_API_KEY=your_deepgram_api_key_here

# OpenAI (requis pour le modèle de langage)
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_MODEL=gpt-4o

# ElevenLabs (requis pour le TTS)
ELEVENLABS_TTS_KEY=your_elevenlabs_api_key_here
3. Démarrer les conteneurs de développement
docker compose up -d
4. Entrer dans le conteneur
docker exec -it ten_agent_dev bash
5. Construire l’agent avec l’exemple par défaut (~5–8 min)

Consultez le dossier agents/examples pour d’autres variantes. Commencez avec l’un de ces exemples :

# utiliser l’assistant vocal chaîné
cd agents/examples/voice-assistant

# ou l’assistant voix-à-voix en temps réel
cd agents/examples/voice-assistant-realtime
6. Lancer le serveur web

Si vous avez modifié le code source local, exécutez d’abord task build. Étape nécessaire pour les langages compilés (TypeScript, Go…), inutile pour Python.

task install
task run
7. Accéder à l’agent

Une fois l’agent en marche, accédez aux interfaces suivantes :

localhost:49483 Capture 1
localhost:3000 Capture 2

divider

Étape ⓷ - Personnaliser votre agent

  1. Ouvrez localhost:49483.
  2. Faites un clic droit sur les extensions STT, LLM et TTS.
  3. Ouvrez leurs propriétés et indiquez les clés API correspondantes.
  4. Faites un clic droit sur le canvas et sélectionnez Manage Apps pour ouvrir le gestionnaire d’applications.
  5. Dans la colonne Actions, cliquez sur ▶ pour lancer l’application.
  6. Choisissez Run with TEN Agent, puis cliquez sur Run.

divider


Codespaces

GitHub offre un Codespace gratuit par dépôt. Vous pouvez exécuter les exemples d’agent dans Codespaces sans Docker. Le démarrage est souvent plus rapide qu’en local.

Consultez ce guide pour plus de détails.


Auto-hébergement des exemples d’agent

Déployer avec Docker

Après avoir personnalisé votre agent (via TMAN Designer ou en modifiant property.json), créez une image Docker de release pour le déployer.

Construire l’image

Remarque : les commandes suivantes doivent être exécutées hors de tout conteneur Docker.

Build
cd ai_agents
docker build -f agents/examples/<example-name>/Dockerfile -t example-app .
Run
docker run --rm -it --env-file .env -p 3000:3000 example-app

divider

Déployer avec d’autres services cloud

Pour héberger TEN sur Vercel ou Netlify, séparez le déploiement en deux parties.

  1. Exécutez le backend TEN sur une plateforme compatible conteneurs (VM avec Docker, Fly.io, Render, ECS, Cloud Run, etc.). Utilisez l’image d’exemple telle quelle et exposez le port 8080.
  2. Déployez uniquement le frontend sur Vercel ou Netlify. Pointez la racine sur ai_agents/agents/examples/<example>/frontend, exécutez pnpm install (ou bun install), puis pnpm build (ou bun run build), en conservant le dossier .next par défaut.
  3. Configurez les variables d’environnement pour que AGENT_SERVER_URL pointe vers le backend et ajoutez les clés NEXT_PUBLIC_* nécessaires (par exemple les identifiants Agora exposés au navigateur).
  4. Assurez-vous que le backend accepte les requêtes depuis l’origine du frontend — via du CORS ouvert ou le middleware proxy intégré.

Ainsi, le backend gère les processus de longue durée et le frontend hébergé se contente de relayer le trafic API.


Restez informé

Recevez immédiatement les notifications de nouvelles versions et mises à jour. Votre soutien nous aide à améliorer TEN !


Image



Écosystème TEN


Projet Aperçu
️TEN Framework
TEN est un framework open source pour l’IA conversationnelle multimodale en temps réel.

TEN VAD
TEN VAD est un détecteur d’activité vocale en streaming, léger et à faible latence.

️TEN Turn Detection
TEN Turn Detection permet une communication en dialogue full-duplex.

TEN Portal
Site officiel du TEN Framework avec documentation et blog.

TEN Agent
TEN Agent illustre les capacités du TEN Framework.

TMAN Designer
TMAN Designer est une solution low/no-code avec une interface workflow intuitive pour créer un agent vocal.



Questions

TEN Framework est présent sur ces plateformes de Q/R augmentées par l’IA. Elles aident à trouver rapidement des réponses multilingues, du paramétrage de base aux mises en œuvre avancées.

Service Lien
DeepWiki Ask DeepWiki
ReadmeX ReadmeX

Contribuer

Toutes les formes de collaboration open source sont les bienvenues ! Corrections de bugs, nouvelles fonctionnalités, documentation ou idées : vos contributions font avancer les outils d’IA personnalisés. Consultez nos Issues et Projects GitHub pour trouver comment apporter votre pierre. Ensemble, construisons quelque chose d’exceptionnel !


Tip

Toutes les contributions sont les bienvenues 🙏

Rejoignez-nous pour améliorer TEN ! Partagez vos projets TEN Agent sur les réseaux pour inspirer la communauté.

Contactez l’un des mainteneurs TEN @elliotchen200 sur 𝕏 ou @cyfyifanchen sur GitHub pour des mises à jour, discussions et collaborations.


divider

Contributeurs du code

TEN

Guide de contribution

Les contributions sont les bienvenues ! Merci de lire d’abord le guide de contribution.


divider

Licence

  1. L’ensemble du TEN Framework (sauf les dossiers explicitement listés ci-dessous) est publié sous licence Apache 2.0 avec des restrictions supplémentaires. Consultez le fichier LICENSE à la racine du projet.
  2. Les composants du répertoire packages sont publiés sous licence Apache 2.0. Reportez-vous au fichier LICENSE dans chaque dossier de package.
  3. Les bibliothèques tierces utilisées par TEN Framework sont listées avec leur description. Voir le dossier third_party.