
通义千问1.5-1.8B-Chat-GPTQ-Int4 WebUI与ComfyUI工作流结合可视化AI应用构建最近在折腾AI应用的时候我发现了一个挺有意思的玩法把轻量级的聊天模型和ComfyUI这个可视化工具连起来用。你可能用过通义千问的WebUI来聊天也用过ComfyUI来画图但有没有想过让它们俩“手拉手”一起干活想象一下这个场景你画了一张图然后让AI自动帮你写一段精彩的描述文案或者反过来你输入一段简单的想法AI帮你把它扩展成一份详细的绘图指令直接喂给画图模型。这听起来是不是比单独用一个工具要高效得多今天我就来分享一下怎么把通义千问1.5-1.8B-Chat-GPTQ-Int4这个轻量又高效的模型通过API的方式变成一个ComfyUI工作流里的“智能节点”。这样一来你就能在可视化的画布上轻松搭建起属于你自己的多模态AI流水线了。1. 为什么要把聊天模型接入ComfyUI你可能已经习惯了在Web页面里和通义千问对话或者在ComfyUI里拖拽节点生成图片。把它们结合起来到底能带来什么不一样的价值首先最直观的就是自动化。以前你要完成“文生图再让AI描述这张图”这个流程得先在ComfyUI里生成图片保存下来再打开通义千问的WebUI上传图片等它生成描述。现在你只需要在ComfyUI里设计好一个工作流点一下“生成”后面所有步骤就自动串联完成了。省去了来回切换工具、手动搬运数据的麻烦。其次是创造力的增强。ComfyUI本身是一个强大的“编排”工具而通义千问模型是一个“理解与生成”工具。把它们结合就等于给编排工具加上了大脑。比如你可以让通义千问模型去分析一张图的风格、元素然后基于这个分析再去生成新的、风格匹配的绘图指令。这种循环反馈能激发出很多单一步骤想不到的创意。最后是门槛的降低。对于不熟悉代码的朋友来说通过API把模型能力封装成一个ComfyUI节点意味着复杂的逻辑被简化成了“连线”操作。你不用去写调用代码只需要关心输入是什么、输出要送到哪里大大降低了构建复杂AI应用的门槛。简单来说这么做的核心就是用可视化拼接实现智能自动化让112。2. 准备工作让通义千问模型“待命”在开始连线之前我们得先让通义千问模型准备好接受外部指令。这里的关键就是启动它的API服务。2.1 启动模型的API服务假设你已经按照之前的教程部署好了通义千问1.5-1.8B-Chat-GPTQ-Int4的WebUI。要让它的能力能被ComfyUI调用我们需要以API模式来启动它。通常在启动WebUI的命令中会有一个指定服务器端口和开启API的选项。一个典型的启动命令可能长这样python webui.py --api --port 7860这里的--api参数就是告诉程序“请打开API接口。”--port 7860则指定了服务运行的端口号。运行这个命令后你的模型服务就会在本地机器的7860端口上启动并提供一个标准的API端点。启动成功后你可以在浏览器访问http://127.0.0.1:7860/docs看看。如果能看到一个自动生成的API文档页面通常是Swagger或类似界面那就说明API服务已经成功开启了。这里面会列出所有可用的接口比如/v1/chat/completions这就是我们等下要用的聊天补全接口。2.2 理解API的调用方式模型服务跑起来了ComfyUI要怎么跟它“说话”呢它们需要通过HTTP请求来通信。简单来说ComfyUI的节点会向http://127.0.0.1:7860/v1/chat/completions这个地址发送一个POST请求。这个请求的“身体”body里需要包含一段JSON格式的数据告诉模型我们想干什么。一个最基本的请求结构如下{ model: qwen1.5-1.8b-chat-gptq-int4, messages: [ {role: user, content: 请描述这张图片的内容。} ], stream: false }model: 指定要使用哪个模型虽然服务端可能只有一个模型但最好指明。messages: 这是一个列表里面按顺序存放了对话历史。每一条消息都有role角色如“user”用户或“assistant”助手和content内容。我们通常只需要构造用户的提问。stream: 是否使用流式输出。为了在ComfyUI中处理方便我们先设为false即一次性返回全部结果。模型处理完后会返回一个JSON响应。我们最关心的部分在choices[0].message.content这个路径下里面就是模型生成的文本答案。搞清楚了怎么“呼叫”和“接收”我们就可以去ComfyUI里搭建桥梁了。3. 在ComfyUI中创建自定义API节点ComfyUI的强大之处在于其节点系统我们可以通过安装自定义节点来扩展功能。对于调用外部API社区已经有了一些非常优秀的节点让我们不用从零开始写代码。3.1 安装必要的自定义节点这里我推荐使用ComfyUI-Custom-Scripts或was-node-suite-comfyui这类节点包它们里面通常包含了用于发送HTTP请求的节点。你可以通过ComfyUI Manager如果你安装了的话来搜索和安装或者直接到GitHub上找到对应的仓库按照说明克隆到你的custom_nodes文件夹里。安装并重启ComfyUI后你应该能在节点列表里找到类似HTTP Request、API Call或Fetch Data from URL这样的节点。我们就要用这个节点来充当“信使”。3.2 配置API调用节点让我们从节点菜单中拖出一个HTTP请求节点具体名字可能因节点包而异。它的配置面板里通常需要填写以下几项URL: 这里填入我们模型的API端点地址http://127.0.0.1:7860/v1/chat/completionsMethod: 选择POST。Headers: 我们需要告诉服务器我们发送的是JSON数据。添加一个Header键为Content-Type值为application/json。Body/Data: 这是最关键的部分我们要在这里构造上面提到的JSON请求体。但是我们的提示词prompt可能是动态的比如来自前一个节点的输出。所以这里不能写死。这时候我们就需要用到ComfyUI的文本处理节点了。我们可以先用一个String节点或者Text Concatenate文本拼接节点来动态构造这个JSON字符串。假设我们有一个输入框节点让用户输入问题。我们可以这样连接用户输入节点 - 文本拼接节点拼接成完整的JSON字符串 - HTTP请求节点的Body输入。一个简单的文本拼接节点配置可能是这样的将固定部分和变量部分组合。 固定部分{model: qwen1.5-1.8b-chat-gptq-int4, messages: [{role: user, content: 变量部分{来自上一个节点的用户问题}固定结尾}], stream: false}3.3 解析API返回结果HTTP请求节点成功调用后会返回整个响应体通常是一个字符串。我们需要从这个JSON字符串里把模型生成的文本“挖”出来。这就需要另一个节点JSON ParseJSON解析节点。同样它可能存在于你安装的自定义节点包里。将HTTP请求节点的输出Response Text连接到JSON解析节点的输入。然后在JSON解析节点的“路径”Path或“键”Key字段里填入choices[0].message.content。这样这个节点就会输出我们想要的纯文本结果了。至此一个最基本的“用户提问 - 模型回答”的ComfyUI工作流就搭建好了。你可以把这个流程保存为一个模板以后随时调用。4. 实战构建多模态AI工作流有了基础的通义千问API节点我们就可以玩些更酷的了。下面我分享两个实用的工作流设计思路。4.1 工作流一图生文自动配文案这个工作流的目的是自动为生成的图片创作描述文案。图像生成工作流的起点使用Stable DiffusionSD系列节点生成一张图片。比如用一个KSampler节点配合你的大模型和提示词生成一张风景图。图像编码ComfyUI本身不能直接把图片传给文本模型。我们需要一个桥梁。这里可以用到CLIP Vision Encode节点如果你的SD模型包含CLIP视觉编码器或者更通用的方法将图片保存为Base64编码的字符串。有些自定义节点提供了Image to Base64功能。构造视觉提问将Base64图片字符串或CLIP视觉特征如果API支持与文本指令拼接作为通义千问模型的输入。例如提示词可以是“这是一张图片的数据[IMAGE_DATA]。请详细描述这张图片中的场景、物体、颜色和氛围。”调用通义千问API将构造好的提示词通过我们上一节搭建的“API调用解析”节点链发送给模型。输出结果将模型返回的文本描述连接到一个Preview Text节点进行显示或者连接到一个Save Text节点保存到文件。这样当你运行工作流时它会先生成图然后自动调用通义千问模型“看图说话”最后把图和文案都输出给你。非常适合需要批量给图片配文的场景。4.2 工作流二文生文优化绘图指令这个工作流更侧重于文本的加工和增强帮助你写出更好的绘图提示词Prompt。原始指令输入使用一个String节点输入你初步的、可能比较简单的想法。例如“一只在星空下奔跑的狐狸”。调用通义千问进行扩展将你的原始指令稍作包装发送给通义千问模型。包装的提示词可以这样设计“你是一个专业的AI绘画提示词工程师。请将以下简单描述扩展为一段详细、富有画面感、包含具体风格和细节的英文AI绘画提示词。用户描述‘{原始指令}’。请直接输出优化后的提示词不要有其他解释。”接收并清洗提示词通义千问模型会返回一段优化后的英文Prompt。有时它可能会在开头或结尾加上一些多余的话如“好的这是优化后的提示词”。我们可以再接一个简单的文本处理节点比如用Replace Text节点去掉这些固定的前缀后缀得到干净的Prompt。送入文生图模型将清洗后的、高质量的Prompt输入到SD的CLIP Text Encode节点正向提示词然后进入采样器生成图像。可选循环优化你甚至可以设计一个反馈循环。将生成的图片再用工作流一的方法进行描述然后对比生成的描述和最初的Prompt让通义千问模型分析差异并提出进一步的修改建议实现提示词的迭代优化。这个工作流相当于给你的ComfyUI配了一个“提示词助理”能显著提升出图的质量和可控性。5. 使用技巧与注意事项在实际搭建和运行这些工作流时有几个小技巧和坑需要注意一下。保持服务稳定确保你的通义千问WebUI API服务在ComfyUI工作流运行期间一直处于开启状态。如果API服务崩溃或中断ComfyUI的节点调用就会失败。处理网络延迟模型推理需要时间API调用也有网络开销。在ComfyUI中这些节点执行时会“转圈”等待响应。对于复杂的工作流要有耐心。可以考虑在HTTP请求节点上设置一个合理的超时时间。错误处理自定义的HTTP节点可能不会处理所有错误。如果API返回了错误信息比如模型忙、请求格式不对工作流可能会卡住或传递一个错误结果。一个更健壮的做法是可以尝试使用更高级的自定义节点或者自己写一个简单的Python脚本节点在里面用try...except来捕获异常。提示词工程通义千问模型的表现很大程度上取决于你给的提示词。在工作流中构造提问时尽量清晰、具体。对于“图生文”可以指示它描述“场景、主体、动作、颜色、风格、情绪”。对于“文生文”明确告诉它你想要什么格式的输出比如“只输出提示词不要任何其他文字”。资源管理同时运行ComfyUI和通义千问的API服务会占用一定的显存和内存。确保你的硬件资源足够。通义千问1.5-1.8B-Chat-GPTQ-Int4版本已经非常轻量这对大多数有独立显卡的电脑来说应该不是问题。把通义千问接入ComfyUI就像是在你的可视化工厂里新增了一个智能机器人。它不直接参与“生产”绘图但负责“质检”、“设计”和“调度”描述、优化指令。这种组合打破了大模型应用“单打独斗”的局限让你能像搭积木一样自由组合不同的AI能力。我上面分享的两个工作流只是抛砖引玉。你可以基于这个思路创造出更多玩法比如用通义千问分析用户评论情感再生成对应情绪的图片或者构建一个多轮对话界面在ComfyUI里实现更复杂的交互逻辑。可视化编程的魅力就在于一旦基础节点搭建好复杂的逻辑就变成了直观的连线创意实现的路径变得清晰可见。动手试试吧从复制一个简单的工作流开始慢慢调整加入自己的想法。你会发现构建一个属于自己的智能应用并没有想象中那么难。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。