Skip to content

The world’s first real-time, distributed, cloud-edge collaborative multimodal AI Agent Framework that simultaneously supports C/C++/Go/Python/JS/TS

License

Notifications You must be signed in to change notification settings

TEN-framework/ten-framework

Repository files navigation


Table of Contents

Table of Contents


👋 Getting Started & Join TEN Community

TEN stands for Transformative Extensions Network, is a voice agent framework to create conversational AI.


Community Channel Purpose
Discord TEN Community Join our Discord community to connect with developers
Follow on X Follow TEN Framework on X for updates and announcements
WeChat Join our WeChat group for Chinese community discussions

Important

Star Our Repository ⭐️

Get instant notifications for new releases and updates. Your support helps us grow and improve TEN Framework!


TEN star us gif

Star History


✨ TEN Features

The TEN framework offers the following advantages:

  1. Native Support for High-Performance, Real-Time Multimodal Interactions

    If your AI applications involve complex audio-visual scenarios, TEN is your go-to solution. It offers high performance and low latency, with extensive optimization of interactions between various extensions to ensure efficient development of AI applications.

  2. Supports Multiple Languages and Platforms

    Developers can create modular and reusable extensions using various programming languages, such as C++, Go, and Python (with future support for JavaScript/TypeScript). Moreover, the TEN framework runs seamlessly across platforms, including Windows, Mac, Linux, and mobile devices.

  3. Edge-Cloud Integration

    Through the TEN framework, extensions deployed across edge and cloud environments can be easily combined to create diverse applications and scenarios. For privacy-sensitive edge deployments, small models leverage local compute power for reduced costs and lower latency, while cloud-based large models can be integrated for an optimal balance of cost and performance.

  4. Flexibility Beyond Model Limitations

    The TEN framework allows for the creation of complex AI applications that transcend the limitations of large models alone. Agents can be easily constructed to meet a wide range of needs using a simple drag-and-drop, responsive programming approach. TEN also facilitates the integration of AI with audio-visual tools, databases, monitoring systems, RAG, and more.

  5. Real-Time Agent State Management

    TEN has the ability to manage real-time agent states, enabling dynamic responsiveness and adjustment of agent behavior in real time.

  6. And more...

    For more information and detailed documentation on all the capabilities of the TEN framework, please refer to the TEN framework documentation site.


🧩 TEN Use Cases

With the TEN framework, you can easily accomplish the following scenarios.

  1. Simultaneous interpretation

    Real-time language translation during live conversations, enabling smooth cross-language communication without delays.

  2. Speech-to-text conversion

    Convert spoken language into written text, making it useful for transcribing meetings, interviews, or live talks.

  3. Multilingual chat rooms

    Create chat rooms where users can communicate in different languages, with automatically translating messages in real time to foster seamless interaction.

  4. Audio interaction

    Enabling users to communicate with the AI using audio instead of text, which is ideal for hands-free communication or enhancing accessibility.

  5. Audio-visual interaction

    Combine audio and visual elements to create interactive experiences, such as video conferences with integrated real-time transcription, translation, or even interactive media content.

  6. And more...

    The flexibility of the TEN framework enables developers to build additional interactive solutions, such as virtual assistants, automated customer support systems, and dynamic multimedia applications.


✨ TEN Agent Features

1️⃣ 🆕 TEN Agent + Llama 4

TEN Agent now integrates with Llama 4, Meta's latest large language model. With no setup or waiting required, you can simply start a real-time conversation with TEN Agent.

TEN Agent + Llama 4

TEN Agent with Llama 4


2️⃣ 🔥 TEN Agent + MCP

TEN Agent now integrates seamlessly with MCP servers, expanding its LLM capabilities. To get started:

  1. Open the Module Picker in Playground
  2. Add the MCP server tool for LLM integration
  3. Paste a URL from your MCP server in the extension
  4. Start a realtime conversation with TEN Agent

This integration allows you to leverage MCP's diverse servers offerings while maintaining TEN Agent's powerful conversational abilities.


3️⃣ TEN Agent + Trulience

Build engaging AI avatars with TEN Agent using Trulience's diverse collection of free avatar options. To get it up and running, you only need 2 steps:

  1. Follow the README to finish setting up and running the Playground
  2. Enter the avatar ID and token you get from Trulience
TEN Agent + Trulience

TEN Agent with Trulience


TEN is a very versatile framework. That said, TEN Agent is compatible with DeepSeek R1, try experiencing realtime conversations with DeepSeek R1!


TEN Agent is now running on the Espressif ESP32-S3 Korvo V3 development board, an excellent way to integrate realtime communication with LLM on hardware.


6️⃣ TEN Agent + Gemini Multimodal Live API

Try Google Gemini Multimodal Live API with realtime vision and realtime screenshare detection capabilities, it is a ready-to-use extension, along with powerful tools like Weather Check and Web Search integrated perfectly into TEN Agent.


7️⃣ TEN Agent + Storyteller + Image Generator

Describe a topic and ask TEN Agent to tell you a story while also generating images of the story to provide a more immersive experience for kids.

Storyteller + Image Generator

Usecases


8️⃣ TEN Agent + Dify

TEN Agent + Dify

TEN offers a great support to make the realtime interactive experience even better on other LLM platform as well, check out docs for more.


9️⃣ TEN Agent + Coze

TEN Agent + Coze

TEN seamlessly integrates with Coze platform to enhance real-time interactive experiences. Check out our documentation to learn how to leverage these powerful integrations.


💡 TEN Agent Usecases

Usecases


🧩 Compatible Extensions

Ready-to-use Extensions


🛝 TEN Agent Playground

🅰️ Run Playground in localhost

Step ⓵ - Prerequisites

Category Requirements
Keys • Agora App ID and App Certificate (free minutes every month)
OpenAI API key (any LLM that is compatible with OpenAI)
Deepgram ASR (free credits available with signup)
Elevenlabs TTS (free credits available with signup)
Installation Docker / Docker Compose
Node.js(LTS) v18
Minimum System Requirements • CPU >= 2 Core
• RAM >= 4 GB

Note

macOS: Docker setting on Apple Silicon

Uncheck "Use Rosetta for x86/amd64 emulation" in Docker settings, it may result in slower build times on ARM, but performance will be normal when deployed to x64 servers.


Step ⓶ - Build agent in VM

1. Clone down the repo and create .env file from .env.example
cp ./.env.example ./.env
2. Setup Agora App ID and App Certificate in .env
AGORA_APP_ID=
AGORA_APP_CERTIFICATE=
3. Start agent development containers
docker compose up -d
4. Enter container
docker exec -it ten_agent_dev bash
5. Build agent with the default graph ( ~5min - ~8min)

check the /examples folder for more examples

# use the default agent
task use

# or use the demo agent
task use AGENT=agents/examples/demo
6. Start the web server
task run

Step ⓷ - Customize your agent

  1. Open Up localhost:3000 and select a graph example
  2. Choose a corresponding module
  3. Select an extension and configure its API key and settings
Module Picker Example - Gemini

Module Picker Example

Now, we have successfully set up the playground. This is just the beginning of TEN Agent. There are many different ways to explore and utilize TEN Agent. To learn more, please refer to the documentation.


🅱️ Run Playground in Codespace(no docker)

GitHub offers free Codespace for each repository, you can run the playground in Codespace without using Docker.Also, the speed of Codespace is much faster than localhost.

Check out this guide for more details.


👀 TEN Agent Demo

Playground and Demo server different purposes, in a nut shell, think it as Playground is for you to customize you agent, and Demo is for you to deploy your agent.

Check out this guide for more details.


🛳️ Self Hosting

🅰️ 🐳 Deploying with Docker

Once you have customized your agent (either by using the playground or editing property.json directly), you can deploy it by creating a release Docker image for your service.

Read the Deployment Guide for detailed information about deployment.


🅱️ Deploying with other cloud services

coming soon...


🏗️ TEN Agent Architecture

1️⃣ TEN Agent App: Core application that manages extensions and data flow based on graph configuration

2️⃣ Dev Server: port:49480- local server for development purposes.

3️⃣ Web Server: port:8080- Golang server handling HTTP requests and agent process management

4️⃣ Front-end UI:

  • port:3000 Playground - To customize and test your agent configurations.
  • port:3002 Demo - To deploy your agent without module picker.

Components Diagram


🌍 TEN Framework Ecosystem

Project Preview
🏚️ TEN Framework
TEN, a AI agent framework to create various AI agents which supports real-time conversation.

🎙️ TEN Agent
TEN Agent is a conversational voice AI agent powered by TEN, integrating Deepseek, Gemini, OpenAI, RTC, and hardware like ESP32. It enables realtime AI capabilities like seeing, hearing, and speaking, and is fully compatible with platforms like Dify and Coze.

🎨 TMAN Designer alpha
TMAN Designer is low/no code option to make a cool voice agent. With it's easy-to-use workflow UI, you can build things easily. It comes with runtime, dark/light themes, integrated editors and integrated terminals.

📒 TEN Portal
The official site of TEN framework, it has documentation, blog and showcases.


🥰 Contributing

We welcome all forms of open-source collaboration! Whether you're fixing bugs, adding features, improving documentation, or sharing ideas - your contributions help advance personalized AI tools. Check out our GitHub Issues and Projects to find ways to contribute and show your skills. Together, we can build something amazing!


Tip

Welcome all kinds of contributions 🙏

Join us in building TEN better! Every contribution makes a difference, from code to documentation. Share your TEN Agent projects on social media with to inspire others!

Connect with TEN maintainer @elliotchen100 on 𝕏 or @cyfyifanchen on GitHub for project updates, discussions and collaboration opportunities.


Code Contributors

TEN

Contribution Guidelines

Contributions are welcome! Please read the contribution guidelines first.

License

  1. The entire TEN framework (except for the folders explicitly listed below) is released under the Apache License, Version 2.0, with additional restrictions. For details, please refer to the LICENSE file located in the root directory of the TEN framework.

  2. The components within the packages directory are released under the Apache License, Version 2.0. For details, please refer to the LICENSE file located in each package's root directory.

  3. The third-party libraries used by the TEN framework are listed and described in detail. For more information, please refer to the dependencies.md file located in the docs/ten_framework directory.