OpenClaw 多智能体配置不同的文生图模型

OpenClaw 多智能体配置不同的文生图模型在使用 OpenClaw 构建多智能体工作流时 我们通常会针对不同的任务 如深度写作 素材整理 日常对话 配置不同智商的文本大模型 但在视觉创作环节 所有的智能体往往只能共用同一个画图接口 这在成本和效果上都不够灵活 本篇教程将带你实现文生图模型的精细化路由 我们将基于 OpenClaw 版本 2026 3 13 在 macOS 环境下 通过 全局技能统一部署

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



在使用 OpenClaw 构建多智能体工作流时,我们通常会针对不同的任务(如深度写作、素材整理、日常对话)配置不同智商的文本大模型。但在视觉创作环节,所有的智能体往往只能共用同一个画图接口,这在成本和效果上都不够灵活。

本篇教程将带你实现文生图模型的精细化路由。我们将基于 OpenClaw (版本 2026.3.13)macOS 环境下,通过“全局技能统一部署 + 局部环境变量隔离”的架构,为不同的智能体分配不同级别的画图模型。例如:给负责高质量输出的写作智能体配置 qwen-image-2.0-pro,给日常助手的配置经济型的 qwen-image-2.0

核心思路:
OpenClaw 原生的 models 配置主要针对 LLM 推理。对于调用外部 API 画图,我们需要将其封装为 Skill(技能),并在各自扁平化的工作空间中通过 .env 注入独立的模型和 API 配置。




我们需要编写一个底层 Python 脚本来对接阿里云通义万相最新的多模态生成接口。注意,Qwen-Image 2.0 已经全面升级为类似对话模型的 messages 数组结构,这个坑了我老半天。

在 Mac 终端执行以下命令,创建脚本目录及文件:

mkdir -p ~/.openclaw/skills/qwen-image nano ~/.openclaw/skills/qwen-image/gen.py 

将以下纯净版代码写入 gen.py

# -- coding: utf-8 -- import os import sys import requests

动态读取当前智能体工作空间的环境变量

api_key = os.getenv(“QWEN_IMAGE_API_KEY”) base_url = os.getenv(“QWEN_IMAGE_BASE_URL”, “https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation”) model_name = os.getenv(“QWEN_IMAGE_MODEL”, “qwen-image-2.0”)

prompt = “ “.join(sys.argv[1:])

headers = {

"Authorization": f"Bearer {api_key}", "Content-Type": "application/json" 

}

适配 Qwen-Image 2.0 最新底层架构

payload = {

"model": model_name, "input": { "messages": [ { "role": "user", "content": [ {"text": prompt} ] } ] }, "parameters": { "size": "1024*1024" } 

}

try:

response = requests.post(base_url, json=payload, headers=headers) if response.status_code != 200: print(f"❌ API 请求失败!HTTP 状态码: {response.status_code}") print(f"❌ 详细错误信息: {response.text}") sys.exit(1) res_json = response.json() # 解析新版 API 返回的复杂数据结构 try: content_list = res_json['output']['choices'][0]['message']['content'] img_url = None for item in content_list: if 'image' in item: img_url = item['image'] break elif 'url' in item: img_url = item['url'] break if img_url: # 返回 OpenClaw 识别的 MEDIA 标签 print(f"MEDIA:{img_url}") else: print(f"图片已生成但提取 URL 失败,API 原始返回: {res_json}") except KeyError: print(f"无法解析新的返回结构,API 原始返回: {res_json}") 

except Exception as e:

print(f"请求崩溃: {str(e)}") 

这里的 QWEN_IMAGE_BASE_URL 地址是你在对应的文生图大模型平台拿到的,包括下面的 api_Key 也是。本文演示我使用的是阿里千问的免费额度。

Nano 编辑器保存/退出快捷键:
代码粘贴完成后,按 Ctrl + O 保存文件,接着按 Enter 键确认文件名,最后按 Ctrl + X 退出编辑器。



保存退出后,务必赋予执行权限,直接执行这个:

chmod +x ~/.openclaw/skills/qwen-image/gen.py 

假设你的 OpenClaw 根目录 (~/.openclaw/) 下有两个扁平化工作空间:writer_agent_workspace(写作)和 chat_agent_workspace(日常)。

注意:这里的writer_agent_workspacechat_agent_workspace 是你每个智能体对应的工作空间的名字(即文件夹名)。

A. 写作智能体(使用 Pro 版模型)

nano ~/.openclaw/writer_agent_workspace/.env 

写入配置:

QWEN_IMAGE_API_KEY=“sk-你的真实API_KEY” QWEN_IMAGE_BASE_URL=”https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation” QWEN_IMAGE_MODEL=“qwen-image-2.0-pro” 

B. 日常智能体(使用标准版模型)

nano ~/.openclaw/chat_agent_workspace/.env 

写入配置:

QWEN_IMAGE_API_KEY=“sk-你的真实API_KEY” QWEN_IMAGE_BASE_URL=”https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation” QWEN_IMAGE_MODEL=“qwen-image-2.0” 

(注:如果你的 openclaw.json 全局配置文件中曾定义过这些 Key,请将其删除,以免覆盖局部变量。)


为了让大模型知道何时以及如何调用这个画图工具,你需要手动分别编辑各个工作空间下的 TOOLS.md,加入以下说明:

# 可用技能 (Skills)

qwen-image

  • 用途:当你需要生成图片、插图或视觉素材时调用此工具。
  • 触发方式:运行 python3 ~/.openclaw/skills/qwen-image/gen.py " <你的中 英文画面提示词=""> "
  • 示例:python3 ~/.openclaw/skills/qwen-image/gen.py "A high-end, artistic close-up of a futuristic car dashboard, suitable for a tutorial material cover. Clear text watermark '小生写博客' at the bottom right corner. Strictly do not include any image size or source text in the picture."
  • 注意:当前环境已为你默认配置了最适合你任务的图像模型版本,请直接专注优化提示词,无需在命令中指定模型。

    记得保存一下。


重启网关服务使配置生效:

openclaw gateway restart 

我们可以通过编写一个简单的 bash 脚本遍历工作空间执行 python3 ~/.openclaw/skills/qwen-image/gen.py “测试提示词”,检查终端是否分别打印了不同模型名称以及绿色的 MEDIA:https://… 链接,如果是这样,那就是正确的,可以在聊天终端进行生图了。

测试脚本如下:

#!/bin/bash

SKILL_SCRIPT=“$HOME/.openclaw/skills/qwen-image/gen.py”

替换为你的实际工作空间名称

WORKSPACES=(“writer_agent_workspace” “chat_agent_workspace”)

图片提示词 可以自己改中文

TEST_PROMPT=“A high-end, artistic close-up of a futuristic car dashboard, suitable for a tutorial cover. Clear text watermark ‘小生写博客’ at the bottom right corner.”

for WS in “${WORKSPACES[@]}”; do

ENV_FILE="$HOME/.openclaw/$WS/.env" echo "📂 正在测试工作空间: $WS" if [ -f "$ENV_FILE" ]; then set -a; source "$ENV_FILE"; set +a echo "✅ 当前模型: $QWEN_IMAGE_MODEL" python3 "$SKILL_SCRIPT" "$TEST_PROMPT" else echo "❌ 找不到环境文件" fi echo "--------------------------------------------------" 

done


在部署过程中,你可能会遇到以下报错,对照解决即可:

Q1:出现 NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+ 警告

  • 原因:Mac 系统自带的 Python 底层使用了较老的 LibreSSL,与新版的 urllib3 网络请求库发生冲突。
  • 解决:在终端执行降级命令:pip3 install “urllib3<2”

ok!到这里我们给不同的智能体配置了不同的生图模型,基本上都齐活了,剩下的就是根据需求安装技能包,我们下篇内容写这个。

大家好,我是小生,从程序员转行做自媒体,每天学习一点 AI 技术。

小讯
上一篇 2026-03-28 10:16
下一篇 2026-03-28 10:14

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/250198.html