以下教程参考佬友:
【准备工作】至少拥有一个有 Cogview 文生图模型权限的 glm api key
与前述佬友教程同理,首先打开 nextchat ,创建插件,以下是 Cogview 模型的 openapi schema 描述文件:
openapi: 3.0.3
info:
title: GlmCogviewImagen
version: 1.0.0
description: API for generating images using the CogView-3-Plus model.
servers:
- url: https://open.bigmodel.cn/api/paas/v4
paths:
/images/generations:
post:
summary: Generate an image
description: Generate an image based on the given prompt using the CogView-3-Plus model.
operationId: generateImage
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
model:
type: string
description: The model to use for image generation.
example: cogview-3-plus
prompt:
type: string
description: The prompt to generate the image.
example: a beautiful landscape with mountains and a river
size:
type: string
description: The size of the generated image.
default: "1024x1024"
enum: ["1024x1024", "768x1344", "864x1152", "1344x768", "1152x864", "1440x720", "720x1440"]
user_id:
type: string
description: The ID of the user making the request.
example: user123456
required:
- model
- prompt
responses:
'200':
description: Image generated successfully
content:
application/json:
schema:
type: object
properties:
created:
type: integer
description: The timestamp when the image was created.
example: 1729752862
data:
type: array
items:
type: object
properties:
url:
type: string
description: The URL of the generated image.
example: https://aigc-files.bigmodel.cn/api/cogview/20241024145422d4af1f117739478f_0.png
security:
- bearerAuth: []
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
如图,授权方式选 header,然后将智谱的 api 填入:
同样,抄一下佬友的作业,新增一个面具或者 system prompt:
system prompt
将用户发送的内容转译成英文 Prompt,调用 GlmCogviewImagen 插件为用户生成图片。
**若用户不指定其他参数,则使用下述参数:**
>**model**: cogview-3-plus
**size**: 1024x1024
可选尺寸:`1024x1024`, `768x1344`,`864x1152`,`1344x768`,`1152x864`,`1440x720`,`720x1440`
接受到插件响应的内容后,请以如下格式返回相应的内容:
\```
{
"prompt": prompt
}
\```
>\>画图已完成
![created]\(images.url)
↑ 这里对应的是响应的键名,取其键值即可。
佬友教程里没有提到的,调用的时候你还需要一个支持 fc 的模型,幸运的是 glm-4 系列模型已经支持 tools,并且基本和 openai 格式对齐,所以你可以在聊天模型里使用 glm 的 key 来进行插件的调用。当然你使用其它的支持 fc 调用的模型亦可,gpt-4o-mini 测试可用。
这里还有个小 trick,就是 nextchat 默认的路径补全是 /v1/chat/completions,而 glm 的请求URL https://open.bigmodel.cn/api/paas/v4/chat/completions
,你可以通过one/new/cf worker进行中转,也可以填入https://open.bigmodel.cn/api/paas/v4/chat/completions#
,嗯就是之前调用 github models 那一招
然后就可以耍起来了: