AI 绘画转发后端 · n8n 工作流实践

前言

我的 AI 绘画小程序需要对接多家厂商的 API。随着厂商和模型的增多,后端转发代码出现了以下问题:

  • 请求方式不统一(同步 / 异步)
  • 参数差异大(不同厂商的签名、模型 ID 等)
  • 维护成本高(每新增一家厂商都要改代码)

为了解决这些痛点,我尝试使用 n8n 工作流来统一转发请求,边写边实践,记录下整个搭建过程与关键技巧。


用到的资源

资源 说明 备注
服务器 腾讯云 CodeBuddy(白嫖的 1 个月实例)lighthouse 也可以换成其他云厂商
AI 编程平台 CodeBuddy(同上) 支持 SSH
n8n 镜像 找的一个中文版,有企业版的环境变量功能

如果没有轻量服务器的话可以参加这个活动,https://cloud.tencent.com/act/pro/codebuddy-lighthouse 免费领取一台2C2G实例进行测试

服务器安装n8n

  • 服务器:这里用codebuddy白嫖的一个月主机 网速有点慢

image.png

  • 重置密码用于登录

image.png

  • 使用codebuddy链接服务器:

image.png

  • 可以用codebuddy查询信息,因为之前写一般草稿丢了,所以截图不太正确。

image.png

image.png

  • 我已经执行了docker挂载卷和n8n容器的生成
sudo docker volume create n8n_data
sudo docker run -it  --name n8n -p 5678:5678 -e N8N_SECURE_COOKIE=false -e N8N_RELEASE_TYPE=stable -e N8N_DIAGNOSTICS_ENABLED=false -e N8N_VERSION_NOTIFICATIONS_ENABLED=false -e N8N_HIDE_USAGE_PAGE=true -e N8N_LICENSE_AUTO_RENEW_ENABLED=false -e N8N_RUNNERS_ENABLED=true -e NODE_ENV=development -e N8N_DEFAULT_LOCALE=zh-CN -e N8N_ENTERPRISE_MOCK=true -v n8n_data:/home/node/.n8n ghcr.io/deluxebear/n8n:chs

image.png

  • 如果关了可以start启动

image.png

  • 访问,codebuddy自带代理,不用需要打开防火墙端口。

image.png
image.png
##创建工作流
1.注册登录
image.png

image.png

  • 创建一个例子工作流,第一个节点是对话节点,后面的是agent,agent可以配置大模型或者记忆用的储存配置,也可以配置mcp类的工具。

image.png

2.配置模型

image.png

  • 这里我用的是硅基流动的key,链接

image.png

  • 随便配置一个免费的模型试试,直接显示了欢迎n8n是因为agent里面配置了系统提示词,可以自己修改。

image.png
image.png
image.png
image.png

调用文生图api

  • 首先找到要对接的模式api规范

image.png

image.png

  • n8n可以直接调用http请求,所以找到http的规范示例,可以看到这个模型是异步的,一步生成,一步查询结果。
    image.png

  • http节点支持curl导入,自动导入了,这几个地方需要修改可以设置为入参,key可以设置为环境变量。
    image.png

  • 测试下能不能调通
    image.png
    image.png
    image.png

  • 右键可以重命名

image.png

增加循环节点

  • 直接等待不太好,我们可以判断查结果,判断生成以后再调用图片获取

image.png

  • 成功的进行下一步,不成功再次查询,加个五秒等待

image.png
image.png

  • 也可以用switch 更多的判断这样失败的不用一直查询

image.png
image.png
image.png

  • 测试失败场景,生成请求时候直接失败了 所以也优化下。
    image.png
    image.png
    image.png

优化节点

  • 修改对话为图片文字描述内容

image.png

image.png

image.png

  • 把url和key存为变量。
    image.png

  • 使用变量

image.png
image.png

总结

  • 工作流模式还是很方便的,作为后端处理部分,有好玩的工作流可以一起分享下。其他的ai接口差不多的,可以再加个入口,用户选择了模型和厂商判断调用哪个工作流,最后处理生成图片返回给用户。
  • #CodeBuddyIDE
Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐