002-文档
1. 介绍
案例应用场景:
自动化批量生成卡通头像
- 抓取数据:
-
- 直接放在Notion,无抓取
- 处理数据:
-
- 图像处理大模型
- 存放数据:
-
- 存放在云端图片库
- 存放在Notion中
2. 操作步骤
2.1. Notion中添加头像库
注意⚠️:解决不能在Make中发现新建的头像库的问题,如下操作
2.2. 配置Notion模块
2.3. 配置Flow的Repeater模块
注意⚠️:配置这个模块的作用是通过重复来控制生成图片的数量
2.4. HTTP模块
在这里我们使用的是下面这个模块:
建立Replicate网站的账号,获取API
可以去官网Doc中搜索关键字predictions
curl -s -X POST -H 'Prefer: wait' \
-d '{"version": "764d4827ea159608a07cdde8ddf1c6000019627515eb02b6b449695fd547e5ef", "input": {"text": "Alice"}}' \
-H "Authorization: Bearer $REPLICATE_API_TOKEN" \
-H 'Content-Type: application/json' \
https://api.replicate.com/v1/predictions
{
"version": "764d4827ea159608a07cdde8ddf1c6000019627515eb02b6b449695fd547e5ef",
"input": {
"image": "{{1.properties_value.`头像`[].file.url}}",
"steps": 20,
"width": 1024,
"height": 1024,
"prompt": "a person",
"upscale": false,
"upscale_steps": 10,
"negative_prompt": "",
"prompt_strength": 4.5,
"ip_adapter_noise": 0.5,
"ip_adapter_weight": 0.2,
"instant_id_strength": 0.7
}
}
注意⚠️:创作过程有点时间,并且不会直接返回处理的结果,但Replicate官网提供了webhook的功能,
即图片昨晚会发送触发告诉Make,那就要重新做一条工作流,在这里用sleep模块等待处理结束,放在一个在工作流里面来讨论。
也可以用包头的wait来控制等待
curl --silent --show-error https://api.replicate.com/v1/predictions \
--request POST \
--header "Authorization: Bearer $REPLICATE_API_TOKEN" \
--header "Content-Type: application/json" \
--header "Prefer: wait" \
--data @- <<-EOM
{
"version": "764d4827ea159608a07cdde8ddf1c6000019627515eb02b6b449695fd547e5ef",
"input": {
"image": "https://replicate.delivery/pbxt/KU1AG0cit5nc3xIG1BBZ6DKkhunvvGsZXmEZzuW9HPYVkj8o/MTk4MTczMTkzNzI1Mjg5NjYy.webp",
"prompt": "arnold",
"prompt_strength": 4.5,
"instant_id_strength": 0.7
}
}
EOM
2.5. 获取图片HTTP模块
2.6. 更改状态Notion模块
注意⚠️:状态更改放在这里是为了节省Make的使用次数,如果等更新好图片后来更改状态,就会出现每生成一次就运行一次这个模块,浪费Make的使用次数
2.7. 迭代器模块
注意⚠️:因为之前获取图片的模块中,获取的字段为集合,如下所示,可以使用迭代器的map函数,转成JSON
2.8. 获取图片HTTP模块和imgBB模块
说明:因为大模型生成的图片连接是有时间限制(1小时),所以我们最好把生成的图片上传到imgBB上保存,方便后续使用
注意⚠️:imgBB只能接受二进制的文件,所以可以使用HTTP的get file模块获取二进制文件的图片,再上传