Home

Awesome

TEN Agent banner

<div align="center">

Follow on X Discussion posts Commits Issues closed PRs Welcome GitHub license

Discord TEN Community

<a href="https://trendshift.io/repositories/11978" target="_blank"><img src="https://trendshift.io/api/badge/repositories/11978" alt="TEN-framework%2FTEN-Agent | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>

GitHub watchers GitHub forks GitHub stars

<a href="https://github.com/TEN-framework/ten-agent/blob/main/README.md"><img alt="README in English" src="https://img.shields.io/badge/English-lightgrey"></a> <a href="https://github.com/ten-framework/ten-agent/blob/main/docs/readmes/README-CN.md"><img alt="简体中文操作指南" src="https://img.shields.io/badge/简体中文-lightgrey"></a> <a href="https://github.com/ten-framework/ten-agent/blob/main/docs/readmes/README-JP.md"><img alt="日本語のREADME" src="https://img.shields.io/badge/日本語-lightgrey"></a> <a href="https://github.com/ten-framework/ten-agent/blob/main/docs/readmes/README-KR.md"><img alt="README in 한국어" src="https://img.shields.io/badge/한국어-lightgrey"></a> <a href="https://github.com/ten-framework/ten-agent/blob/main/docs/readmes/README-ES.md"><img alt="README en Español" src="https://img.shields.io/badge/Español-lightgrey"></a> <a href="https://github.com/ten-framework/ten-agent/blob/main/docs/readmes/README-FR.md"><img alt="README en Français" src="https://img.shields.io/badge/Français-lightgrey"></a> <a href="https://github.com/ten-framework/ten-agent/blob/main/docs/readmes/README-IT.md"><img alt="README in Italiano" src="https://img.shields.io/badge/Italiano-lightgrey"></a>

Getting Started <span>  •  </span> Create Extensions <span>  •  </span> TEN Framework Repository

</div> <br> <h2>🎉 TEN Agent with OpenAI Realtime API and RTC</h2>

Try OpenAI Realtime API, Weather Check and Web Search at agent.theten.ai.

Combining OpenAI Realtime API for ultra-low latency with RTC’s AI noise suppression ensures smooth, high-quality interactions. On top of that, the seamless integration of weather and news tools makes TEN Agent even more versatile.

TEN Agent with OpenAI Realtime API and RTC

<br> <h2>Usecases</h2>

Usecases <br>

<h2>TEN Agent Features</h2> <br> <h2>Ready-to-use Extensions</h2>

Ready-to-use Extensions

<br> <h2>How to build TEN Agent locally

Prerequisites

Keys

<!-- - Azure [SST(ASR)](https://azure.microsoft.com/en-us/products/ai-services/speech-to-text) and [TTS](https://azure.microsoft.com/en-us/products/ai-services/text-to-speech) API keys -->

Installation

Minimum system requirements

MacOS: Docker setting on Apple Silicon

You will need to uncheck "Use Rosetta for x86_64/amd64 emulation on Apple Silicon" option for Docker if you are on Apple Silicon. However, please note that build and connection times will be a little slower due to emulation when running on ARM systems. Once deployed to x64 (e.g. your Linux server) it will be much faster.

Docker Setting

Windows: Configuring Git to handle line endings

To avoid problems in make run-server later, you can configure Git to properly handle line endings on Windows.(more here)

git config --global core.autocrlf true

Next step

1. Modify config files

In the root of the project, use cp command to create .env from the .env.example .

It will be used to store environment variables for docker compose later, and if you change it, you will need to source .env again in the container for the changes to take effect.

cp ./.env.example ./.env

2. Setup API keys

Open the .env file and fill in the keys. We recommend using Deepgram ASR and FishAudio TTS as they are free to sign up for and offer free credits. Of course, you can also use other services, see the list in .env.example.

# Agora App ID 
# Agora App Certificate(only required if enabled in the Agora Console)
AGORA_APP_ID=
AGORA_APP_CERTIFICATE=

OPENAI_API_KEY=

DEEPGRAM_API_KEY=

FISH_AUDIO_TTS_KEY=

3. Start agent development containers

In the same directory, run the docker compose up command to compose containers:

docker compose up

Or using the docker compose up -d command, start the container in detached mode.(more here)

docker compose up -d

4. Enter container and build agent

Open up a separate terminal window, enter the container and build the agent:

docker exec -it ten_agent_dev bash

make build

5. Start the server

Once the build is done, make run-server on port 8080:

make run-server

Finish and verify

TEN Agent

Open up localhost:3000 in browser to play the TEN Agent.

TEN Graph Designer

Open up another tab go to localhost:3001, and use Graph Designer to create, connect and edit extensions on canvas.

Once you save the graph, you can return to localhost:3000 and select the corresponding graph to view the changes.

TEN Graph Designer

<br> <h2>Stay Tuned</h2>

Before we get started, be sure to star our repository and get instant notifications for all new releases!

TEN star us gif

<br> <h2>Join Community</h2> <br> <h2>Code Contributors</h2>

TEN

<br> <h2>Contribution Guidelines</h2>

Contributions are welcome! Please read the contribution guidelines first.

<br> <h2>License</h2>

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.