大模型智能体之Coze智能体发型推荐官
大约 5 分钟大模型智能体大模型智能体
1. 发型推荐官
1. 应用创建和界面设计
前言
定义
发型推荐官是一款智能体应用,它可以根据用户提供的照片,自动识别脸型,推荐适合的发型。如下👇
1. 创建应用


2. 设计用户界面


1.首页
首页展示一张说明图,和一个上传图片的组件和一个开始推荐的按钮 如上图左边 ☝️ 用到的组件:👇

内部的事件,等工作流设计好后,再补充 👈
2. 推荐发型页面(如上图右侧 )
这里用到了 文本组件和图文列表组件

列表内部的图片和文字属性设置,等工作流设计完成后,再补充 👈
文字区域:
检测到你的脸型是 {{工作流返回的数据,等下填写 }},为你推荐以下发型至此,我们的界面设计就完成了,下面开始设计工作流。

2.设计工作流
前言
定义

工作流是一个应用的核心,它定义了应用的逻辑和流程。比如此应用,输入一张图片,需要进行脸型检测,然后根据脸型检测的结果,推荐发型,合成图片,最后返回发型图片和说明,这一系列的操作,就是工作流的逻辑。
1. 开始节点:输入用户照片, 输入变量img,类型Image,输出其实是一个地址

2. 大模型节点:输入input为 img,输出json格式数据
# 角色
你是一位专业且时尚的发型推荐师,不仅能精准判断用户的脸型,还能结合当下流行趋势为用户推荐最适合的发型。同时,你可以将用户提供的图片修改成对应发型的效果,让用户直观感受新发型的魅力。
## 技能
### 技能 1: 判断脸型和性别并推荐发型
1. 当用户提供图片时,优先判断用户性别
2. 仔细观察图片中的人物脸型特征,结合当前流行趋势进行分析。
2. 根据性别、脸型、和流行趋势,推荐对应性别的4款发型,并详细说明推荐理由。
===回复示例===
{
"male":"<性别>"
"face": "<用户脸型描述,直接输出脸型>",
"hairstyle": "< 发型名称 >",
"reasons": "< 解释为什么这个发型适合该脸型以及符合当下流行趋势 >"
}
===示例结束===
## 限制:
- 注意优先判断用户性别
- 只专注于发型推荐和图片修改,拒绝回答与发型无关的话题。
- 所输出的内容必须按照给定的格式进行组织,不能偏离框架要求。
- 推荐理由简洁明了,不超过 100 字。这个节点输出一个数组 ,里面包含大模型推荐的多个发型,所以这里用循环节点 ,将数组里的发型都输出出来

3. 批处理节点,通过循环节点输出,将推荐的每个发型结合原图输出一张合成图片


批处理体中,处理逻辑如下:
3.1 代码节点

代码的作用是拼接提示词: 将图片中的人物发型修改为男性板寸头
// 在这里,您可以通过 ‘params’ 获取节点中的输入变量,并通过 'ret' 输出结果
async function main({ params }: Args): Promise<Output> {
// 构建输出对象
const ret = {
"key0": "将图片中的人物发型修改为" + params.input1 + params.input, // 拼接两次入参 input 的值
};
return ret;
}3.2 大模型节点
结合上面的提示词以及用户的图片,大模型节点会输出一张图片,图片中的人物发型被修改为板寸头



为了防止脸部被修改,这里加了换脸节点,保证脸部不变

3.3 代码节点
这个代码节点是整合数据,统一输出json格式:
{
"data": "https://s.coze.cn/t/Wm4ua45D__w/",
"hairstyle": "短碎发",
"reasons": "短碎发可增加脸部层次感,修饰硬朗轮廓,符合当下简约干练流行风,适合方形脸男性。"
}
代码:
async function main({ params }: Args): Promise<Output> {
// 构建输出对象
const ret = {
"key": { // 输出一个Object
"hairstyle": params.hairstyle,
"reasons": params.reasons,
"img": params.data,
},
};
return ret;
}4. 结束节点,将批处理节点输出连接到结束节点


5. 测试工作流

上传图片后,可以看到大模型节点输出的是一个数组,包含了4个发型说明和照片

3. 测试并发布应用
前言
定义
至此,工作流和页面都设计完成了,下面开始配置工作流到应用中,并在页面上匹配上属性,然后测试和发布应用。
1. 在应用设置页面,添加hairstyle 工作流

2.在首页的开始推荐按钮上,绑定事件


3. 在列表页上,配置属性发型属性,和列表图片和文字属性


