终端 Agent 的真正升级:不是堆功能,而是打通具身智能链路!

0 阅读10分钟

前言

AI Agent 火起来之后,很多产品都在讲“智能体”。

接一个大模型,挂几个工具,配置几条工作流,看起来就像一个 Agent。

但真正放到终端场景里,会发现问题很快出现:它能回答问题,却不能自然表达;能生成文本,却不能完成动作;能调用接口,却很难形成连续、稳定、可落地的服务闭环。

所以,终端 Agent 的核心问题并不是“模型够不够强”,而是:

AI 能不能从“会思考”,进一步走向“会表达、会交互、会执行”。

这也是魔珐星云值得被重新理解的地方。它不是传统意义上的数字人工具,而更像是一套面向 AI 屏幕交互的具身智能基础设施。根据星云具身驱动 SDK 说明,其能力是基于文本输入,实时生成语音、表情与动作,驱动 3D 数字人或人形机器人,把 AI 表达从“文本”升级为“3D 多模态”。

正如如下3D数字人所示:

一、现有方案的问题:很多 Agent 只有“大脑”,没有“身体”

现在大多数 Agent 的典型链路是:

flowchart LR
    A[用户输入] --> B[LLM理解与生成]
    B --> C[文本回复]

这个结构适合做聊天机器人,但不适合做终端 Agent。

因为终端场景里,用户面对的不是一个文本框,而是一个服务入口。

比如政务大厅、企业展厅、商场导购、教育培训、银行客服、医疗导诊,用户要的不是“给我一段答案”,而是“帮我完成一件事”。

传统 Agent 的问题就在于,它经常只完成了“大脑层”:

  • 能理解,但不能表达;
  • 能回答,但不能引导;
  • 能调用工具,但不能形成自然交互;
  • 能做 Demo,但很难真正跑在终端里。

星云 FAQ 对“具身智能 3D 数字人”的定义很关键:它是把数字人的形象与表达能力,和大模型的大脑与办事能力深度融合。

这意味着,真正的终端 Agent 不应该只是 LLM App,而应该是:

flowchart LR
    A[用户输入<br/>语音 / 文本 / 触控] --> B[LLM<br/>意图理解与任务规划]
    B --> C[TTS<br/>语音合成]
    C --> D[具身驱动 SDK<br/>口型 / 表情 / 动作 / 状态]
    D --> E[3D数字人实时表达]
    E --> F[用户反馈]
    F --> B

这条链路一旦打通,Agent 才不只是“会说”,而是开始具备“在终端服务用户”的能力。

二、技术瓶颈:LLM、TTS、渲染如果各自为战,Agent 就很难落地

很多团队做终端 Agent,会陷入一个误区: 以为接上 LLM,再接一个 TTS,再放一个数字人形象,就完成了智能体。

但真实工程里,难点并不在“有没有这些模块”,而在这些模块能不能稳定协同。

一个终端 Agent 至少要同时处理:

  • LLM 生成内容;
  • TTS 把文本转成语音;
  • 口型与语音同步;
  • 数字人表情和动作控制;
  • 播放状态监听;
  • 业务 API 调用;
  • 页面组件展示;
  • 用户反馈回传;
  • 多端适配和性能稳定。

如果这些环节没有统一架构,最终体验就会变成:

  • 文字出来了,语音慢半拍;
  • 语音播完了,表情没跟上;
  • 业务数据查到了,但屏幕无法同步展示;
  • 用户打断后,系统状态混乱。

这就是为什么,终端 Agent 不能只看模型,而要看架构。

三、星云的解法:把“理解—表达—执行—反馈”串成端到端链路

从技术视角看,星云的价值不是提供一个单点数字人能力,而是补齐了终端 Agent 最容易缺失的“具身表达层”。

根据 SDK 文档,星云具身驱动 SDK 的主要能力包括实时 3D 数字人渲染与驱动、语音合成与口型同步、多状态行为控制、Widget 组件展示,以及自定义事件回调与日志系统。

这几个能力组合在一起,刚好对应终端 Agent 的关键链路:

flowchart TB
    subgraph Brain[大脑层]
        A[LLM意图理解]
        B[任务规划]
        C[工具调用]
    end

    subgraph Expression[具身表达层]
        D[TTS语音合成]
        E[口型同步]
        F[表情动作]
        G[状态控制<br/>Idle / Listen / Speak]
        H[Widget展示<br/>图片 / 字幕 / 视频]
    end

    subgraph Terminal[终端交互层]
        I[Web]
        J[App]
        K[小程序]
        L[智能屏]
    end

    A --> B --> C
    C --> D
    D --> E --> F --> G --> H
    H --> I
    H --> J
    H --> K
    H --> L
    I --> A
    J --> A
    K --> A
    L --> A

这就是架构升级的关键: LLM 负责“想明白”,星云负责“表达出来”,业务系统负责“办成事”,终端负责“让用户感知到”。

四、一个可落地的 Demo:把静态数字人升级为展厅 Agent

假设要做一个企业展厅讲解 Agent,传统做法可能是循环播放宣传片,或者让数字人按固定文案播报。

但如果按照终端 Agent 架构来做,它应该是实时交互的。

sequenceDiagram
    participant U as 用户
    participant APP as 前端应用
    participant LLM as 大模型
    participant API as 业务系统
    participant SDK as 星云具身驱动SDK
    participant AVATAR as 3D数字人

    U->>APP: 提问:这个方案适合哪些行业?
    APP->>LLM: 发送问题与展厅上下文
    LLM->>API: 查询产品资料 / 案例库
    API-->>LLM: 返回行业案例
    LLM-->>APP: 生成讲解内容与展示指令
    APP->>SDK: 发送文本 / SSML / Widget事件
    SDK->>AVATAR: 生成语音、口型、表情、动作
    AVATAR-->>U: 自然讲解并展示资料
    SDK-->>APP: 返回播放状态与事件回调

这个 Demo 的重点不是“数字人说了一段话”,而是完成了一整套服务链路:

用户提问;

  • LLM 理解问题;
  • 业务系统补充资料;
  • 星云 SDK 驱动数字人表达;
  • 屏幕同步展示图片、字幕或视频;
  • 播放状态和用户反馈继续回到 Agent。

这才是终端 Agent 和传统数字人的本质区别。

五、为什么说这是“架构升级”,不是“功能升级”

功能升级,是多加一个按钮、多接一个接口、多做一个动作。 架构升级,是让不同能力之间形成稳定协同。

传统数字人更像内容播放器:

flowchart LR
    A[输入文案] --> B[生成语音或视频]
    B --> C[播放展示]

具身 Agent 更像实时服务系统:

flowchart LR
    A[用户实时输入] --> B[LLM理解]
    B --> C[业务API调用]
    C --> D[语音 / 表情 / 动作生成]
    D --> E[数字人实时表达]
    E --> F[状态回调]
    F --> B

前者是“播内容”,后者是“做服务”。

这也是文章最需要打出来的差异点:

传统数字人解决的是展示问题,具身 Agent 解决的是服务问题。

星云的意义不只是让数字人更好看、更会说,而是让数字人从“屏幕播放器”升级成“AI 服务终端”。

六、场景落地:存量屏幕不换硬件,也能升级为 AI 服务入口

星云 FAQ 提到,实时驱动 SDK 支持 Android、iOS、鸿蒙等主流操作系统,兼容 Web 端与应用端 SDK,可把 Web、App、小程序从传统 UI 交互升级为具身数字人交互。

这让它的落地逻辑非常清楚: 不是让企业重新造一套硬件,而是让已有屏幕、已有应用、已有业务系统,升级成 AI 服务入口。

1. 政务大厅

把自助终端升级为 AI 导办员。 用户不用再一层层点菜单,而是直接问:“办理营业执照需要什么材料?” Agent 可以理解问题、调用知识库、语音讲解,并在屏幕上展示材料清单。

2. 企业展厅

把展示屏升级为 AI 讲解员。 不再循环播放固定宣传片,而是根据观众问题实时讲解产品、案例和方案。

3. 商场导购

把导购屏升级为 AI 销售助理。 用户可以询问商品位置、搭配建议、优惠信息,Agent 不仅回答,还能同步展示图片、路线和推荐内容。

4. 教育培训

把课程播放器升级为 AI 培训老师。 它不是只播放课件,而是可以根据学员问题补充解释,形成更自然的学习互动。

这些场景的共同点是: 终端不是缺一个聊天框,而是缺一个能理解、能表达、能执行、能持续服务的 AI 角色。

七、开发者视角:星云真正降低的是具身 Agent 的工程复杂度

对开发者来说,做 Agent 最简单的部分反而是调用 LLM。 真正难的是把 Agent 放到终端里,让它稳定、自然、低延迟地跑起来。

星云 SDK 文档中提供了实例创建、App ID、App Secret、服务接口、硬件加速、Widget 事件、网络状态、SDK 状态、语音状态等配置和回调能力。

这说明它不是一个单纯播放器,而是把终端交互中最麻烦的具身表达、状态监听和事件联动封装了出来。

一个开发者更关心的问题是:

  • 我能不能快速接入?
  • 能不能接自己的 LLM?
  • 能不能控制人设和 Prompt?
  • 能不能接业务 API?
  • 能不能跨 Web、App、智能屏部署?
  • 能不能监听状态并做业务联动?

星云 FAQ 中也明确提到,星云数字人驱动本身不提供大模型能力,但可以接入第三方大模型,接入时可以设置提示词和人设。

这对开发者反而是一个灵活点:

星云不是替代你的 Agent 编排层,而是补齐终端 Agent 最难做的具身表达层。

八、最终判断:终端 Agent 的竞争,会从“模型能力”转向“链路完整度”

过去大家比的是模型会不会说。

接下来,真正的竞争会变成:

  • 谁能把 AI 接进真实业务?

  • 谁能让 AI 在终端自然表达?

  • 谁能让用户和 AI 连续互动?

  • 谁能把理解、表达、执行、反馈做成闭环?

所以终端 Agent 的下一步,不是继续堆功能,而是打通链路。

flowchart LR
    A[理解<br/>LLM] --> B[表达<br/>TTS / 口型 / 表情 / 动作]
    B --> C[执行<br/>业务API / 设备 / 流程]
    C --> D[反馈<br/>状态 / 用户行为 / 数据]
    D --> A

当这条链路跑通,AI 才不只是一个会回答问题的模型,而是一个真正能够进入终端、服务用户、创造业务价值的智能体。

接下里,我直接依托官网带大家直接进行一次驱动应用创建实操:

具体相关步骤实操如下:

  • 第一步:设置虚拟人角色、音色、表演风格,获取App ID、App Secret

最终效果,你将会得到你所创建的博客数字角色。

  • 第二步:可以直接通过App ID、App Secret创建代码实例

JS接入相关代码如下:

const LiteSDK = new XmovAvatar({
  containerId: '#sdk',
  appId: 'your_appid',
	// 您在魔珐星云平台建立的实时驱动应用的appid  
  appSecret: 'your_appsecret',
  // 您在魔珐星云平台建立的实时驱动应用的appsecret 
  gatewayServer: 'https://nebula-agent.xingyun3d.com/user/v1/ttsa/session',
  // 自定义渲染器,传递该方法,所有事件sdk均返回,由该方法定义所以类型事件的实现逻辑
  headers: {
    'Authorization': '888jn',
  },
  //自定义请求头
  hardwareAcceleration: "prefer-hardware", // 开启硬件加速
  // 自定义渲染器,传递该方法,所有事件sdk均返回,由该方法定义所以类型事件的实现逻辑
  onWidgetEvent(data) {
    // 处理widget事件
    console.log('Widget事件:', data)
  },
  // 代理渲染器,sdk默认支持subtitle_on、subtitle_off和widget_pic事件。通过代理,
  // 可以修改默认事件,业务侧也可实现各种其他事件。
  proxyWidget: {
    "widget_slideshow": (data: any) => {
      console.log("widget_slideshow", data);
    },
    "widget_video": (data: any) => {
      console.log("widget_video", data);
    },
  },
  onNetworkInfo(networkInfo) {
    console.log('networkInfo:', networkInfo)
  },
  onMessage(message) {
    console.log('SDK message:', message);
  },
  onStateChange(state: string) {
    console.log('SDK State Change:', state);
  },
  onStatusChange(status) {
    console.log('SDK Status Change:', status);
  },
  onStateRenderChange(state: string, duration: number) {
    console.log('SDK State Change Render:', state, duration);
  },
  onVoiceStateChange(status:string) {
      console.log("sdk voice status", status);
  },
  enableLogger: false, // 不展示sdk log,默认为false
})
  • 第三步:初始化连接房间

初始化:

  • 第四步:驱动数字人说话

speak:控制虚拟人说话。

speak(ssml: string, is_start: boolean, is_end: boolean): void

参数说明:

ssml: 可以直接传入需要数字人说的内容,也可以传入SSML格式的标记语言用以指定数字人做出KA动作,详见进阶接入。

以下为非流式调用的示例说明:

speak("欢迎使用魔珐星云", is_start = true, is_end  = true)
  • 第五步:销毁实例

destroy:销毁SDK实例,断开连接。

destroy(): void

结语

如果用一句话总结这次架构升级:

终端 Agent 的价值,不在于接入了多少功能,而在于能否把“大模型的大脑”和“数字人的身体”真正连接起来。

魔珐星云提供的,正是这条连接路径。

它让 AI 从文本回答走向多模态表达,从单次问答走向连续交互,从展示工具走向服务终端。

所以,真正的终端 Agent,不是一个更聪明的聊天框,也不是一个更好看的数字人。

它应该是一个能理解、能表达、能执行、能反馈的具身智能系统。

而这,才是 AI 屏幕交互真正进入下一阶段的开始。

官方地址:xingyun3d.com?utm_campaign=daily&utm_source=jixinghuiKoc48

-End-