1 概述
1.1 背景介绍
华为云Astro Zero是一款低代码/零代码应用开发平台,主要面向企业用户提供快速构建应用程序的能力,无需或仅需少量编码即可实现业务数字化。
1.2 适用对象
• 企业 • 个人开发者 • 高校学生
1.3 案例时间
本案例总时长预计30分钟。
2 操作步骤
2.1 任务一 创建并发布Al Agent。
步骤 1 登录开发者空间 点击此处。

步骤 2 选择左侧开发平台-开发-Al Agent,选择右侧创建Agent。 
步骤 3 设置基础信息(名称为:Agent,简介为:"专为高效任务处理而设计,集成多样化功能,助您轻松应对各类挑战,提升工作与生活效率。"),选择模型(DeepSeek-V3-32K),设置角色设定信息("#角色设定 作为一个产品宣传的创作助手,你的任务是协助产品和营销创作关于产品的宣传文案,提供创作灵感。
组件能力
你具备智能生成产品宣传文案,提供创作灵感和营销构思的能力。
需求与限制
输出内容的风格要求符合产品的风格,具有吸引力和想象力。"),将记忆功能中的片段记忆打开,点击右上角发布按钮。 
步骤 4 点击"获取API KEY"。

新增平台API Key
创建成功后,请立即下载您的API Key并妥善保存
步骤 5 点击左侧菜单栏"我的Agent",找到刚才创建的Agent点击操作栏"发布Agent"返回步骤3的发布页面;
选择发布渠道为API,设置发布密钥为刚才下载的API Key,点击发布。

步骤 6 发布成功后我们会得到发布成功的API地址(复制保存),点击API操作指引可以阅读了解该API的调用参数为query和memory ,调用方式为Post方法,鉴权方式为消息头鉴权。


2.2 任务二 AstroChat应用项目初始化及配置
步骤 1 回到开发者空间,选择低代码应用(没有资源的根据页面步骤领取开通免费版资源即可),新建低代码应用。
步骤 2 选择标准应用,点击确定。
步骤 3 填写"新建空白应用"的基本信息:设置"标签"为"AstroChat","名称"为"AstroChat",单击"确认"按钮。

2.3 任务三 创建连接器和编排对接已发布的Al Agent
步骤 1 进入刚才创建的应用中,点击左侧集成>连接器实例>自定义连接器,击右上角加号,创建自定义连接器,输入标签名和名称为ds(可自定义);点击保存。 

步骤 2 点击刚创建的连接器,选择右侧栏动作按钮,点击新建
步骤 3 输入标签和名称,URL为步骤4中获取的api地址,方法选择post,内容类型选择application/json,返回类型选择text/event-stream超时时间可自定义,点击下一步。
步骤 4 消息头入参这步,直接点击右侧删除按钮,进入下一步。
步骤 5 输入参数: 第一行query,query,消息体,字符串,必填。第二行memory,memory,消息体,键值对,必填,集合。点击下一步
步骤 6 创建输出参数。消息体格式修改为"值",数据类型选择键值对,保存。
步骤 7 点击认证信息,新建,输入名称和标签 
步骤 8 下拉选择鉴权设置,鉴权协议选择简单消息头,键为Authorization,值为前面步骤4获取的"Bearer+ApiKey(任务一中保存的ApiKey)的值",二者之间需要有空格,假设我的ApiKey的值是abcdefg,那么此处我需要填写的内容则为Bearer abcdefg(注意空格),点击保存
步骤 9 选择动作栏,点击启动
步骤 10 点击左侧导航栏逻辑>编排,点击加号,新建编排,输入标签名和名称(可自定义)
步骤 11 点击右侧基本信息,点击右上角全局上下文,选择变量,添加variable0和messages(勾选数组)俩个变量,数据类型皆为任意;再添加input变量,类型为文本。
步骤 12 点击左侧菜单栏"连接器",打开自定义文件夹,点击刚才创建的自定义连接器,选择动作拉取入页面。

步骤 13 点击开始图元,点击右侧参数按钮,将messages和input参数拖拽进入参位,variable0拖拽进出参位
步骤 14 点击连接器图元,点击右侧连接器图标按钮,选择动作。
步骤 15 将messages和input参数拖拽进入参位,variable0拖拽进出参位
步骤 16 点击左上角保存,启用

2.4 任务四 创建AstroChat对话界面
步骤 1 在应用左侧导航栏,点击界面,找到页面栏+号,创建页面,设置标签名称(可自定义)。
步骤 2 在基本组件中最底部,将智能助手拖拽至页面中,得到如下界面。
步骤 3 点击智能助手组件,点击右侧菜单栏数据绑定设置按钮,点击新建模型,输入模型名称message,来源选择自定义,一直点击下一步,直至确定。
再次点击数据绑定,将message绑定。
步骤 4 点击右侧菜单栏基本属性,可根据自身需要设置品牌名,logo,背景图,对话头像等等内容
步骤 5 点击右侧菜单栏事件,选择发送事件,新建动作编写自定义脚本
将以下代码复制粘贴进脚本页面:其中第15行var _flow = context.flow("liyan__agent");这里的liyan_agent需改为用户自己之前步骤创建的编排名称。
js
// 当前组件
const _component = context.$component.current;
//创建数组存储组件内对话记录
let conversationHistory =[];
conversationHistory = _component.getMessages();
//将组件内对话记录转化成deepseek需要的参数格式
const formattedHistory = conversationHistory.length === 0
? []
: conversationHistory.map((message, index) => ({
role: index % 2 === 0 ? 'user' : 'assistant',
content: message.content
}));
// 初始化Flow
var _flow = context.flow("liyan__agent");//这里为创建的编排名称
// 设置Flow版本号
_flow.version("0.0.1");
// 运行Flow编排调用deepseek
var input = conversationHistory[conversationHistory.length-1];
_flow.run({input, messages: formattedHistory}).then(async resp => {
console.log(resp, 111)
// 创建一个可读流
const reader = resp.body.getReader();
const decoder = new TextDecoder();
//维护截断字符串
let truncateStr = '';
let msg = '';
while (true) {
const { done, value } = await reader.read();
if (done) {
_component.closeLoading();
console.log('流已结束');
return;
}
const chunk = decoder.decode(value);
const list = chunk.split('\n').filter(n => n);
console.log(list, 333);
list.forEach(async item => {
if (truncateStr) {
item = truncateStr + item;
truncateStr = '';
}
console.log(item)
console.log(truncateStr)
try {
const obj = JSON.parse(item.replace('data: ', ''));
console.log(obj);
const newMsg = obj.data.content;
if (newMsg) {
msg += newMsg;
$model.ref('message').setData(msg)
console.log("xxxxxxxxxxxxxxxxxxxxx", msg)
}
} catch (err) {
// 部分流数据最后一条被截断,此时保留该数据,与下一个数据拼接处理
truncateStr = item;
}
})
}
})
步骤 6 点击保存,预览,进入预览页面,发送对话进行测试验证。

步骤 7 完成
2.5 任务五 应用设置
步骤 1 应用导航设置。 1. 在应用导航栏中,单击左侧"开始"选项,单击"应用导航设置"。
2. 在"导航设置"页面,单击"新建"按钮,设置菜单名称为"AstaroChat助手"、唯一标识为"AstaroChat",(命名皆可自定义)在选择页面弹出框中,选择"chat"(为之前步骤创建的对话界面名称),单击"确定"按钮,最后单击"保存"。 
步骤 2 预览整体应用。
----结束