diff --git a/agents/.gitignore b/agents/.gitignore index d2e02e77..faced1f0 100644 --- a/agents/.gitignore +++ b/agents/.gitignore @@ -5,7 +5,6 @@ ten_packages/extension/azure_tts ten_packages/extension/agora_sess_ctrl ten_packages/extension/agora_rtm ten_packages/extension/py_init_extension_cpp -ten_packages/extension/http_server_python ten_packages/system/agora_rtc_sdk ten_packages/system/azure_speech_sdk ten_packages/system/nlohmann_json diff --git a/agents/examples/demo/manifest.json b/agents/examples/demo/manifest.json index a4158c8f..ab4316ed 100644 --- a/agents/examples/demo/manifest.json +++ b/agents/examples/demo/manifest.json @@ -37,51 +37,6 @@ "type": "extension", "name": "agora_rtm", "version": "=0.3.0" - }, - { - "type": "extension", - "name": "openai_chatgpt_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "openai_v2v_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "fish_audio_tts", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "message_collector", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "message_collector_rtm", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "vision_tool_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "vision_analyze_tool_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "weatherapi_tool_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "bingsearch_tool_python", - "version": "=0.1.0" } ] } \ No newline at end of file diff --git a/agents/examples/experimental/manifest.json b/agents/examples/experimental/manifest.json index 75532b50..2a16c223 100644 --- a/agents/examples/experimental/manifest.json +++ b/agents/examples/experimental/manifest.json @@ -37,141 +37,6 @@ "type": "extension", "name": "agora_rtm", "version": "=0.3.0" - }, - { - "type": "extension", - "name": "http_server_python", - "version": "0.7.0" - }, - { - "type": "extension", - "name": "aliyun_analyticdb_vector_storage", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "aliyun_text_embedding", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "file_chunker", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "llama_index_chat_engine", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "bedrock_llm_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "bingsearch_tool_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "cartesia_tts", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "cosy_tts_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "deepgram_asr_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "elevenlabs_tts_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "fashionai", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "fish_audio_tts", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "gemini_llm_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "gemini_llm_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "interrupt_detector_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "message_collector", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "minimax_tts_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "minimax_v2v_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "openai_chatgpt_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "openai_v2v_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "polly_tts", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "qwen_llm_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "transcribe_asr_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "tsdb_firestore", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "vision_tool_python", - "version": "=0.1.0" - }, - { - "type": "extension", - "name": "weatherapi_tool_python", - "version": "=0.1.0" } ] } \ No newline at end of file diff --git a/agents/scripts/install_deps_and_build.sh b/agents/scripts/install_deps_and_build.sh index b9c8cefb..0a19b753 100755 --- a/agents/scripts/install_deps_and_build.sh +++ b/agents/scripts/install_deps_and_build.sh @@ -60,11 +60,7 @@ install_python_requirements() { if [[ -d "ten_packages/extension" ]]; then for extension in ten_packages/extension/*; do if [[ -f "$extension/requirements.txt" ]]; then - local extension_name=$(basename $extension) - local exists_in_manifest=$(cat manifest.json | jq --arg ext_name "${extension_name}" 'any(.dependencies[].name == $ext_name ; .)' ) - if [[ "$exists_in_manifest" == "true" ]]; then - pip install -r $extension/requirements.txt - fi + pip install -r $extension/requirements.txt fi done fi @@ -77,6 +73,10 @@ install_python_requirements() { fi done fi + + # pre-import llama-index as it cloud download additional resources during the first import + echo "pre-import python modules..." + python3.10 -c "import llama_index.core;" } build_go_app() { diff --git a/agents/ten_packages/extension/aliyun_analyticdb_vector_storage/manifest.json b/agents/ten_packages/extension/aliyun_analyticdb_vector_storage/manifest.json index c175f7db..05cf24ba 100644 --- a/agents/ten_packages/extension/aliyun_analyticdb_vector_storage/manifest.json +++ b/agents/ten_packages/extension/aliyun_analyticdb_vector_storage/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "aliyun_analyticdb_vector_storage", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/aliyun_text_embedding/manifest.json b/agents/ten_packages/extension/aliyun_text_embedding/manifest.json index c9c059d6..86b8de32 100644 --- a/agents/ten_packages/extension/aliyun_text_embedding/manifest.json +++ b/agents/ten_packages/extension/aliyun_text_embedding/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "aliyun_text_embedding", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/bedrock_llm_python/manifest.json b/agents/ten_packages/extension/bedrock_llm_python/manifest.json index 591a7bd3..a031ec3d 100644 --- a/agents/ten_packages/extension/bedrock_llm_python/manifest.json +++ b/agents/ten_packages/extension/bedrock_llm_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "bedrock_llm_python", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/bingsearch_tool_python/BUILD.gn b/agents/ten_packages/extension/bingsearch_tool_python/BUILD.gn new file mode 100644 index 00000000..6fe94dbb --- /dev/null +++ b/agents/ten_packages/extension/bingsearch_tool_python/BUILD.gn @@ -0,0 +1,21 @@ +# +# +# Agora Real Time Engagement +# Created by Wei Hu in 2022-11. +# Copyright (c) 2024 Agora IO. All rights reserved. +# +# +import("//build/feature/ten_package.gni") + +ten_package("bingsearch_tool_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "log.py", + "manifest.json", + "property.json", + ] +} diff --git a/agents/ten_packages/extension/cartesia_tts/BUILD.gn b/agents/ten_packages/extension/cartesia_tts/BUILD.gn new file mode 100644 index 00000000..4e409853 --- /dev/null +++ b/agents/ten_packages/extension/cartesia_tts/BUILD.gn @@ -0,0 +1,19 @@ +# +# This file is part of TEN Framework, an open source project. +# Licensed under the Apache License, Version 2.0. +# See the LICENSE file for more information. +# +import("//build/feature/ten_package.gni") + +ten_package("cartesia_tts") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "manifest.json", + "property.json", + "tests", + ] +} diff --git a/agents/ten_packages/extension/cartesia_tts/manifest.json b/agents/ten_packages/extension/cartesia_tts/manifest.json index 4d567fea..85912f14 100644 --- a/agents/ten_packages/extension/cartesia_tts/manifest.json +++ b/agents/ten_packages/extension/cartesia_tts/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "cartesia_tts", - "version": "0.1.0", + "version": "0.4.2", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/cosy_tts_python/BUILD.gn b/agents/ten_packages/extension/cosy_tts_python/BUILD.gn new file mode 100644 index 00000000..40bb6dd4 --- /dev/null +++ b/agents/ten_packages/extension/cosy_tts_python/BUILD.gn @@ -0,0 +1,19 @@ +# +# This file is part of TEN Framework, an open source project. +# Licensed under the Apache License, Version 2.0. +# See the LICENSE file for more information. +# +import("//build/feature/ten_package.gni") + +ten_package("cosy_tts_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "manifest.json", + "property.json", + "tests", + ] +} diff --git a/agents/ten_packages/extension/cosy_tts_python/manifest.json b/agents/ten_packages/extension/cosy_tts_python/manifest.json index d45c678c..d32d2d2c 100644 --- a/agents/ten_packages/extension/cosy_tts_python/manifest.json +++ b/agents/ten_packages/extension/cosy_tts_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "cosy_tts_python", - "version": "0.1.0", + "version": "0.4.2", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/elevenlabs_tts_python/BUILD.gn b/agents/ten_packages/extension/elevenlabs_tts_python/BUILD.gn new file mode 100644 index 00000000..008eed3d --- /dev/null +++ b/agents/ten_packages/extension/elevenlabs_tts_python/BUILD.gn @@ -0,0 +1,19 @@ +# +# This file is part of TEN Framework, an open source project. +# Licensed under the Apache License, Version 2.0. +# See the LICENSE file for more information. +# +import("//build/feature/ten_package.gni") + +ten_package("elevenlabs_tts_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "manifest.json", + "property.json", + "tests", + ] +} diff --git a/agents/ten_packages/extension/elevenlabs_tts_python/manifest.json b/agents/ten_packages/extension/elevenlabs_tts_python/manifest.json index abac9a73..2a24022c 100644 --- a/agents/ten_packages/extension/elevenlabs_tts_python/manifest.json +++ b/agents/ten_packages/extension/elevenlabs_tts_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "elevenlabs_tts_python", - "version": "0.1.0", + "version": "0.4.2", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/fashionai/BUILD.gn b/agents/ten_packages/extension/fashionai/BUILD.gn new file mode 100644 index 00000000..6a6765bb --- /dev/null +++ b/agents/ten_packages/extension/fashionai/BUILD.gn @@ -0,0 +1,22 @@ +# +# +# Agora Real Time Engagement +# Created by Wei Hu in 2022-11. +# Copyright (c) 2024 Agora IO. All rights reserved. +# +# +import("//build/feature/ten_package.gni") + +ten_package("fashionai") { + package_kind = "extension" + + resources = [ + "__init__.py", + "manifest.json", + "property.json", + "src/__init__.py", + "src/addon.py", + "src/extension.py", + "src/log.py", + ] +} diff --git a/agents/ten_packages/extension/file_chunker/manifest.json b/agents/ten_packages/extension/file_chunker/manifest.json index a29fdd01..460c4382 100644 --- a/agents/ten_packages/extension/file_chunker/manifest.json +++ b/agents/ten_packages/extension/file_chunker/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "file_chunker", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/fish_audio_tts/manifest.json b/agents/ten_packages/extension/fish_audio_tts/manifest.json index d8dee21f..b5befbf4 100644 --- a/agents/ten_packages/extension/fish_audio_tts/manifest.json +++ b/agents/ten_packages/extension/fish_audio_tts/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "fish_audio_tts", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/gemini_llm_python/manifest.json b/agents/ten_packages/extension/gemini_llm_python/manifest.json index 86ae20a6..2d9f51b8 100644 --- a/agents/ten_packages/extension/gemini_llm_python/manifest.json +++ b/agents/ten_packages/extension/gemini_llm_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "gemini_llm_python", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/glue_python_async/BUILD.gn b/agents/ten_packages/extension/glue_python_async/BUILD.gn new file mode 100644 index 00000000..c0ccf4d5 --- /dev/null +++ b/agents/ten_packages/extension/glue_python_async/BUILD.gn @@ -0,0 +1,20 @@ +# +# This file is part of TEN Framework, an open source project. +# Licensed under the Apache License, Version 2.0. +# See the LICENSE file for more information. +# +import("//build/feature/ten_package.gni") + +ten_package("glue_python_async") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "log.py", + "manifest.json", + "property.json", + "tests", + ] +} diff --git a/agents/ten_packages/extension/glue_python_async/manifest.json b/agents/ten_packages/extension/glue_python_async/manifest.json index 51b8f0f9..c772f171 100644 --- a/agents/ten_packages/extension/glue_python_async/manifest.json +++ b/agents/ten_packages/extension/glue_python_async/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "glue_python_async", - "version": "0.1.0", + "version": "0.3.1", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/http_server_python/__init__.py b/agents/ten_packages/extension/http_server_python/__init__.py new file mode 100644 index 00000000..0bcc331c --- /dev/null +++ b/agents/ten_packages/extension/http_server_python/__init__.py @@ -0,0 +1,4 @@ +from . import http_server_addon +from .log import logger + +logger.info("http_server_python extension loaded") diff --git a/agents/ten_packages/extension/http_server_python/http_server_addon.py b/agents/ten_packages/extension/http_server_python/http_server_addon.py new file mode 100644 index 00000000..97f269aa --- /dev/null +++ b/agents/ten_packages/extension/http_server_python/http_server_addon.py @@ -0,0 +1,14 @@ +from ten import ( + Addon, + register_addon_as_extension, + TenEnv, +) + + +@register_addon_as_extension("http_server_python") +class HTTPServerExtensionAddon(Addon): + def on_create_instance(self, ten: TenEnv, addon_name: str, context): + from .log import logger + from .http_server_extension import HTTPServerExtension + logger.info("on_create_instance") + ten.on_create_instance_done(HTTPServerExtension(addon_name), context) diff --git a/agents/ten_packages/extension/http_server_python/http_server_extension.py b/agents/ten_packages/extension/http_server_python/http_server_extension.py new file mode 100644 index 00000000..4148c7c9 --- /dev/null +++ b/agents/ten_packages/extension/http_server_python/http_server_extension.py @@ -0,0 +1,89 @@ +from ten import ( + Extension, + TenEnv, + Cmd, + StatusCode, + CmdResult, +) +from .log import logger +from http.server import HTTPServer, BaseHTTPRequestHandler +import threading +from functools import partial + + +class HTTPHandler(BaseHTTPRequestHandler): + def __init__(self, ten, *args, directory=None, **kwargs): + logger.info("new handler: %s %s %s", directory, args, kwargs) + self.ten = ten + super().__init__(*args, **kwargs) + + def do_POST(self): + logger.info("post request incoming %s", self.path) + if self.path == "/cmd": + try: + content_length = int(self.headers["Content-Length"]) + input = self.rfile.read(content_length).decode("utf-8") + logger.info("incoming request %s", input) + self.ten.send_cmd( + Cmd.create_from_json(input), + lambda ten, result: logger.info( + "finish send_cmd from http server %s %s", input, result + ), + ) + self.send_response_only(200) + self.end_headers() + except Exception as e: + logger.warning("failed to handle request, err {}".format(e)) + self.send_response_only(500) + self.end_headers() + else: + logger.warning("invalid path: %s", self.path) + self.send_response_only(404) + self.end_headers() + + +class HTTPServerExtension(Extension): + def __init__(self, name: str): + super().__init__(name) + self.listen_addr = "127.0.0.1" + self.listen_port = 8888 + self.cmd_white_list = None + self.server = None + self.thread = None + + def on_start(self, ten: TenEnv): + self.listen_addr = ten.get_property_string("listen_addr") + self.listen_port = ten.get_property_int("listen_port") + """ + white_list = ten.get_property_string("cmd_white_list") + if len(white_list) > 0: + self.cmd_white_list = white_list.split(",") + """ + + logger.info( + "HTTPServerExtension on_start %s:%d, %s", + self.listen_addr, + self.listen_port, + self.cmd_white_list, + ) + + self.server = HTTPServer( + (self.listen_addr, self.listen_port), partial(HTTPHandler, ten) + ) + self.thread = threading.Thread(target=self.server.serve_forever) + self.thread.start() + + ten.on_start_done() + + def on_stop(self, ten: TenEnv): + logger.info("on_stop") + self.server.shutdown() + self.thread.join() + ten.on_stop_done() + + def on_cmd(self, ten: TenEnv, cmd: Cmd): + cmd_json = cmd.to_json() + logger.info("on_cmd json: " + cmd_json) + cmd_result = CmdResult.create(StatusCode.OK) + cmd_result.set_property_string("detail", "ok") + ten.return_result(cmd_result, cmd) diff --git a/agents/ten_packages/extension/http_server_python/log.py b/agents/ten_packages/extension/http_server_python/log.py new file mode 100644 index 00000000..a7b47d79 --- /dev/null +++ b/agents/ten_packages/extension/http_server_python/log.py @@ -0,0 +1,13 @@ +import logging + +logger = logging.getLogger("http_server_python") +logger.setLevel(logging.INFO) + +formatter = logging.Formatter( + "%(asctime)s - %(name)s - %(levelname)s - %(process)d - [%(filename)s:%(lineno)d] - %(message)s" +) + +console_handler = logging.StreamHandler() +console_handler.setFormatter(formatter) + +logger.addHandler(console_handler) diff --git a/agents/ten_packages/extension/http_server_python/manifest.json b/agents/ten_packages/extension/http_server_python/manifest.json new file mode 100644 index 00000000..913f3a1a --- /dev/null +++ b/agents/ten_packages/extension/http_server_python/manifest.json @@ -0,0 +1,63 @@ +{ + "type": "extension", + "name": "http_server_python", + "version": "0.5.0", + "dependencies": [ + { + "type": "system", + "name": "ten_runtime_python", + "version": "0.4" + } + ], + "package": { + "include": [ + "manifest.json", + "property.json", + "**.py" + ] + }, + "api": { + "property": { + "listen_addr": { + "type": "string" + }, + "listen_port": { + "type": "int32" + } + }, + "cmd_out": [ + { + "name": "update_querying_collection", + "property": { + "filename": { + "type": "string" + }, + "collection": { + "type": "string" + } + }, + "required": [ + "filename", + "collection" + ] + }, + { + "name": "file_chunk", + "property": { + "filename": { + "type": "string" + }, + "path": { + "type": "string" + }, + "collection": { + "type": "string" + } + }, + "required": [ + "path" + ] + } + ] + } +} \ No newline at end of file diff --git a/agents/ten_packages/extension/http_server_python/property.json b/agents/ten_packages/extension/http_server_python/property.json new file mode 100644 index 00000000..27ae7c57 --- /dev/null +++ b/agents/ten_packages/extension/http_server_python/property.json @@ -0,0 +1,4 @@ +{ + "listen_addr": "0.0.0.0", + "listen_port": 8888 +} \ No newline at end of file diff --git a/agents/ten_packages/extension/interrupt_detector_python/manifest.json b/agents/ten_packages/extension/interrupt_detector_python/manifest.json index 721a40c0..92b70555 100644 --- a/agents/ten_packages/extension/interrupt_detector_python/manifest.json +++ b/agents/ten_packages/extension/interrupt_detector_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "interrupt_detector_python", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/llama_index_chat_engine/manifest.json b/agents/ten_packages/extension/llama_index_chat_engine/manifest.json index b394375b..08a0c643 100644 --- a/agents/ten_packages/extension/llama_index_chat_engine/manifest.json +++ b/agents/ten_packages/extension/llama_index_chat_engine/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "llama_index_chat_engine", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/message_collector/BUILD.gn b/agents/ten_packages/extension/message_collector/BUILD.gn new file mode 100644 index 00000000..555cf959 --- /dev/null +++ b/agents/ten_packages/extension/message_collector/BUILD.gn @@ -0,0 +1,22 @@ +# +# +# Agora Real Time Engagement +# Created by Wei Hu in 2022-11. +# Copyright (c) 2024 Agora IO. All rights reserved. +# +# +import("//build/feature/ten_package.gni") + +ten_package("message_collector") { + package_kind = "extension" + + resources = [ + "__init__.py", + "manifest.json", + "property.json", + "src/__init__.py", + "src/addon.py", + "src/extension.py", + "src/log.py", + ] +} diff --git a/agents/ten_packages/extension/message_collector_rtm/BUILD.gn b/agents/ten_packages/extension/message_collector_rtm/BUILD.gn new file mode 100644 index 00000000..7a89eef0 --- /dev/null +++ b/agents/ten_packages/extension/message_collector_rtm/BUILD.gn @@ -0,0 +1,22 @@ +# +# +# Agora Real Time Engagement +# Created by Wei Hu in 2022-11. +# Copyright (c) 2024 Agora IO. All rights reserved. +# +# +import("//build/feature/ten_package.gni") + +ten_package("message_collector_rtm") { + package_kind = "extension" + + resources = [ + "__init__.py", + "manifest.json", + "property.json", + "src/__init__.py", + "src/addon.py", + "src/extension.py", + "src/log.py", + ] +} diff --git a/agents/ten_packages/extension/minimax_tts_python/BUILD.gn b/agents/ten_packages/extension/minimax_tts_python/BUILD.gn new file mode 100644 index 00000000..02a50c6e --- /dev/null +++ b/agents/ten_packages/extension/minimax_tts_python/BUILD.gn @@ -0,0 +1,19 @@ +# +# This file is part of TEN Framework, an open source project. +# Licensed under the Apache License, Version 2.0. +# See the LICENSE file for more information. +# +import("//build/feature/ten_package.gni") + +ten_package("minimax_tts_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "manifest.json", + "property.json", + "tests", + ] +} diff --git a/agents/ten_packages/extension/minimax_tts_python/manifest.json b/agents/ten_packages/extension/minimax_tts_python/manifest.json index 455b7701..12913aa9 100644 --- a/agents/ten_packages/extension/minimax_tts_python/manifest.json +++ b/agents/ten_packages/extension/minimax_tts_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "minimax_tts_python", - "version": "0.1.0", + "version": "0.4.2", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/openai_chatgpt_python/BUILD.gn b/agents/ten_packages/extension/openai_chatgpt_python/BUILD.gn new file mode 100644 index 00000000..23f06108 --- /dev/null +++ b/agents/ten_packages/extension/openai_chatgpt_python/BUILD.gn @@ -0,0 +1,21 @@ +# +# +# Agora Real Time Engagement +# Created by Wei Hu in 2022-11. +# Copyright (c) 2024 Agora IO. All rights reserved. +# +# +import("//build/feature/ten_package.gni") + +ten_package("openai_chatgpt_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "log.py", + "manifest.json", + "property.json", + ] +} diff --git a/agents/ten_packages/extension/openai_v2v_python/BUILD.gn b/agents/ten_packages/extension/openai_v2v_python/BUILD.gn new file mode 100644 index 00000000..1a40f3c2 --- /dev/null +++ b/agents/ten_packages/extension/openai_v2v_python/BUILD.gn @@ -0,0 +1,21 @@ +# +# +# Agora Real Time Engagement +# Created by Wei Hu in 2022-11. +# Copyright (c) 2024 Agora IO. All rights reserved. +# +# +import("//build/feature/ten_package.gni") + +ten_package("openai_v2v_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "log.py", + "manifest.json", + "property.json", + ] +} diff --git a/agents/ten_packages/extension/polly_tts/BUILD.gn b/agents/ten_packages/extension/polly_tts/BUILD.gn new file mode 100644 index 00000000..16a3f9f3 --- /dev/null +++ b/agents/ten_packages/extension/polly_tts/BUILD.gn @@ -0,0 +1,19 @@ +# +# This file is part of TEN Framework, an open source project. +# Licensed under the Apache License, Version 2.0. +# See the LICENSE file for more information. +# +import("//build/feature/ten_package.gni") + +ten_package("polly_tts") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "manifest.json", + "property.json", + "tests", + ] +} \ No newline at end of file diff --git a/agents/ten_packages/extension/polly_tts/manifest.json b/agents/ten_packages/extension/polly_tts/manifest.json index 02575eee..30c3d478 100644 --- a/agents/ten_packages/extension/polly_tts/manifest.json +++ b/agents/ten_packages/extension/polly_tts/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "polly_tts", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/qwen_llm_python/manifest.json b/agents/ten_packages/extension/qwen_llm_python/manifest.json index b157ab8c..1227bd78 100644 --- a/agents/ten_packages/extension/qwen_llm_python/manifest.json +++ b/agents/ten_packages/extension/qwen_llm_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "qwen_llm_python", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/transcribe_asr_python/manifest.json b/agents/ten_packages/extension/transcribe_asr_python/manifest.json index 399bcaef..95403cc8 100644 --- a/agents/ten_packages/extension/transcribe_asr_python/manifest.json +++ b/agents/ten_packages/extension/transcribe_asr_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "transcribe_asr_python", - "version": "0.1.0", + "version": "0.4.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/tsdb_firestore/BUILD.gn b/agents/ten_packages/extension/tsdb_firestore/BUILD.gn new file mode 100644 index 00000000..66830a25 --- /dev/null +++ b/agents/ten_packages/extension/tsdb_firestore/BUILD.gn @@ -0,0 +1,21 @@ +# +# +# Agora Real Time Engagement +# Created by Wei Hu in 2022-11. +# Copyright (c) 2024 Agora IO. All rights reserved. +# +# +import("//build/feature/ten_package.gni") + +ten_package("tsdb_firestore") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "log.py", + "manifest.json", + "property.json", + ] +} diff --git a/agents/ten_packages/extension/vision_analyze_tool_python/BUILD.gn b/agents/ten_packages/extension/vision_analyze_tool_python/BUILD.gn new file mode 100644 index 00000000..dd6d6380 --- /dev/null +++ b/agents/ten_packages/extension/vision_analyze_tool_python/BUILD.gn @@ -0,0 +1,20 @@ +# +# This file is part of TEN Framework, an open source project. +# Licensed under the Apache License, Version 2.0. +# See the LICENSE file for more information. +# +import("//build/feature/ten_package.gni") + +ten_package("vision_analyze_tool_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "log.py", + "manifest.json", + "property.json", + "tests", + ] +} diff --git a/agents/ten_packages/extension/vision_analyze_tool_python/manifest.json b/agents/ten_packages/extension/vision_analyze_tool_python/manifest.json index 8555935e..8e9ead2a 100644 --- a/agents/ten_packages/extension/vision_analyze_tool_python/manifest.json +++ b/agents/ten_packages/extension/vision_analyze_tool_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "vision_analyze_tool_python", - "version": "0.1.0", + "version": "0.3.1", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/vision_tool_python/BUILD.gn b/agents/ten_packages/extension/vision_tool_python/BUILD.gn new file mode 100644 index 00000000..284103e8 --- /dev/null +++ b/agents/ten_packages/extension/vision_tool_python/BUILD.gn @@ -0,0 +1,20 @@ +# +# This file is part of TEN Framework, an open source project. +# Licensed under the Apache License, Version 2.0. +# See the LICENSE file for more information. +# +import("//build/feature/ten_package.gni") + +ten_package("vision_tool_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "log.py", + "manifest.json", + "property.json", + "tests", + ] +} diff --git a/agents/ten_packages/extension/vision_tool_python/manifest.json b/agents/ten_packages/extension/vision_tool_python/manifest.json index 1bd3aa6b..82c8a516 100644 --- a/agents/ten_packages/extension/vision_tool_python/manifest.json +++ b/agents/ten_packages/extension/vision_tool_python/manifest.json @@ -1,7 +1,7 @@ { "type": "extension", "name": "vision_tool_python", - "version": "0.1.0", + "version": "0.3.0", "dependencies": [ { "type": "system", diff --git a/agents/ten_packages/extension/weatherapi_tool_python/BUILD.gn b/agents/ten_packages/extension/weatherapi_tool_python/BUILD.gn new file mode 100644 index 00000000..15a31a94 --- /dev/null +++ b/agents/ten_packages/extension/weatherapi_tool_python/BUILD.gn @@ -0,0 +1,21 @@ +# +# +# Agora Real Time Engagement +# Created by Wei Hu in 2022-11. +# Copyright (c) 2024 Agora IO. All rights reserved. +# +# +import("//build/feature/ten_package.gni") + +ten_package("weatherapi_tool_python") { + package_kind = "extension" + + resources = [ + "__init__.py", + "addon.py", + "extension.py", + "log.py", + "manifest.json", + "property.json", + ] +}