教程2026年9月30日9,810 浏览约 6 分钟阅读

AI 编程实战:用 qwencode 批量重命名图片+生成 Excel 导入表(附完整代码)

从零安装 qwencode 到跑通批量处理脚本:覆盖 Node.js 环境配置、OpenAI 兼容通道对接、settings.json 与 config.toml 参数详解,附带图片重命名+Excel 导入表生成完整 Python 代码,开发者可直接复制运行,分钟级落地电商素材批量处理与自动化工作流。

AI 编程实战:用 qwencode 批量重命名图片+生成 Excel 导入表(附完整代码)

处理电商素材目录时,常遇到这样的结构:一个主文件夹下挂几十个子文件夹,图片命名规则分 “2 级” 和 “3 级” 两套。手工逐一重命名效率低,漏改概率不低。更务实的做法是让 AI 编程工具生成一段 Python 脚本,前提是工具本身接入了稳定、统一的模型通道。这篇文章按 “装好工具 → 配通通道 → 生成脚本 → 跑一次验证” 的顺序走一遍,命令和配置可以直接复制。

一、qwencode 是什么,以及它和普通 AI 对话有什么不同

qwencode 是 Qwen Code 的命令行形态,阿里开源,基于 Gemini CLI 改造,针对 Qwen3-Coder 系列模型做了专门优化。它和网页版 AI 的核心区别在于:你在项目目录里敲 qwen,它就能读文件、改代码、生成脚本、解释报错,直接操作本地代码库。对于日常泡在终端里的开发者,省掉了反复切窗口、粘贴代码的步骤。

Qwen Code 本身是一个 agentic 命令行工作流工具,支持 function-calls,可以把 “分析合并请求”“批量调整代码风格” 这类多步操作拆成一次次工具调用来完成。它的开源仓库目前在 GitHub 上有 17.4k star,更新频率稳定。

二、安装:Node.js 版本是硬性门槛

qwencode 对 Node.js 版本有明确要求。官方 Quickstart 文档建议 Node.js 22 或更高版本,部分教程和 KDnuggets 的实操文章则以 Node.js 20 为最低线。稳妥起见,直接上 20 以上。

检查当前版本:

node -v
npm -v

输出低于 v20 就去 Node.js 官网下载 LTS 版本,安装后重启终端让环境变量生效。

安装命令全平台通用:

npm install -g @qwen-code/qwen-code@latest

如果提示权限不足,macOS/Linux 在前面加 sudo。不想全局安装的话,可以用官方一键脚本,macOS/Linux 执行:

curl -fsSL https://qwen-code-assets.oss-cn-hangzhou.aliyuncs.com/installation/install-qwen-standalone.sh | bash

Windows 在管理员 CMD 里跑对应的 .bat 脚本即可。

验证安装:

qwen --version

能打印版本号就说明安装成功。提示 command not found 多半是 npm 全局 bin 目录没进 PATH,用 npm config get prefix 看一下路径,手动加进去或者直接重启终端。

三、通道准备:为什么值得用统一入口

qwencode 默认支持 OpenAI 兼容协议,核心配置是两个东西:base_url 和 api_key。如果你同时用 Claude Code、其他 CLI 工具或者脚本里的 SDK 调用,每个工具各配一套 Key 和地址,管理起来很碎。

统一通道的价值在于收敛密钥管理。以 koalaapi 为例,API 入口以控制台提供的 Base URL 为准,兼容 OpenAI 协议。qwencode、其他兼容工具都指向它,一个 Key 覆盖多个运行时,轮换时只改一处。

Key 在控制台创建后只完整显示一次,复制出来存好。注意 base_url 后面不加任何查询参数或路径后缀 —— 手动追加 /v1 或 /chat/completions 是导致 404 的最常见原因。

四、配置:settings.json 与 config.toml 的关键字段

qwencode 的配置分两层。settings.json 管工具行为和模型通道,config.toml 管模型参数。用户级 settings.json 默认位于~/.qwen/settings.json,Windows 下是 C:\Users <用户名>.qwen\settings.json。项目级配置放在项目根目录的 .qwen/settings.json,优先级高于用户级,适合给不同项目配不同模型。

settings.json 关键字段

{
  "auto_execute": false,
  "work_dir": "./excel_task",
  "timeout_seconds": 120,
  "max_retries": 2,
  "log_level": "info"
}

auto_execute 保持 false,让 AI 生成代码后先人工确认再执行,避免脚本直接改动磁盘文件。work_dir 指向实际工作目录。timeout_seconds 给 120 秒,遍历几十个文件夹并写入 Excel 的耗时通常远低于此。max_retries 设 2,应对偶发的网络抖动。

如果想在 settings.json 里直接声明模型通道,可以用 modelProviders 字段:

{
  "modelProviders": {
    "openai": [{
      "id": "qwen3-coder-plus",
      "name": "Qwen3 Coder Plus",
      "baseUrl": "https://koalaapi.com/v1",
      "envKey": "OPENAI_API_KEY"
    }]
  }
}

envKey 指向存放 Key 的环境变量名,比直接写死在配置文件里更安全。也可以在 .env 文件里配 OPENAI_BASE_URL 和 OPENAI_API_KEY,环境变量的优先级高于 settings.json。

config.toml 模型参数

[model]
provider = "openai-compatible"
base_url = "https://koalaapi.com/v1"
api_key = "sk-你的Key"
model = "你的模型标识"

[model.params]
temperature = 0.2
max_tokens = 4096

provider 填 openai-compatible,因为统一通道走的是 OpenAI 兼容协议。temperature = 0.2 是经验值 —— 代码生成这类任务要的是稳定输出,不需要发散。max_tokens 给 4096 能覆盖大多数单文件脚本的生成请求,特别长的脚本可以往上调。

改完配置重启 qwencode 使其生效。

五、验证通道是否通了

配置写好后,先做一个低风险的连通性测试。在 qwencode 里输入一句最简单的请求:

> 用 Python 打印当前目录下的所有文件夹名

如果能正常返回代码,说明 base_url 和 Key 都对了。报 401 就去检查 Key 是不是前后带了空格或换行。报 404 多半是 base_url 多写了路径后缀 —— 正确写法就是通道平台提供的基础地址,不要手动追加 /v1 或 /chat/completions,这些路径由工具自己拼接。

六、生成脚本:从重命名到 Excel 导入表

连通性没问题之后,把真实需求整理成一段清晰的提示词发给 qwencode。需求是这样的:

> 遍历当前目录下每个子文件夹,图片名含 “2 级” 改为 “大牌 - 文件夹名”,含 “3 级” 改为 “大牌 - 文件夹名 - 1”,后缀不变。然后读取 “大牌导入.xls” 模板,从第二行开始写入:第一列用 uuid4 生成随机 ID,第二列填图片名不含后缀,第三列固定 “上衣”,第六列在文件名含 “-1” 时填 1、否则填文件夹名,第七列在含 “-1” 时留空、否则填一个固定 UUID。

qwencode 生成的脚本核心结构如下:

import os, uuid, openpyxl

FIXED_UUID = "F09B4EBE-2AF1-4B49-9FC6-B77EFF919853"

def rename_images(root):
    for folder in os.listdir(root):
        fp = os.path.join(root, folder)
        if not os.path.isdir(fp):
            continue
        for fname in os.listdir(fp):
            name, ext = os.path.splitext(fname)
            if "2级" in name:
                new = f"大牌-{folder}{ext}"
            elif "3级" in name:
                new = f"大牌-{folder}-1{ext}"
            else:
                continue
            os.rename(os.path.join(fp, fname), os.path.join(fp, new))

def build_excel(root, template, output):
    wb = openpyxl.load_workbook(template)
    ws = wb.active
    row = 2
    for folder in os.listdir(root):
        fp = os.path.join(root, folder)
        if not os.path.isdir(fp):
            continue
        for fname in os.listdir(fp):
            name, ext = os.path.splitext(fname)
            if ext.lower() not in (".jpg", ".png", ".jpeg"):
                continue
            ws.cell(row=row, column=1, value=str(uuid.uuid4()))
            ws.cell(row=row, column=2, value=name)
            ws.cell(row=row, column=3, value="上衣")
            if "-1" in name:
                ws.cell(row=row, column=6, value=1)
                ws.cell(row=row, column=7, value="")
            else:
                ws.cell(row=row, column=6, value=folder)
                ws.cell(row=row, column=7, value=FIXED_UUID)
            row += 1
    wb.save(output)

if __name__ == "__main__":
    rename_images(".")
    build_excel(".", "大牌导入.xls", "导入结果.xlsx")

保存为 batch_excel.py,确保 “大牌导入.xls” 模板在同一目录,执行 python batch_excel.py。跑完打开 “导入结果.xlsx”,列值应该和上面逻辑一致。整个流程从生成到跑通,几分钟的事。

七、几个容易卡住的地方

401 Unauthorized:Key 前后可能有不可见字符。从控制台重新复制,逐字符核对。注意 Qwen OAuth 免费通道已于 2026 年 4 月停用,如果之前用的是 OAuth 方式,需要切换到 API Key 模式。

404 Not Found:base_url 被手动追加了路径。正确值就是通道平台提供的基础地址,别自己拼。

Excel 没生成:检查模板文件是否在工作目录,或者文件名是否完全匹配。openpyxl 找不到模板会直接抛异常。

图片没被重命名:文件名里不含 “2 级” 或 “3 级” 字符串。注意全角和半角的差异,“2 級” 这类繁体写法不会被当前条件匹配。

uuid 每次不同:uuid4 本身基于随机数,这是预期行为。需要固定值就替换成常量字符串。

脚本会直接改动磁盘文件名,第一次跑之前对原始目录做个完整备份,确认逻辑对了再上正式环境。

八、统一通道真正省掉的是什么

把 AI 编程工具接入统一 API 通道,收益不主要在单次调用成本上,而在密钥管理的收敛。qwencode、其他 CLI 工具、脚本里的 SDK 调用,共用同一组 Key 和 Base URL,轮换时只改一处。聚合网关在这一层的价值是协议抽象和访问控制,让开发者用一套凭据覆盖多个模型供应商。koalaapi 的定位与此一致,核心思路是把多供应商的接入复杂度收拢到一个入口,减少在多工具之间反复翻配置的摩擦。对于需要频繁切换模型或管理多个 API Key 的团队,这类聚合层的工程价值比较实际。

配置文件里 Key 不要提交到 Git 仓库。建议放在环境变量或者单独的 .env 文件里,.gitignore 把配置文件排除掉。settings.json 中的字符串值支持 $VAR_NAME 或 ${VAR_NAME} 语法引用环境变量,加载时会自动解析。

了解更多: https://koalaapi.com/

标签qwencodeQwen Code批量处理图片重命名Excel自动化Python脚本AI编程
Koala API · 一站式大模型 API 中转

把博客读到的,落地到你的下一个项目

国内直连 · 兼容 OpenAI SDK · GPT / Claude / Gemini 等主流模型聚合

延伸阅读

免费注册