暂无图片
暂无图片
4
暂无图片
暂无图片
暂无图片

运用 OCI、Agora 和 TEN 框架构建 对话式AI 能力

甲骨文云技术 2024-12-16
933
  • 1)甲骨文云技术 (OCI)

过去 15 年以来,企业客户正在改变云使用模式。“分布式云”是指云计算架构,其中处理能力分布在多个地理分散的数据中心,允许灵活部署应用程序和数据,而“AI 基础设施”是专门为支持人工智能 (AI) 任务的苛刻计算需求而设计的底层硬件和软件系统,“分布式 AI”意味着利用这种分布式云基础设施在多个计算节点上运行 AI 算法,从而实现更快的处理速度和更大的大型数据集可扩展性。 

·Oracle 推出以AI为中心的企业开发架构

利用 Oracle Database 23ai 技术并借助 AI,开发人员可以专注于构建应用程序功能,而不是数据基础设施需求。

·具有 RAG 和其他增强功能的 Oracle 自治数据库 Select AI:通过利用检索增强生成 (RAG) AI 向量搜索,在使用带有企业数据的大型语言模型 (LLM) 时对自然语言问题提供更精确的回答,使客户能够降低出现幻觉的风险。

·更广泛地支持 LLM:通过 Autonomous Database 与其他 LLMGoogle GeminiAnthropic Claude Hugging Face)的内置集成,帮助组织从生成式 AI 中获得更多价值。Autonomous Database 7 家提供商的 35 种不同的 LLM 集成,为客户提供了构建面向企业的生成式开发应用程序的广泛选择。

·自治数据库 NVIDIA GPU 支持:使客户能够访问 NVIDIA GPU 来加速某些 AI 数据操作的性能,而无需担心配置或管理 GPU 服务器。最初,客户可以利用 Oracle Machine Learning Notebooks,它使用支持 GPU Python 包来处理资源密集型工作负载,例如使用transformer模型生成向量嵌入和构建深度学习模型。

·Data Studio AI 增强功能:使客户能够使用自然语言准备和加载数据,以及使用可视化拖放工具创建具有文本和图像向量嵌入的 AI 流水线。

·Graph Studio 增强功能:使用内置的自助服务工具,用户无需代码即可构建操作属性图模型(Oracle Database 23ai 中的新功能)。

·面向开发人员的自治数据库:使用户能够以固定的小时费率访问自治数据库提供的丰富功能和工具。这为开发用例提供了更低、更可预测的切入点,并提供了简单的生产部署升级路径。

·分布式云:

·支持跨各个位置部署应用程序和数据,包括本地、边缘设备和公共云。 

·根据用户所在的位置提供改进的性能、弹性和数据局部性。 

·需要强大的网络连接才能有效地管理分布式计算资源。 

·OCI 是超大规模云服务提供商,能够在任何环境、任何地点提供 150 多种云技术服务,或者从 AWSAzure Google Cloud 合作伙伴区域获取 Oracle Database 服务。

·AI 基础设施:

·包括具有 GPU 等专用硬件的高性能计算集群,以加速 AI 计算。 

·通常利用分布式存储系统来有效地处理大型数据集。 

·可能涉及用于训练和部署 AI 模型的专门 AI 框架和库。 

·OCI 可帮助用户在 OCI 分布式云中的任何地方更快地运行苛刻的 AI 工作负载,包括生成 AI、计算机视觉和预测分析。使用 OCI 超级集群可扩展至 32,768 GPU

·分布式 AI:

·利用分布式云的功能将大型 AI 任务拆分为较小的部分,并同时在多个节点上执行它们。 

·允许在海量数据集上更快地训练复杂的 AI 模型。 

·在管理数据一致性和协调不同节点之间的计算方面面临挑战。 

·下面的架构涉及 Google Cloud OCI 的多云解决方案,其中 GKE 协调整体训练和推理过程,同时根据需要将计算密集型部分放到到 OCI AI 基础架构中。


  • 2)Agora 实时网络,与 AI 进行逼真的语音交互

为了与人工智能进行有效沟通,人工智能智能体必须清楚地理解人类的输入。为了让人工智能模拟人类的情感和对话流程,需要超低延迟的实时网络。Agora的优势是提供实时网络基础设施。

广泛采用人机语音对话的两大障碍是latency (或者delay) 和无线最后一英里挑战,例如快速变化的带宽和高数据包丢失。Agora 的软件定义实时网络 (SD-RTNTM) 是一种实时互联网覆盖网络,采用智能路由和最后一英里优化构建,以确保高质量和低延迟。将 Agora 的实时网络基础设施应用于语音驱动的对话式人工智能,使人类能够以与人类相同的方式与人工智能互动。

受到新多模式功能突破性用户体验的推动,开发人员正在寻找构建实时对话式人工智能智能体的方法。构建多模态 AI 智能体非常困难,因为这些智能体不仅需要超低延迟,还需要深入了解聊天、语音转文本、文本转语音以及实时音频和视频通信等技术。将所有这些模块集成在一起以提供类似人类的体验也增加了复杂性。TENTransformative Extensions Network)的引入,实时对话式多模态智能体框架可减少编码痛苦,并使开发人员能够从头开始构建下一代 对话式AI 应用程序。


3)TEN框架:世界一流的真正实时对话式多模态框架:

TENTransformative Extensions Network 框架是 Agora 和社区支持的开源框架,可让开发人员快速构建实时对话式多模式智能体(语音、视频、数据流、图像和文本)让开发人员可以轻松进行实验、集成大型语言模型并创建可重复使用的扩展。TEN 可用于构建支持语音聊天机器人、AI 生成的会议记录、语言导师、同声传译、虚拟伴侣、咨询等用例的智能体。开发人员可以利用多种AI 服务和插件,并可以完全灵活地构建、测试和推出下一代 对话式AI 智能体,这些智能体可以像人类一样实时思考、倾听、观察和互动。

TEN 旨在帮助开发人员更快、更轻松地创建实时多模式 对话式AI 智能体:

·真正实时的多模态,超低延迟。TEN 支持语音、视频、数据流、图像和文本,非常适合对话式AI、实时翻译等语音或视频交互用例。除此之外,不同扩展之间的交互(如数据传输)也经过优化,以简化端到端开发和性能。

·无处不在的支持和可定制的插件。与其他多模式和编程语言支持有限的工作流构建器不同,TEN 框架支持 GolangC++ Python,接下来将支持 Node.js。此外,TEN 还支持跨所有主要平台(包括 WindowsMacLinux Mobile)进行开发。所有扩展都采用模块化结构,在多种语言中具有完全的灵活性。

·实时响应和实时状态管理。通过优先考虑实时响应、动态工作流和同步数据,使用 TEN 框架构建的智能体可提供更具交互性、更像人类的 AI 体验,包括在多用户情况下。使用 TEN,开发人员拥有一个可提供低延迟、同步、自适应媒体质量、并发用户支持、网络弹性等的框架。

·同时支持边缘和云。借助 TEN 框架,可以无缝组合部署在边缘和云环境中的扩展,以创建广泛的应用程序。对于隐私敏感的边缘部署,较小的模型可以使用本地计算能力来降低总体成本并减少延迟,而基于云的大型语言模型可以集成以实现成本和性能的平衡。

·闪电般快速的构建体验,对开发人员友好。直观的可视化界面和拖放组件使开发人员可以轻松上手。对于那些有更复杂要求的用户,TEN 灵活的架构和开放 API 也为构建自定义扩展提供了一个强大的平台。

  • 4)你可以在 OCI 上拥有自己的 TEN agent。让我们来看看一个真实的解决方案。

TEN Agent TEN Framework 开发的开源实时demo 智能体。在开始开发自己的智能体之前,您可以查看此演示链接:https://agent.theten.ai/。在本节结束时,您将清楚如何使用 TEN Framework 进行开发以及如何与 OCI 服务集成。

·多模态对话智能体:STT-LLM-TTS 的级联模型

·使用图形设计器来编写和说明数据流

需要使用的组件和服务:

STT组件:Deepgram

LLM组件:部署在OCI VM上的LLM

TTS组件:Fishaudio

实时传输组件:Agora RTC

·OCI TEN Agent部署架构

·准备:

·Deepgram API 令牌需要预先申请。

·注册 OCI 帐户并使用 VM 配置 LLM 组件(型号:AMD E54 OCPU48 GB 内存)。安装 Ollama 新版本。拉取 Llama 3.2 3B 模型。该模型公开 URL 端点以进行专用网络访问。

·Fishaudio API 令牌需要事先申请。

·Agora App ID App Certificate需提前申请。

·需要配置 TEN Agent 部署 VM(型号:AMD E54 OCPU48 GB 内存)。安装 DockerDocker ComposeNodejs (LTS) v18

·OCI Flex LB组件为TEN Agent 服务访问提供HTTPSHTTP协议转换。

·TEN Agent部署:

github 克隆 TEN Agent 代码:https://github.com/TEN-framework/TEN-Agent.

1. 修改env配置文件

在项目的根目录中,使用 cp 命令从样例.env.example 生成.env文件。

它将用于存储稍后 docker compose 的环境变量,如果您更改它,则需要在容器中再次 source .env 以使更改生效。

cp ./.env.example ./.env

2. property.json

可以在图形设计器中进行编辑。

3. 设置 API 密钥

打开.env文件并填写键值。

# Agora App ID

# Agora App Certificate(only required if enabled in the Agora Console)

AGORA_APP_ID=

AGORA_APP_CERTIFICATE=

DEEPGRAM_API_KEY=

FISH_AUDIO_TTS_KEY=

# Extension: oci_llm

# OCI LLM API key

OCILLM_API_BASE=http://< LLM component private IP>:11434/v1

OCILLM_API_KEY=ollama

OCILLM_MODEL=llama3.2

4. 添加 OCI LLM 扩展

我们在 TEN Agent extension文件夹下创建 oci_llm_python 文件夹。

4.1 addon.py

4.2 extension.py

OCILLMExtension 类实现 on_initon_starton_stopon_deiniton_cmdon_data 等。

4.3 ocillm.py

该文件包含处理 LLM API 调用和处理响应的逻辑。

5. 启动agent 开发容器

在同一目录下,运行docker compose up命令来启动容器:

docker compose up

或者使用 docker compose up -d 命令,以分离模式启动容器。

docker compose up -d

6. 登入容器,编译agent

打开一个单独的终端窗口,进入容器并编译智能体:

docker exec -it ten_agent_dev bash

make build

7. 启动服务器

编译完成后,在端口 8080 上运行服务器:

make run-server

·与您自己的智能体进行交互

全部完成。现在您可以选择在 Graph Designer 中新定义的 va_deepgram_llm_fishaudio 多模态语音智能体 (STT-LLM-TTS)。单击连接。然后开始与您自己的智能体对话。

  • 5)下一步是什么?

上例中,TEN 框架的能力和灵活性在 OCI 上得到了验证。接下来,在我们与 TEN Framework 社区的合作中,您可以在未来的开发中精心策划更多解决方案,例如:

· OCI 上按需自主部署更多的完全托管场景下的LLM

·TEN框架与RAG支持的OCI垂直行业场景与企业数据或知识库进行整合。

·TEN 框架与OCI 数据科学服务以及经过微调的企业模型集成。


文章转载自甲骨文云技术,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论