☰
国产可图大模型厚积薄发:GLM3加持下ComfyUI最全指南与SD3综合评比,TaoToken统一Key接入实战
2026/9/27 16:21:53 网站建设 项目流程

1. 为什么要在 ComfyUI 里同时跑 Kolors、GLM3 和 SD3

如果你最近在折腾本地文生图,大概率会遇到一个很现实的问题:想对比国产可图大模型 Kolors 和 StabilityAI 的 SD3,得来回切环境、换权重、改路径,光是把模型塞进models目录就能耗掉一晚上。更麻烦的是,Kolors 依赖 ChatGLM3 做文本编码,SD3 又走自己的 T5+CLIP 路线,两套工作流混在一起时,节点冲突、显存爆掉、提示词理解错位几乎是家常便饭。

这篇内容就是解决这个场景的:在 ComfyUI 里把 Kolors + GLM3 和 SD3 放在同一套工作流骨架下,用 TaoToken 统一 Key 接入 API 通道,做模型切换、参数校验和出图对比。适合已经装好 ComfyUI、想快速复现国产可图大模型评测流程的人,也适合想把 GLM3 加持下的中文提示词能力用起来的创作者。

核心检索词先摆出来:可图大模型 Kolors 是快手开源的文生图模型,基于潜在扩散架构,在十亿级图文对上训练,中文文字渲染和复杂语义理解是它的强项;GLM3 在这里扮演文本编码器的角色,把中文提示词转成模型能吃的 embedding;ComfyUI 是节点式工作流工具;SD3 是 StabilityAI 的 Medium 版本,英文提示词理解更稳。TaoToken 在这里的作用是提供统一的 API Key 和通道,让你不用在多个平台之间反复注册和切换。

我试过把 Kolors 和 SD3 的工作流拆成两个独立 group,共用一套 TaoToken 配置,切换时只改模型加载节点,出图对比效率提升很明显。下面按步骤拆开讲。

2. TaoToken 前置:统一 Key 与 API 通道准备

在开始配 ComfyUI 之前,先把 TaoToken 的 Key 和通道准备好。这一步不复杂,但顺序别搞反:先拿 Key,再配环境变量,最后写进 ComfyUI 的配置文件。

2.1 获取 API Key

打开 TaoToken 控制台,进入 API Keys 页面创建一个新 Key。建议按用途命名,比如comfyui-kolors-sd3,方便后面在多个工作流里区分。创建后复制 Key,注意只显示一次,丢了就重新生成。

  • 控制台入口:https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_content=console&utm_campaign=rewrite
  • API Keys 页面:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api-keys&utm_campaign=rewrite

2.2 确认 API 通道地址

TaoToken 的 API 通道地址是https://taotoken.net/api,这个地址不加 UTM 参数,直接用于程序调用。ComfyUI 里如果用到自定义节点走 HTTP 请求,或者你用外部脚本做批量出图,都填这个。

注意:不要把官网首页地址填进 API 配置里,官网带 UTM 参数是给浏览器访问用的,程序调用只认https://taotoken.net/api。

2.3 环境变量与配置文件位置

ComfyUI 的自定义节点配置一般放在ComfyUI/custom_nodes下对应插件的目录里。如果你用的是 ComfyUI-KwaiKolorsWrapper,它的配置读取路径通常是插件根目录下的config.toml;而 ComfyUI 主程序的设置走ComfyUI/user/default/settings.json。两个文件分工不同:settings.json管界面和全局行为,config.toml管插件级别的 API 通道和模型路径。

先把 Key 写进环境变量,避免硬编码:

export TAOTOKEN_API_KEY="sk-你的Key" export TAOTOKEN_BASE_URL="https://taotoken.net/api"

Windows 下用 PowerShell:

$env:TAOTOKEN_API_KEY="sk-你的Key" $env:TAOTOKEN_BASE_URL="https://taotoken.net/api"

环境变量设好后,重启终端和 ComfyUI,让进程能读到。

3. 可复制配置:settings.json 与 config.toml 示例

这一节给可直接复制的配置骨架。注意路径按你自己的 ComfyUI 安装位置调整,别直接照搬。

3.1 settings.json 示例

ComfyUI/user/default/settings.json里主要加两段:一是 API 通道,二是模型搜索路径,方便 Kolors 和 SD3 的权重都能被扫到。

{ "taotoken": { "api_key_env": "TAOTOKEN_API_KEY", "base_url": "https://taotoken.net/api", "timeout": 120, "retry": 3 }, "comfy": { "model_paths": { "diffusers": [ "models/diffusers/Kolors", "models/diffusers/SD3" ], "llm_checkpoints": [ "models/LLM/checkpoints" ] } } }

这里diffusers数组里同时放了 Kolors 和 SD3 的目录,ComfyUI 启动时会扫描这两个路径。llm_checkpoints指向 GLM3 的量化权重目录。

3.2 config.toml 示例

ComfyUI/custom_nodes/ComfyUI-KwaiKolorsWrapper/config.toml里配置插件级别的通道和模型选择:

[api] provider = "taotoken" base_url = "https://taotoken.net/api" api_key_env = "TAOTOKEN_API_KEY" timeout = 120 [model] kolors_path = "models/diffusers/Kolors" sd3_path = "models/diffusers/SD3" glm3_checkpoint = "models/LLM/checkpoints/chatglm3-4bit.safetensors" default_engine = "kolors" [generation] steps = 28 cfg = 7.0 width = 1024 height = 1024 sampler = "euler" scheduler = "normal"

default_engine设成kolors,切换 SD3 时改这一行就行。glm3_checkpoint指向 4bit 量化版本,小显存机器优先用这个。

3.3 模型目录结构确认

配完后确认目录结构对得上:

ComfyUI/models/ ├── LLM/checkpoints/ │ └── chatglm3-4bit.safetensors ├── diffusers/ │ ├── Kolors/ │ │ ├── model_index.json │ │ ├── scheduler/ │ │ ├── text_encoder/ │ │ └── unet/ │ └── SD3/ │ ├── model_index.json │ └── ...

Kolors 的text_encoder目录里是 ChatGLM3 的权重分片,SD3 走自己的文本编码器。两个模型共用diffusers父目录,但子目录分开,避免加载时串。

4. 验证请求与成功结果:模型切换、参数校验、出图对比

配置写完,接下来做验证。验证分三步:先确认 API 通道通,再确认模型能加载,最后跑一组对比出图。

4.1 验证 API 通道

用 curl 测一下 TaoToken 通道是否可达:

curl -X POST "https://taotoken.net/api/v1/chat/completions" \ -H "Authorization: Bearer $TAOTOKEN_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "glm-3", "messages": [{"role": "user", "content": "用一句话描述中国古风少女"}], "max_tokens": 64 }'

返回里有choices字段就说明通道正常。这一步只是验证 Key 和通道,不涉及出图。

4.2 验证 GLM3 文本编码

在 ComfyUI 里加载 Kolors 工作流,把提示词节点接上 GLM3 编码器,输入中文提示词:

1个中国女孩,手举木牌,木牌上写着文字“我爱你中华”,身穿淡黄色中国古风旗袍,18岁,年轻美貌

点执行,观察控制台日志。如果看到ChatGLM3 loaded和text_encoder ready,说明 GLM3 加持生效。出图后检查木牌上的文字是否可读,这是 Kolors 中文渲染的强项。

4.3 切换 SD3 做对比

把config.toml里default_engine改成sd3,重启 ComfyUI,加载 SD3 工作流。用同一段中文提示词跑一次,再换成英文提示词跑一次:

A Chinese girl holds up a wooden sign with the chinese words "我爱你中华" written on it. Dressed in ancient Chinese style cheongsam, light yellow cheongsam.

对比结果记录在表格里:

维度Kolors + GLM3SD3 Medium
中文提示词理解直接支持,语义准确需转英文,易丢细节
中文文字渲染木牌文字可读文字常缺失或乱码
人物写实贴近现实,光影自然艺术感强,色彩多变
复杂语义GLM3 加持,理解稳英文长句更稳
手部问题较易隐藏偶有变形

4.4 参数校验清单

每次切换模型后,检查这几个参数:

  • steps:Kolors 建议 28,SD3 建议 30
  • cfg:Kolors 7.0,SD3 5.5 到 7.0 之间
  • sampler:两者都可用 euler,SD3 可试 dpmpp_2m
  • width/height:1024x1024 起步,显存不够降到 768

参数不对时,出图会糊或者过曝。校验完再跑批量对比。

5. 本篇常见错排查

配这套流程时,下面几个错我踩过,列出来帮你省时间。

5.1 GLM3 权重加载失败

报错ChatGLM3 checkpoint not found,先确认chatglm3-4bit.safetensors是否在models/LLM/checkpoints下,文件名别改。如果显存小于 8G,用 4bit 版本;8G 到 12G 可试 8bit;16G 以上再上 fp16。

5.2 Kolors 首次运行卡住

Kolors 的 diffusers 权重较大,首次加载会慢。如果卡在Loading pipeline超过 5 分钟,检查models/diffusers/Kolors下model_index.json是否存在,以及unet目录里的 safetensors 是否完整。缺文件就重新下载对应分片。

5.3 API 通道返回 401

401 Unauthorized一般是 Key 没读到。检查环境变量名是否和settings.json里api_key_env一致,重启终端后echo $TAOTOKEN_API_KEY看有没有值。Windows 下注意 PowerShell 和 CMD 的环境变量不互通。

5.4 模型切换后出图不变

改了default_engine但出图还是旧模型,多半是 ComfyUI 缓存没清。重启 ComfyUI,或者在设置里清一下节点缓存。另外确认工作流里加载的模型节点路径是否跟着config.toml走,有些工作流是硬编码路径。

5.5 中文提示词出图乱码

Kolors 走 GLM3 编码,如果 GLM3 没加载成功,中文提示词会被当普通 token 处理,出图就乱。回看 4.2 的日志,确认ChatGLM3 loaded出现。SD3 本身不直接吃中文,中文提示词要先转英文,别指望它原生理解。

6. 语义一致 CTA:按场景选入口

这套流程跑通后,你可以按自己的需求选下一步入口。

如果你在排障或接入阶段卡住,优先看 API Keys 和接入文档,把 Key 和通道确认清楚:

  • API Keys:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api-keys&utm_campaign=rewrite
  • 接入文档:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite

如果你想先验证模型对话能力,比如用 GLM3 做提示词优化,可以直接进模型对话页面试:

  • 模型对话:https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_content=chat&utm_campaign=rewrite

如果你打算长期做编码或 Agent 类任务,把 Kolors 和 SD3 的出图流程接进自动化管线,Coding Plan 更合适:

  • Coding Plan:https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding-plan&utm_campaign=rewrite

最后补一个实操细节:对比出图时,把两组图的 seed 固定成同一个值,这样差异只来自模型本身,而不是随机噪声。我一般在工作流里加一个KSampler的 seed 输入节点,手动填同一个数字,跑完再换提示词。这样对比结果更可信,也方便你复现。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询