想在晶晨芯片上搭一个Agent
先要解决哪些事?
想让晶晨设备上的 AI 不只是回答问题,还能理解图片、处理语音、调用工具完成任务?
Amlogic Agent Server 是面向晶晨平台的本地 AI 模型服务。它提供 OpenAI 兼容接口,连接设备上的大语言模型、多模态模型和语音模型,帮助开发者更方便地搭建端侧 Agent 应用。
开发者可以使用熟悉的 API 接入本地模型,也可以对接 DeepSeek Harness、PicoClaw、LangChain 等 Agent 框架,在晶晨设备上探索语音助手、会议摘要、智能购物和照片搜索等应用。
一、Amlogic Agent Server 能做什么?
搭建一个 Agent 应用,除了运行模型,还需要考虑接口接入、工具调用、多轮对话、语音处理等问题。Amlogic Agent Server 将这些常用能力整合到统一的服务中:兼容 OpenAI API
通过熟悉的接口和客户端调用本地模型,方便接入现有应用与 Agent 框架。
利用晶晨设备运行 AI 模型
结合 Amlogic LLMSDK 和设备侧运行时,提供本地 LLM、VLM 和语音模型服务。
支持工具调用
配合 Agent 框架调用外部工具或技能,完成查询、文件处理等任务。
支持多轮对话
在满足复用条件时复用历史模型状态,减少重复处理上下文的开销。
本地优先,云端可选
可按配置接入云端模型,满足更复杂的任务需求。端云路由功能目前处于开发测试阶段。
二、从用户请求到任务完成
在端侧 Agent 系统中,Agent 框架负责组织任务和执行工具,Amlogic Agent Server 负责提供模型服务。
当用户提出需求后,Agent 框架会将请求发送给 Amlogic Agent Server,由本地模型生成回答或工具调用请求。如果任务需要查询信息、读取文件或执行其他操作,Agent 框架可以调用相应的技能和工具,再结合结果生成最终回答。
以设备端语音助手为例,一个典型流程可以是:
用户通过麦克风提出问题。
语音模型将声音转写成文字。
Agent 将文字请求发送给本地大语言模型。
如果任务需要外部信息,Agent 调用对应工具或技能。
Agent 结合模型和工具的结果,返回最终回答。
通过组合本地模型与不同工具,开发者可以在同一套基础服务上扩展不同的 Agent 应用。
三、为什么说它“方便搭建”:接口直接兼容 OpenAI
Amlogic Agent Server 不绑定特定 Agent 框架。任何能够调用 OpenAI 兼容 API 的应用,都可以把它作为模型端点接入。
核心接口保持 OpenAI 形态:
例如,Agent 应用可以通过 /v1/chat/completions 发送用户消息和可用工具描述。模型返回工具调用请求后,实际工具由 Agent Runtime 或应用执行;执行结果再提交给模型,生成最终回答。
这种方式可以让模型服务和任务执行各司其职,也方便开发者在已有 Agent 应用中接入晶晨设备上的模型。
四、Agent 常用能力,服务层已经备好
1. 工具/函数调用闭环
当用户请求需要查询外部信息或执行操作时,Agent 可以向模型提供可用工具的描述。模型生成工具调用请求后,应用侧负责执行工具并返回结果。
例如,一个天气助手可以按以下流程工作:
用户询问天气 → 模型生成天气工具调用请求 → Agent 执行查询 → 模型结合查询结果回答。
服务支持处理 OpenAI 兼容的函数 Schema,并返回 tool_calls,供 Agent Runtime 继续执行。
2. KV Cache 多轮复用
连续对话时,服务会识别可以安全延续的历史状态,并在满足条件时复用模型状态,仅处理新增消息。
当对话被替换、重排,或历史状态无法安全延续时,服务会回退到完整提示处理。通过减少重复处理历史上下文,可降低部分多轮场景的处理开销。
3. 多模态理解
选择受支持的 VLM 后,应用可以通过 image_url 传入图片,让模型结合图像和文字进行理解。
例如,开发者可以基于图像理解能力探索照片描述、图片问答等应用。具体效果与支持范围取决于所选模型、投影层及本地运行时。
4. 设备端语音转写
服务提供 /v1/audio/transcriptions 接口,支持使用 Whisper、SenseVoice 等模型将音频转换为文字。
转写结果可用于语音助手、会议摘要和语音输入等场景。接口支持指定语言或使用自动语言识别;可用语言与效果取决于所选模型。
5. 模板、采样与结构化输出
服务支持 Jinja2 对话模板,并提供温度、Top-K、Top-P 等采样参数。对于需要固定输出格式的场景,也支持使用 GBNF 语法约束模型输出。
这些能力可用于调整对话生成方式,并帮助工具调用或其他需要机器解析的应用获得更规整的结果。
五、本地优先,云端可选:端云路由(开发测试中)
对于短问答、已知技能和适合本地模型处理的任务,开发者可以优先使用设备上的模型。当任务需要更长上下文或更强模型能力时,也可以配置云端服务,按路由策略将部分请求转发到云端。
端云路由采用本地优先策略,在生成开始前完成执行判断:
1. force_upstream=true时,直接路由到配置的upstream API;
2. 估算上下文用量接近本地安全阈值(默认策略约75%)时,在上下文耗尽前转云端;
3. 意图/技能路由判断为简单任务或受支持本地技能时,由本地Amlogic模型执行;
4. 复杂、长上下文、不受支持的多模态或不确定请求,路由至云端 LLM
5. 未配置upstream时,请求保持本地处理,并按常规返回本地能力或上下文错误。
对 Agent 客户端来说,无论请求由本地还是云端处理,都可以通过同一套兼容接口获取响应。六、快速开始:运行第一个本地模型
1. 准备设备与软件环境在开始之前,请确认设备、系统和 SDK 满足要求,并按照仓库说明安装服务所需环境。
完整安装说明请查看:https://github.com/Amlogic-NN/amlogic-agent-server
2. bootstrap 列出并下载模型
服务内置模型引导工具,开发者可以先列出仓库可用模型,再按需下载:
目前仓库提供的模型类型覆盖:
- LLM:如Qwen3-0.6B、Qwen3-4B-Instruct-2507;
- VLM:如Qwen3-VL-2B-Instruct,支持图像输入;
- ASR:whisper-large-v3-turbo、sensevoice-small。
模型文件进入独立models/<dir>/目录,权重、附属文件与model.json一并就位,config/server.yaml也会自动追加对应模型目录。模型索引默认来自ModelScope,也可切换到HuggingFace镜像或本地离线目录。
3. 把服务跑起来创建Python3环境并安装agent server:
配置服务,并启动agent server:
测试LLM访问节点:
在Agent Application中按以下值配置:
Python 侧直接使用openai官方包即可完成基础对话、流式输出与工具调用;JavaScript / TypeScript侧可使用openai npm包,调用方式保持一致。
Agent server的安装视频:
[视频] 请前往原文观看Agent server对接到Deepseek Harness的运行示例:
[视频] 请前往原文观看七、可以先从哪些 Agent 场景试起
仓库列出的应用类型包括:
- 垂直Agent:会议摘要、购物助手、AI NAS/照片搜索、客服助手、文档助手;
- 通用Agent:个人助手、聊天应用、语音助手、多工具自动化。
结合 Amlogic AI 开发者门户,Agent Client Integration 文档已覆盖PicoClaw、DeepSeek Harness与LangChain的接入方式;AI NAS、AI 购物、会议纪要、家庭语音助手、OCR 翻译等参考场景目前标注为规划中,将逐步开放。
结语:从一个模型开始,把 Agent 跑起来
从本地对话到工具调用,从语音转写到图像理解,Amlogic Agent Server 为晶晨设备上的 Agent 应用提供统一的模型服务入口。
开发者可以先选择一个适合设备资源的模型,跑通一次本地对话,再接入 Agent 框架和工具,逐步构建面向实际场景的应用。
相关资源:
- Agent Server 仓库:
https://github.com/Amlogic-NN/amlogic-agent-server
- Amlogic AI 开发者门户:
https://amlogic-nn.github.io/
- GitHub 组织:
https://github.com/Amlogic-NN
- Hugging Face 模型:
https://huggingface.co/Amlogic-NN/amlnn-adla-models
- ModelScope 模型:
https://www.modelscope.cn/models/Amlogic/amlnn-adla-models
股票
板块
用户
资讯
评论 (0)