From 20cfad4f740f5e5d3780137d096522138b60ac67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B4=9D=E5=90=89=E5=A1=94=E5=A4=A7=E7=8E=8B?= Date: Tue, 16 Jul 2024 11:15:29 +0800 Subject: [PATCH 1/5] Update README.md --- README.md | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 2eb18979..e133aac6 100644 --- a/README.md +++ b/README.md @@ -68,16 +68,16 @@ docker run --restart=always -itd -p 8080:8080 \ --name astra_agents_server \ agoraio/astra_agents_server:latest -# Here are two TTS options, either one will work -# Make sure to comment out the one you don't use -# 1. using Azure --e TTS_VENDOR_CHINESE=azure --e AZURE_TTS_KEY= --e AZURE_TTS_REGION= - -# 2. using ElevenLabs --e TTS_VENDOR_ENGLISH=elevenlabs --e ELEVENLABS_TTS_KEY= + # Here are two TTS options, either one will work + # Make sure to comment out the one you don't use + # 1. using Azure + -e TTS_VENDOR_CHINESE=azure + -e AZURE_TTS_KEY= + -e AZURE_TTS_REGION= + + # 2. using ElevenLabs + -e TTS_VENDOR_ENGLISH=elevenlabs + -e ELEVENLABS_TTS_KEY= ``` This should start an agent server running on port 8080. @@ -112,17 +112,19 @@ npm i && npm run dev

Agent Customization

+ To explore further, the ASTRA voice agent is an excellent starting point. It incorporates the following extensions, some of which will be interchangeable in the near future. Feel free to choose the ones that best suit your needs and maximize ASTRA’s capabilities. -| Extension | Feature | Description | -| ------------------ | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Extension | Feature | Description | +| ------------------ | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | openai_chatgpt | LLM | [ GPT-4o ](https://platform.openai.com/docs/models/gpt-4o), [ GPT-4 Turbo ](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4), [ GPT-3.5 Turbo ](https://platform.openai.com/docs/models/gpt-3-5-turbo) | -| elevenlabs_tts | Text-to-speech | [ElevanLabs text to speech](https://elevenlabs.io/) converts text to audio | -| azure_tts | Text-to-speech | [Azure text to speech](https://azure.microsoft.com/en-us/products/ai-services/text-to-speech) converts text to audio | -| azure_stt | Speech-to-text | [Azure speech to text](https://azure.microsoft.com/en-us/products/ai-services/speech-to-text) converts audio to text | -| chat_transcriber | Transcriber | A utility ext to forward chat logs into channel | -| agora_rtc | Transporter | A low latency transporter powered by agora_rtc | -| interrupt_detector | Interrupter | A utility ext to help interrupt agent | +| elevenlabs_tts | Text-to-speech | [ElevenLabs text to speech](https://elevenlabs.io/) converts text to audio | +| azure_tts | Text-to-speech | [Azure text to speech](https://azure.microsoft.com/en-us/products/ai-services/text-to-speech) converts text to audio | +| azure_stt | Speech-to-text | [Azure speech to text](https://azure.microsoft.com/en-us/products/ai-services/speech-to-text) converts audio to text | +| chat_transcriber | Transcriber | A utility extension to forward chat logs into channel | +| agora_rtc | Transporter | A low latency transporter powered by agora_rtc | +| interrupt_detector | Interrupter | A utility extension to help interrupt agent | +

Voice Agent Diagram

From 96057ff570e80dd89ddd87c3b8619d8f9ff061ab Mon Sep 17 00:00:00 2001 From: Elliott Chen Date: Wed, 17 Jul 2024 14:10:37 +0800 Subject: [PATCH 2/5] Update README.md --- README.md | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index e133aac6..0c84905e 100644 --- a/README.md +++ b/README.md @@ -68,16 +68,16 @@ docker run --restart=always -itd -p 8080:8080 \ --name astra_agents_server \ agoraio/astra_agents_server:latest - # Here are two TTS options, either one will work - # Make sure to comment out the one you don't use - # 1. using Azure + # For Chinese, using either Azure or ElevenLabs -e TTS_VENDOR_CHINESE=azure + # -e TTS_VENDOR_CHINESE=elevenlabs -e AZURE_TTS_KEY= -e AZURE_TTS_REGION= - # 2. using ElevenLabs + # For English, using either ElevenLabs or Azure -e TTS_VENDOR_ENGLISH=elevenlabs - -e ELEVENLABS_TTS_KEY= + # -e TTS_VENDOR_ENGLISH=azure + -e ELEVENLABS_TTS_KEY= ``` This should start an agent server running on port 8080. @@ -169,17 +169,16 @@ export OPENAI_API_KEY= export AZURE_STT_KEY= export AZURE_STT_REGION= -# Here are two TTS options, either one will work -# Make sure to comment out the one you don't use - -# 1. using Azure +# For Chinese, using either Azure or ElevenLabs export TTS_VENDOR_CHINESE=azure +# export TTS_VENDOR_CHINESE=elevenlabs export AZURE_TTS_KEY= export AZURE_TTS_REGION= - -# 2. using ElevenLabs + +# For English, using either ElevenLabs or Azure export TTS_VENDOR_ENGLISH=elevenlabs -export ELEVENLABS_TTS_KEY= +# export TTS_VENDOR_ENGLISH=azure +export ELEVENLABS_TTS_KEY= # agent is ready to start on port 8080 From 219b175a056e6e1f9f324f0506dd3012294296fa Mon Sep 17 00:00:00 2001 From: Elliott Chen Date: Mon, 29 Jul 2024 17:43:14 +0800 Subject: [PATCH 3/5] Update README.md --- README.md | 149 ++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 101 insertions(+), 48 deletions(-) diff --git a/README.md b/README.md index 16e0c28d..7aeb7d4f 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://github.com/rte-design/ASTRA.ai/pulls) [![GitHub license](https://img.shields.io/badge/License-Apache_2.0-blue.svg?labelColor=%20%239b8afb&color=%20%237a5af8)](https://github.com/rte-design/ASTRA.ai/blob/main/LICENSE) -[![](https://dcbadge.vercel.app/api/server/VnPftUzAMJ)](https://discord.gg/VnPftUzAMJ) +[![Discord ASTRA Community](https://dcbadge.vercel.app/api/server/VnPftUzAMJ)](https://discord.gg/VnPftUzAMJ) [![GitHub watchers](https://img.shields.io/github/watchers/rte-design/astra.ai?style=social&label=Watch)](https://GitHub.com/rte-design/astra.ai/watchers/?WT.mc_id=academic-105485-koreyst) [![GitHub forks](https://img.shields.io/github/forks/rte-design/astra.ai?style=social&label=Fork)](https://GitHub.com/rte-design/astra.ai/network/?WT.mc_id=academic-105485-koreyst) @@ -29,59 +29,54 @@ ASTRA is a highly customizable platform that simplifies the development of AI agents like never before. With ASTRA, you can easily create lightning-fast, multimodal AI agents, even without any coding knowledge.
-

Voice Agent Showcase

+

Voice agent showcase

-[ASTRA Voice Agent](https://theastra.ai) +[ASTRA voice agent](https://theastra.ai) We showcase an impressive voice agent powered by ASTRA, demonstrating its ability to create intuitive and seamless conversational interactions. [![Showcase ASTRA Voice Agent](https://github.com/rte-design/ASTRA.ai/raw/main/images/astra-voice-agent.gif)](https://theastra.ai) -

Stay Tuned

-Before we dive further, be sure to star our repository and get instant notifications for all new releases! - -![ASTRA star us gif](https://github.com/rte-design/ASTRA.ai/raw/main/images/star-the-repo-confetti-higher-quality.gif) + -

Run Voice Agent Locally

-Feel free to run the showcased voice agent locally. We provide a Docker image that you can easily build and run on both macOS and Windows. + + + -#### Mac with Apple Silicon +
-

Agent Customization

+

How to build voice agent locally

-To explore further, the ASTRA voice agent is an excellent starting point. It incorporates the following extensions, some of which will be interchangeable in the near future. Feel free to choose the ones that best suit your needs and maximize ASTRA’s capabilities. + + + -

Customize Agent

+#### Prerequisite -You might want to add more flavors to make the agent better suited to your needs. To achieve this, you need to change the source code of extensions and build the agent yourselves. +- Agora App ID and App Certificate([read here on how](https://docs.agora.io/en/video-calling/get-started/manage-agora-account?platform=web)) +- Azure's [speech-to-text](https://azure.microsoft.com/en-us/products/ai-services/speech-to-text) and [text-to-speech](https://azure.microsoft.com/en-us/products/ai-services/text-to-speech) API keys +- [OpenAI](https://openai.com/index/openai-api/) API key +- [Docker](https://www.docker.com/) -You need to prepare the proper `manifest.json` file first. +#### 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, otherwise the server is not gonna work. + +
+ +![ASTRA Docker Setting](https://github.com/rte-design/ASTRA.ai/raw/main/images/docker-setting.gif) + +
+ +#### 1. Build the agent within Docker image ```bash -# Rename manifest example +# Create manifiest from example. cp ./agents/manifest.json.example ./agents/manifest.json -cp ./agents/manifest.json.elevenlabs.example ./agents/manifest.json.elevenlabs.example -# pull the docker image with dev tools and mount your current folder as workspace +# Pull the docker image with dev tools and mount your current folder as workspace docker run -itd -v $(pwd):/app -w /app -p 8080:8080 --name astra_agents_dev ghcr.io/rte-design/astra_agents_build -# for windows git bash +# For windows git bash # docker run -itd -v //$(pwd):/app -w //app -p 8080:8080 --name astra_agents_dev ghcr.io/rte-design/astra_agents_build # Enter docker image @@ -121,14 +129,32 @@ docker exec -it astra_agents_dev bash make build ``` -The above code generates an agent executable. To customize your prompts and OpenAI parameters, modify the source code in `agents/addon/extension/openai_chatgpt/openai_chatgpt.go`. +#### 2. Modify prompts +The above code generates an agent executable, to customize your prompts and OpenAI parameters, modify the following code in `agents/addon/extension/openai_chatgpt/openai_chatgpt.go`: +``` +func defaultOpenaiChatGPTConfig() openaiChatGPTConfig { + return openaiChatGPTConfig{ + BaseUrl: "https://api.openai.com/v1", + ApiKey: "", + Model: openai.GPT4o, + Prompt: "You are a voice assistant who talks in a conversational way and can chat with me like my friends. i will speak to you in english or chinese, and you will answer in the corrected and improved version of my text with the language i use. Don't talk like a robot, instead i would like you to talk like real human with emotions. i will use your answer for text-to-speech, so don't return me any meaningless characters. I want you to be helpful, when i'm asking you for advices, give me precise, practical and useful advices instead of being vague. When giving me list of options, express the options in a narrative way instead of bullet points.", + FrequencyPenalty: 0.9, + PresencePenalty: 0.9, + TopP: 1.0, + Temperature: 0.1, + MaxTokens: 512, + Seed: rand.Int(), + ProxyUrl: "", + } +} +``` + -

Start Server

+#### 3. Start local server -Once you have made the necessary changes, you can use the following commands to start a server. You can then test it out using the ASTRA voice agent from the showcase. +Start the server by running the following terminal commands: ```bash -# TODO: need to refactor the contents # Agora App ID and Agora App Certificate export AGORA_APP_ID= export AGORA_APP_CERTIFICATE= @@ -153,47 +179,74 @@ export AZURE_TTS_REGION= export TTS_VENDOR_ENGLISH=elevenlabs export ELEVENLABS_TTS_KEY= -# agent is ready to start on port 8080 +# Agent is ready to start on port 8080 make run-server ``` -🎉 Congratulations! You have created your first personalized voice agent. -

Quick Agent Customize Test

-The default agent control is managed via server gateway. For quick testing, you can also run the agent directly. +#### 4. Run the voice agent interface + +The voice agent interface is built on NextJS 14, hence it needs Node 18 or later. +```bash +# Create an env file from the example so the interface points to the right port +cd playground +cp .env.example .env + +# Install npm dependencies & start localhost:3000 in browser +npm install && npm run dev ``` -# rename manifest example +#### 5. Verify your customized voice agent 🎉 + +Open `localhost:3000` in your browser, you should be seeing a voice agent just like the showcase, yet with your own customizations. + +
+

How to build the agent in a headless way

+ +#### 1. Build the agent within Docker image + +``` +# Create manifest from the example file cp ./agents/manifest.json.example ./agents/manifest.json -cp ./agents/manifest.json.elevenlabs.example ./agents/manifest.json.elevenlabs.example -# pull the docker image with dev tools and mount your current folder as workspace +# Pull the docker image with dev tools and mount your current folder as workspace docker run -itd -v $(pwd):/app -w /app -p 8080:8080 --name astra_agents_dev ghcr.io/rte-design/astra_agents_build -# for windows git bash +# For windows git bash # docker run -itd -v //$(pwd):/app -w //app -p 8080:8080 --name astra_agents_dev ghcr.io/rte-design/astra_agents_build -# enter docker image +# Enter docker image docker exec -it astra_agents_dev bash +# Build agent make build -cd ./agents -# manipulate values in manifest.json to replace , , , with your keys -./bin/start +# Start agent +cd ./agents && ./bin/start ``` -use [https://webdemo.agora.io/](https://webdemo.agora.io/) to quickly test. +#### 2. Test agent + +Finally let's use [Agora Web Demo](https://webdemo.agora.io/) to test really quick. Note the `channel` and `remote_stream_id` needs to match with the one you use on `https://webdemo.agora.io/` +After entering the corresponding RTC ID and channel name, you should be able to see the log and hear the audio output. +

ASTRA Service

Discover More

Now that you’ve created your first AI agent, the creativity doesn’t stop here. To develop more amazing agents, you’ll need an advanced understanding of how the ASTRA works under the hood. Please refer to the [ ASTRA architecture documentation ](./docs/astra-architecture.md). +
+

Stay Tuned

+ +Before we dive further, be sure to star our repository and get instant notifications for all new releases! + +![ASTRA star us gif](https://github.com/rte-design/ASTRA.ai/raw/main/images/star-the-repo-confetti-higher-quality.gif) +

Join Community

From b1aa8c5ec5a8daa568abf82ce4f0235dc3c80188 Mon Sep 17 00:00:00 2001 From: Elliott Chen Date: Mon, 29 Jul 2024 18:20:08 +0800 Subject: [PATCH 4/5] Update README.md --- README.md | 75 ++++++++++++++++--------------------------------------- 1 file changed, 21 insertions(+), 54 deletions(-) diff --git a/README.md b/README.md index 7aeb7d4f..2a88015e 100644 --- a/README.md +++ b/README.md @@ -37,62 +37,10 @@ We showcase an impressive voice agent powered by ASTRA, demonstrating its abilit [![Showcase ASTRA Voice Agent](https://github.com/rte-design/ASTRA.ai/raw/main/images/astra-voice-agent.gif)](https://theastra.ai) - - - - - - - - - -

How to build voice agent locally

- - #### Prerequisite @@ -202,7 +150,26 @@ npm install && npm run dev Open `localhost:3000` in your browser, you should be seeing a voice agent just like the showcase, yet with your own customizations.
-

How to build the agent in a headless way

+

Voice agent architecture

+To explore further, the ASTRA voice agent is an excellent starting point. It incorporates the following extensions, some of which will be interchangeable in the near future. Feel free to choose the ones that best suit your needs and maximize ASTRA’s capabilities. + +| Extension | Feature | Description | +| ------------------ | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| openai_chatgpt | LLM | [ GPT-4o ](https://platform.openai.com/docs/models/gpt-4o), [ GPT-4 Turbo ](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4), [ GPT-3.5 Turbo ](https://platform.openai.com/docs/models/gpt-3-5-turbo) | +| elevenlabs_tts | Text-to-speech | [ElevanLabs text to speech](https://elevenlabs.io/) converts text to audio | +| azure_tts | Text-to-speech | [Azure text to speech](https://azure.microsoft.com/en-us/products/ai-services/text-to-speech) converts text to audio | +| azure_stt | Speech-to-text | [Azure speech to text](https://azure.microsoft.com/en-us/products/ai-services/speech-to-text) converts audio to text | +| chat_transcriber | Transcriber | A utility ext to forward chat logs into channel | +| agora_rtc | Transporter | A low latency transporter powered by agora_rtc | +| interrupt_detector | Interrupter | A utility ext to help interrupt agent | + +

Voice Agent Diagram

+ +![ASTRA voice agent diagram](./images/image-2.png) + + +
+

How to build the agent in headlessly

#### 1. Build the agent within Docker image @@ -228,7 +195,7 @@ cd ./agents && ./bin/start #### 2. Test agent -Finally let's use [Agora Web Demo](https://webdemo.agora.io/) to test really quick. +Go to [Agora Web Demo](https://webdemo.agora.io/) to test really quick. Note the `channel` and `remote_stream_id` needs to match with the one you use on `https://webdemo.agora.io/` From 6ccb6b0ac34df78933edd337119305fa525466e8 Mon Sep 17 00:00:00 2001 From: Elliott Chen Date: Wed, 31 Jul 2024 15:45:37 +0800 Subject: [PATCH 5/5] Update README.md --- README.md | 140 +++++++++++++++++++----------------------------------- 1 file changed, 49 insertions(+), 91 deletions(-) diff --git a/README.md b/README.md index 2a88015e..85237c00 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![ASTRA Banner Image](https://github.com/rte-design/ASTRA.ai/raw/main/images/banner-image-without-tagline.png) +![Banner Image](https://github.com/rte-design/ASTRA.ai/raw/main/images/banner-image-without-tagline.png)
@@ -26,14 +26,12 @@
-ASTRA is a highly customizable platform that simplifies the development of AI agents like never before. With ASTRA, you can easily create lightning-fast, multimodal AI agents, even without any coding knowledge. -
-

Voice agent showcase

+

Voice agent: Astra

-[ASTRA voice agent](https://theastra.ai) +[Voice agent: Astra](https://theastra.ai) -We showcase an impressive voice agent powered by ASTRA, demonstrating its ability to create intuitive and seamless conversational interactions. +We showcase an impressive voice agent called Astra, powered by TEN, demonstrating its ability to create intuitive and seamless conversational interactions. [![Showcase ASTRA Voice Agent](https://github.com/rte-design/ASTRA.ai/raw/main/images/astra-voice-agent.gif)](https://theastra.ai) @@ -42,7 +40,7 @@ We showcase an impressive voice agent powered by ASTRA, demonstrating its abilit -#### Prerequisite +#### Prerequisites - Agora App ID and App Certificate([read here on how](https://docs.agora.io/en/video-calling/get-started/manage-agora-account?platform=web)) - Azure's [speech-to-text](https://azure.microsoft.com/en-us/products/ai-services/speech-to-text) and [text-to-speech](https://azure.microsoft.com/en-us/products/ai-services/text-to-speech) API keys @@ -58,49 +56,49 @@ You will need to uncheck "Use Rosetta for x86_64/amd64 emulation on apple silico -#### 1. Build the agent within Docker image + +#### 1. Create manifest.json ```bash -# Create manifiest from example. +# Crate manifest.json from the example cp ./agents/manifest.json.example ./agents/manifest.json +``` + +#### 2. Modify prompts and greetings + +```json +// Feel free to edit prompts and greetings in manifest.json +"property": { + "base_url": "", + "api_key": "", + "frequency_penalty": 0.9, + "model": "gpt-3.5-turbo", + "max_tokens": 512, + "prompt": "", // prompts + "proxy_url": "", + "greeting": "Astra agent connected. How can I help you today?", // greetings + "max_memory_length": 10 +} +``` + +#### 4. Create agent in Docker container -# Pull the docker image with dev tools and mount your current folder as workspace +```bash +# Pull Docker image and mount the directory in command line docker run -itd -v $(pwd):/app -w /app -p 8080:8080 --name astra_agents_dev ghcr.io/rte-design/astra_agents_build -# For windows git bash +# Windows Git Bash # docker run -itd -v //$(pwd):/app -w //app -p 8080:8080 --name astra_agents_dev ghcr.io/rte-design/astra_agents_build -# Enter docker image +# Enter container docker exec -it astra_agents_dev bash -# Build agent +# Create agent make build ``` -#### 2. Modify prompts -The above code generates an agent executable, to customize your prompts and OpenAI parameters, modify the following code in `agents/addon/extension/openai_chatgpt/openai_chatgpt.go`: -``` -func defaultOpenaiChatGPTConfig() openaiChatGPTConfig { - return openaiChatGPTConfig{ - BaseUrl: "https://api.openai.com/v1", - ApiKey: "", - Model: openai.GPT4o, - Prompt: "You are a voice assistant who talks in a conversational way and can chat with me like my friends. i will speak to you in english or chinese, and you will answer in the corrected and improved version of my text with the language i use. Don't talk like a robot, instead i would like you to talk like real human with emotions. i will use your answer for text-to-speech, so don't return me any meaningless characters. I want you to be helpful, when i'm asking you for advices, give me precise, practical and useful advices instead of being vague. When giving me list of options, express the options in a narrative way instead of bullet points.", - FrequencyPenalty: 0.9, - PresencePenalty: 0.9, - TopP: 1.0, - Temperature: 0.1, - MaxTokens: 512, - Seed: rand.Int(), - ProxyUrl: "", - } -} -``` - - -#### 3. Start local server +#### 5. Start server -Start the server by running the following terminal commands: ```bash # Agora App ID and Agora App Certificate @@ -114,45 +112,39 @@ export OPENAI_API_KEY= export AZURE_STT_KEY= export AZURE_STT_REGION= -# TTS -# Here are three TTS options, either one will work -# Make sure to comment out the one you don't use - -# 1. using Azure -export TTS_VENDOR_CHINESE=azure +# Azure TTS key and region export AZURE_TTS_KEY= export AZURE_TTS_REGION= -# 2. using ElevenLabs -export TTS_VENDOR_ENGLISH=elevenlabs -export ELEVENLABS_TTS_KEY= - -# Agent is ready to start on port 8080 +# Run server on port 8080 make run-server ``` +#### 6. Connect voice agent UI to server -#### 4. Run the voice agent interface +The UI of voice agent is build on Next.js 14, so it needs Node 18 or later. -The voice agent interface is built on NextJS 14, hence it needs Node 18 or later. +Open a separate Terminal tab and run the commands: ```bash -# Create an env file from the example so the interface points to the right port +# Create a .env file from example cd playground cp .env.example .env -# Install npm dependencies & start localhost:3000 in browser +# Install dependencies and start dev environment in localhost:3000 npm install && npm run dev ``` -#### 5. Verify your customized voice agent 🎉 +#### 7. Verify your customized voice agent 🎉 -Open `localhost:3000` in your browser, you should be seeing a voice agent just like the showcase, yet with your own customizations. +Open `localhost:3000` in your browser, you should be seeing a voice agent just like the Astra, yet with your own customizations.

Voice agent architecture

+ To explore further, the ASTRA voice agent is an excellent starting point. It incorporates the following extensions, some of which will be interchangeable in the near future. Feel free to choose the ones that best suit your needs and maximize ASTRA’s capabilities. + | Extension | Feature | Description | | ------------------ | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | openai_chatgpt | LLM | [ GPT-4o ](https://platform.openai.com/docs/models/gpt-4o), [ GPT-4 Turbo ](https://platform.openai.com/docs/models/gpt-4-turbo-and-gpt-4), [ GPT-3.5 Turbo ](https://platform.openai.com/docs/models/gpt-3-5-turbo) | @@ -167,52 +159,18 @@ To explore further, the ASTRA voice agent is an excellent starting point. It inc ![ASTRA voice agent diagram](./images/image-2.png) - -
-

How to build the agent in headlessly

- -#### 1. Build the agent within Docker image - -``` -# Create manifest from the example file -cp ./agents/manifest.json.example ./agents/manifest.json - -# Pull the docker image with dev tools and mount your current folder as workspace -docker run -itd -v $(pwd):/app -w /app -p 8080:8080 --name astra_agents_dev ghcr.io/rte-design/astra_agents_build - -# For windows git bash -# docker run -itd -v //$(pwd):/app -w //app -p 8080:8080 --name astra_agents_dev ghcr.io/rte-design/astra_agents_build - -# Enter docker image -docker exec -it astra_agents_dev bash - -# Build agent -make build - -# Start agent -cd ./agents && ./bin/start -``` - -#### 2. Test agent - -Go to [Agora Web Demo](https://webdemo.agora.io/) to test really quick. - -Note the `channel` and `remote_stream_id` needs to match with the one you use on `https://webdemo.agora.io/` - -After entering the corresponding RTC ID and channel name, you should be able to see the log and hear the audio output. -
-

ASTRA Service

+

TEN Service

Discover More

-Now that you’ve created your first AI agent, the creativity doesn’t stop here. To develop more amazing agents, you’ll need an advanced understanding of how the ASTRA works under the hood. Please refer to the [ ASTRA architecture documentation ](./docs/astra-architecture.md). +Now that you’ve created your first AI agent, the creativity doesn’t stop here. To develop more amazing agents, you’ll need an advanced understanding of how the TEN works under the hood. Please refer to the [ TEN service documentation ](./docs/astra-architecture.md).

Stay Tuned

Before we dive further, be sure to star our repository and get instant notifications for all new releases! -![ASTRA star us gif](https://github.com/rte-design/ASTRA.ai/raw/main/images/star-the-repo-confetti-higher-quality.gif) +![TEN star us gif](https://github.com/rte-design/ASTRA.ai/raw/main/images/star-the-repo-confetti-higher-quality.gif)

Join Community

@@ -225,7 +183,7 @@ Before we dive further, be sure to star our repository and get instant notificat

Code Contributors

-[![ASTRA](https://contrib.rocks/image?repo=rte-design/astra.ai)](https://github.com/rte-design/astra.ai/graphs/contributors) +[![TEN](https://contrib.rocks/image?repo=rte-design/astra.ai)](https://github.com/rte-design/astra.ai/graphs/contributors)

Contribution Guidelines