需要Bot本身具备对文件处理的能力才可以进行正常返回,通常配合相关插件使用
Step 1:
调用文件上传接口:https://www.coze.cn/docs/developer_guides/upload_files
curl --location 'https://api.coze.cn/v1/files/upload' \
--header 'Authorization: Bearer pat_kALwAJpZwpxozC09ENQ0xxxxxxxx' \
--form 'file=@"postman-cloud:///1ef77612-0d61-49d0-95e6-93f31b2f1d98"'
对line 3进行补充解释:
- --form 参数用于指定发送表单数据(multipart/form-data)。这个格式允许你上传文件和其他字段。
- file=@"/test/1120.jpeg" 部分的作用是将 /test/1120.jpeg 这个文件以字段名 file 上传。
- file= 指定表单字段的名称为 file。
- @"/test/1120.jpeg" 表示从路径 "/test/1120.jpeg" 加载文件并上传。
一般情况,该路径需要一个可供互联网直接访问的路径,本次代码中是使用了postman的服务器进行文件上传
返回内容
{
"code": 0,
"data": {
"bytes": 167641,
"created_at": 1731568133,
"file_name": "20240xxxxxx.jpeg",
"id": "743702780xxxxxxxx"
},
"msg": ""
}
Step 2:
在chat接口中,传入返回内容中的file_id等相关信息
此处的content内容需要做序列化处理
原格式:
[ { "type": "text", "text": "请帮我分析这张图片的内容" }, { "type": "image", "file_id": "7437027806540103730" }]
序列化后(可使用在线工具处理):
[{"type":"text","text":"请帮我分析这张图片的内容"},{"type":"image","file_id":"7437027806540103730"}]
返回结果