TEN は音声会話型 AI エージェント向けのオープンソースフレームワークです。
TEN エコシステム には TEN Framework、エージェント事例、VAD、Turn Detection、Portal が含まれます。
| コミュニティ | 目的 |
|---|---|
| X で TEN Framework をフォローして最新情報をチェック | |
| Discord コミュニティに参加し、開発者同士で交流 | |
| LinkedIn で TEN Framework をフォローし、ニュースを受け取る | |
| Hugging Face コミュニティでスペースやモデルを探索 | |
| 中国語コミュニティ向けの WeChat グループに参加 |
多目的ボイスアシスタント — 低レイテンシ・高品質のリアルタイムアシスタント。メモリ、VAD、ターン検出 などの拡張機能を追加できます。
詳細は サンプルコード を参照してください。
Doodler — 音声またはテキストのプロンプトを手描き風のシンプルなスケッチに変換するお絵かきボード。クレヨンのパレットとリアルタイム描画を備えています。
リップシンク対応アバター — 複数のアバタープロバイダーに対応。デモでは Live2D のリップシンクを備えたアニメキャラクター Kei を紹介し、今後 Trulience、HeyGen、Tavus のリアルアバターにも対応予定です。
話者分離(Diarization) — 話者をリアルタイムで検出・ラベル付けします。ゲーム「Who Likes What」でインタラクティブな活用例を紹介しています。
SIP 通話 — TEN で電話を実現する SIP 拡張機能です。
文字起こし — 音声をテキストへ変換するトランスクリプションツール。
ESP32-S3 Korvo V3 — Espressif ESP32-S3 Korvo V3 開発ボード上で TEN Agent のサンプルを動作させ、LLM ベースのコミュニケーションをハードウェアに組み込みます。
統合ガイド を参照してください。
| カテゴリ | 必要なもの |
|---|---|
| キー類 | • Agora App ID と App Certificate(毎月無料分あり) • OpenAI API キー(OpenAI 互換の任意の LLM) • Deepgram ASR(登録で無料クレジット) • ElevenLabs TTS(登録で無料クレジット) |
| インストール | • Docker / Docker Compose • Node.js (LTS) v18 |
| 最小システム要件 | • CPU 2 コア以上 • RAM 4 GB 以上 |
cd ai_agents
cp ./.env.example ./.envAGORA_APP_ID=
AGORA_APP_CERTIFICATE=
# デフォルトのボイスアシスタント例を実行
# Deepgram(音声認識に必須)
DEEPGRAM_API_KEY=your_deepgram_api_key_here
# OpenAI(言語モデルに必須)
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_MODEL=gpt-4o
# ElevenLabs(音声合成に必須)
ELEVENLABS_TTS_KEY=your_elevenlabs_api_key_heredocker compose up -ddocker exec -it ten_agent_dev bashagents/examples ディレクトリには他のサンプルもあります。
以下のいずれかで開始できます:
# チェーン型ボイスアシスタント
cd agents/examples/voice-assistant
# リアルタイムの音声対音声アシスタント
cd agents/examples/voice-assistant-realtimeローカルコードを変更した場合は task build を実行してください。TypeScript や Go などのコンパイル言語では必須、Python では不要です。
task install
task runサンプルが起動すると次の UI を利用できます。
|
localhost:49483
|
localhost:3000
|
- TMAN Designer: http://localhost:49483
- エージェント事例 UI: http://localhost:3000
- localhost:49483 を開く。
- STT・LLM・TTS 拡張を右クリック。
- プロパティで対応する API キーを入力。
- 変更を保存すると localhost:3000 で更新内容を確認できます。
TEN には、Docker を使わずに TEN Manager から実行できるトランスクリプションアプリも用意されています。
詳しくはクイックスタートガイドをご覧ください。
GitHub はリポジトリごとに無料の Codespaces を提供しています。Docker を使わずにエージェント事例を実行でき、通常ローカル環境よりも起動が速くなります。
詳細はこちらのガイドをご覧ください。
TMAN Designer でカスタマイズするか property.json を編集したら、本番用の Docker イメージを作成してサービスをデプロイしましょう。
注意: 以下のコマンドは Docker コンテナの外で実行してください。
cd ai_agents
docker build -f agents/examples/<example-name>/Dockerfile -t example-app .docker run --rm -it --env-file .env -p 3000:3000 example-appTEN を Vercel や Netlify などでホストする場合、バックエンドとフロントエンドを分けて配置できます。
- Docker 対応の任意のプラットフォーム(Docker が動く VM、Fly.io、Render、ECS、Cloud Run など)で TEN バックエンドを実行。用意されたサンプルイメージをそのまま使い、ポート
8080を公開します。 - フロントエンドのみ Vercel / Netlify にデプロイします。プロジェクトルートを
ai_agents/agents/examples/<example>/frontendに設定し、pnpm install(またはbun install)→pnpm build(またはbun run build)を実行し、デフォルトの.next出力を保持します。 - ホスティング側の環境変数で
AGENT_SERVER_URLをバックエンド URL に設定し、必要なNEXT_PUBLIC_*キー(ブラウザで使う Agora 資格情報など)を追加します。 - CORS を開放する、または内蔵のプロキシミドルウェアを使うなどして、フロントエンドのオリジンからバックエンドへのリクエストを許可します。
この構成では、バックエンドがワーカー処理を担い、ホストしたフロントエンドは API リクエストを転送するだけで済みます。
新しいリリースやアップデートを即座に受け取れます。あなたのサポートが TEN を成長させます!
| プロジェクト | プレビュー |
|---|---|
| ️TEN Framework 会話型 AI エージェント向けオープンソースフレームワーク。 |
|
| TEN VAD 低遅延・軽量・高性能なストリーミング音声活動検出。 |
|
| ️TEN Turn Detection 全二重会話を可能にするターン検出。 |
|
| TEN Agent Examples TEN を使ったユースケース集。 |
|
| TEN Portal 公式サイト。ドキュメントとブログを掲載。 |
TEN Framework は AI 駆動の Q&A プラットフォームにも掲載されています。マルチリンガルでの検索が可能で、初期設定から高度な実装までサポートします。
| サービス | リンク |
|---|---|
| DeepWiki | |
| ReadmeX |
バグ修正、機能追加、ドキュメント改善、アイデア共有など、あらゆる OSS での協力を歓迎します。GitHub の Issues や Projects をチェックして活躍の場を見つけ、スキルを発揮してください。一緒に TEN をより良いものにしましょう!
Tip
すべてのコントリビューションに感謝します 🙏
コードでもドキュメントでも、どんな貢献も力になります。TEN Agent プロジェクトを SNS で紹介し、コミュニティを盛り上げましょう。
メンテナー @elliotchen200(𝕏)や @cyfyifanchen(GitHub)に連絡すると、最新情報や議論、コラボの機会を得られます。
いつでも歓迎です!まずは貢献ガイドラインをご確認ください。
- 下記のディレクトリを除き、TEN Framework 全体は追加条件付きの Apache License 2.0 で配布されています。プロジェクトルートの LICENSE を参照してください。
packages配下のコンポーネントも Apache License 2.0 で提供されます。各パッケージのLICENSEファイルをご確認ください。- TEN Framework が利用するサードパーティライブラリは third_party ディレクトリで一覧化されています。