|
|
图片引自微信公众号,扫码关注阅读原文先设想一个典型的工作日:
早上收到一份三十页的需求规格,你要逐条拆成测试用例;中午要为接口压测准备两百条边界数据;下午对着验收环境里几十张界面截图,肉眼核对有没有错位和溢出;下班前还要把本周缺陷统计写成验收报告。这些事技术含量不低,但重复、机械、且都发生在不能联网的内网机器上——你没法把需求文档贴进网页版 ChatGPT,也不能把截图传到任何云服务
验收环境通常划了两条红线:数据不出网、环境隔离(纯局域网或无外网)。这直接把 ChatGPT、文心、通义这类云端大模型排除在外——它们既要联网,又要把你的需求文档、测试数据、截图传到厂商服务器
而测试工程师的日常,恰恰是大量“可结构化”的重复劳动:
-
把需求文档翻译成测试用例,逐条对齐功能点; -
批量构造测试数据,还要做脱敏样例; -
写自动化脚本,调接口、对报文; -
对着几十张界面截图找 UI 缺陷; -
把缺陷、统计、趋势整理成验收报告
这些活儿,本地 AI 全都能接,而且因为跑在本机,天然满足“数据不出网”的硬约束。下图把云端 AI 和本地离线 AI 在测试场景下做个对比:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
一句话:云端 AI 在验收现场“不能用”,本地 AI 是“必须用”。本文的目标,就是把这套能用的东西搭起来,并落到 6 个具体提效场景上
整套方案由三个角色组成,分工极清晰:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
图片引自微信公众号,扫码关注阅读原文把这套结构落到你的测试机上是这样的:左边 Ollama 里住着三个语言/代码模型,负责“想”和“写”;右边 ComfyUI 住着图像/视频引擎,负责“画”和“做”;下方是你的本机测试资产——脚本、日志、用例、截图。龙虾站在中间,根据你说的话把任务分发出去,再把结果收回来。你不需要知道哪个模型在跑,只要知道“我能一句话把活派出去”。
你不需要记任何命令。你说“画一只戴墨镜的猫”,龙虾判断这是图像任务,转给 ComfyUI;你说“帮我写个去重函数”,转给代码模型;你说“总结这段技术文档”,用通用模型处理。对你而言就是“说一句话”。这套路由不是靠你手动切换 App,而是龙虾在听懂意图后自动完成的——这也是它区别于“自己开三个软件来回切”的核心价值。
图片引自微信公众号,扫码关注阅读原文本文所有步骤在作者真实机器上验证思路可行:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
这台机器不是什么高端工作站,就是一台普通性能向的笔记本。换句话说,如果你手上是近两年的主流游戏本或设计本(独显 + 16G 以上内存),基本都能照抄本文;配置更弱时,把模型换成更小的 7B/4B 版本即可,思路完全通用。
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
⚠ 注意模型名称以真实 tag为准。你最初列的 “Qwen3.5-顶点Instruct” 是家族底层命名,在 Ollama 里要用它的标签(tag)来拉取。正确对应关系:Qwen3.5-9B-Instruct → |
先记住一个硬约束:8G 显存同时只能从容装一个模型。这是后面“显存智能调度”章节要重点解决的,也是本方案在笔记本上能跑顺的关键。
Ollama 是本地跑大模型最简单的入口,它把模型管理、服务暴露、显存调度都打包好了,你只需要一条 pull 命令就能把模型拉到本地。对测试工程师来说,它最大的价值是:一次装好,之后所有“说句话就让 AI 干活”的能力都建立在它之上。
-
到 ollama.com/download 下载 OllamaSetup.exe,双击安装。装完任务栏出现羊驼图标,代表服务已后台运行。 -
限制 Ollama“同时只加载 1 个模型”,避免两个模型抢显存(8G 卡的命门): -
逐条拉取三个模型(下载时间看网速,耐心等): -
验证: ollama list应看到 3 个模型;ollama run qwen3.5:9b "你好"能对话即成功。
# 限制同时只加载 1 个模型(重启 Ollama / 电脑后生效)setx OLLAMA_MAX_LOADED_MODELS 1# 拉取三个模型ollama pull qwen3.5:9bollama pull qwen2.5-coder:14bollama pull qwen2.5:7b
ComfyUI 是本地图像生成的“工作流引擎”,它把文生图拆成可视化的节点链路,你可以像搭积木一样拼出自己的出图流程。对测试工程师,它的价值在于:封面图、信息图、界面示意图都能在本机几秒钟生成,不用再开设计软件或求人作图。
-
桌面版(推荐新手):从 comfy.org/download 下载,双击安装,自带 Python 环境,点图标即开,浏览器自动打开 http://127.0.0.1:8188。 -
把 SDXL 模型(stable-diffusion-xl-base-1.0)放到 ComfyUI 的 models/checkpoints/目录。 - 8G 显存必做
:若出图报显存不足,桌面版在设置里开启 “Low VRAM”,便携版设置环境变量 COMFYUI_VRAM_METHOD=lowvram;出图分辨率先用 1024×1024。 -
可选 CogVideoX-5B 文生视频:在 ComfyUI-Manager 装 CogVideoXWrapper 节点,下载量化权重。但 8G 显存对视频模型极吃紧(正常需 12~14GB),建议仅作演示,真要稳定出视频请升级显卡或走云端。
在 PowerShell 一行装好:
iwr -useb https://openclaw.ai/install.ps1 | iexopenclaw --versionopenclaw doctor
C:\Users\你的用户名\.openclaw\openclaw.json。下面是提炼后的关键片段(完整版见文末附录):{agents: {defaults: {model: { primary: "ollama/qwen3.5:9b", fallbacks: ["ollama/qwen2.5:7b"] },models: {"ollama/qwen3.5:9b": { params: { num_ctx:16384, thinking:false, keep_alive:"5m" } },"ollama/qwen2.5-coder:14b": { params: { num_ctx:16384, thinking:false, keep_alive:"5m" } },"ollama/qwen2.5:7b": { params: { num_ctx:8192, thinking:false, keep_alive:"5m" } }},experimental: { localModelLean: true }, // 去掉占资源工具,让本地模型更瘦timeoutSeconds: 300, // 本地冷启动慢,给足超时imageGenerationModel: { primary: "comfy/workflow" }}},models: {providers: {ollama: {enabled: true,baseUrl: "http://127.0.0.1:11434", // 用原生 API,不要加 /v1apiKey: "ollama-local", // 本地占位即可models: {"qwen3.5:9b": { aliases:["qwen3.5-9b-instruct"] },"qwen2.5-coder:14b": { aliases:["qwen2.5-coder-14b-instruct"] },"qwen2.5:7b": { aliases:["qwen2.5-7b-instruct"] }}}}},plugins: {entries: {comfy: { enabled:true, config: {mode:"local", baseUrl:"http://127.0.0.1:8188",image:{ workflowPath:"C:/ComfyUI/SDXL-workflow.json", promptNodeId:"6", outputNodeId:"9" }}}}}}
http://127.0.0.1:11434,不要加 /v1,否则工具调用不稳定;keep_alive:5m 让模型闲 5 分钟自动从显存卸下,把位子让给画图引擎;thinking:false 关掉 Qwen 思考循环,避免生成长推理卡死。 |
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
三个语言模型之间,默认由 qwen3.5:9b 统一当大脑;遇到重代码任务,聊天里说“切换到代码模型”或输入 /model ollama/qwen2.5-coder:14b 临时换将。真正的“跨引擎自动路由”发生在文字 vs 图像 vs 视频 vs 本机执行之间——这正是龙虾的价值。它像一个经验丰富的小组长,拿到一个混合任务(比如“读这份报告,画张配图,再总结成三段话”),会自己拆成“先分析、再出图、最后汇总”,并把每一步派给最合适的引擎,最后把结果拼成你能直接用的成品
验证:openclaw doctor 检查配置合法;openclaw models list --provider comfy 确认 ComfyUI 已接入;在聊天窗口说句“你好”,龙虾应用本机 qwen3.5:9b 回复你,全程不联网
如果一切正常,你已经拥有一个“断网可用的 AI 助手”。接下来真正的功夫在调校:把你的测试脚本目录、日志格式、常用出图风格逐步告诉龙虾,让它从“通用助手”长成“你的专属测试副驾”。这一过程不需要重装任何东西,只是不断地在对话里沉淀习惯
💡 提示 OpenClaw 配置是“严格校验”的:有个不认识的字段就拒绝启动。如果报错某字段未知(例如你版本未支持 localModelLean),删掉那行再试,跑 openclaw doctor 看原因
笔记本RTX 5060只有8G显存。qwen3.5:9b约占6.6G,SDXL出图约占 5~7G。两者若同时满载,必然显存溢出、程序崩溃。所以原则是:同一时刻,显卡上只留一个“重型”模型
图片引自微信公众号,扫码关注阅读原文OLLAMA_MAX_LOADED_MODELS=1
(第三步已设):同时只保留 1 个模型在显存 keep_alive:5m
(配置里已写):模型闲 5 分钟自动卸下,把显存让给 ComfyUI -
手动立刻释放:对话结束后执行 ollama stop qwen3.5:9b,显存马上空出来给画图
experimental.localModelLean:true
—— 关掉占内存的浏览器/定时器工具 params.thinking:false
—— 防 Qwen 思考循环卡死 timeoutSeconds:300
—— 冷启动慢,别被提前判失败 num_ctx
控制上下文长度:9B/14B 用 16384,7B 用 8192,越长越吃显存,够用即可
用一个真实例子串起来:你说“帮我想三个公众号选题”,龙虾用 qwen3.5:9b 在显存里跑,返回结果;接着你说“顺手给第一个选题画张封面图”,龙虾先 ollama stop 释放语言模型显存,再调 ComfyUI(SDXL) 出图;图生成完毕,显存里只剩 ComfyUI 的临时占用,几分钟后 keep_alive 超时,全部回归空闲,等下一次指令。整个过程你只说了两句话,调度全交给龙虾
-
先聊天/写代码(Ollama 占显存)→ 要画图前,先 ollama stop把语言模型卸下; -
再让龙虾调 ComfyUI(SDXL) 出图; -
图出完,显存里只剩 ComfyUI 临时占用;几分钟后 keep_alive 超时,全部回归空闲。
💡 提示 如果你经常“边聊边画”,把 keep_alive 调更短(如 1m),切换更顺;代价是每次对话要重新加载模型、首字稍慢。按手感权衡
下面六个场景,你都可以直接对龙虾说(前提是 SDXL 工作流已配置好)。这是本文落到实处的部分。它们覆盖了一个测试工程师从“需求”到“验收报告”的完整链路:前两步是输入侧的用例与数据,中间两步是执行侧(脚本、截图),最后两步是输出侧(报告与文档)。你会发现,原本分散在一天里的几种工具切换,被收敛成“连续说几句话”
把需求文本贴给龙虾:“根据以下需求,输出一份登录模块的测试用例,覆盖正常/异常/边界,用表格呈现”。它会用 qwen3.5:9b 结构化输出,直接对齐功能点,省去你逐条拆解
龙虾:根据下面需求生成测试用例表,列【用例编号/标题/前置条件/步骤/预期结果/类型】。需求要点:用户登录支持手机号+密码;连续 5 次失败锁定 10 分钟;验证码 60 秒刷新。
“生成 50 条用户注册测试数据,字段含手机号、身份证(脱敏)、邮箱,边界值包含空值、超长、特殊字符”。本地生成,敏感样例不离开机器。对验收里要造“看起来真实但不能是真隐私”的数据尤其有用
遇到重代码任务,切到 qwen2.5-coder:14b:“用 Python + pytest 写一个调用 /api/login 的接口测试,断言状态码和响应字段”。模型在本地跑,代码不触网。你拿到的不是“标准答案”,而是可改可跑的脚手架,省掉样板代码时间
龙虾:切到代码模型,写一个 pytest 用例:POST /api/login,入参 {"phone":"138...","pwd":"...",断言 200 且返回 token 字段非空;错误密码断言 401。
qwen3.5 是多模态模型,能读图。把界面截图贴给龙虾:“这张验收截图里有没有明显的 UI 缺陷?比如对齐错位、文字溢出、按钮遮挡”。它会给出缺陷清单,帮你把“肉眼遍历”变成“AI 初筛 + 人工复核”。在批量验收几十个页面时,这一步能省下大量重复眼球劳动
“桌面有 sales.csv(上月销售数据)。帮我:①算总销售额和环比;②列 Top3 品类;③画一张月度趋势折线图。结果整理成带图的小报告”。龙虾会读 CSV、用本机 Python 统计、出图、拼成报告——全程数据不出本机
你(龙虾):读 C:\验收\sales.csv,按月份汇总销售额,算环比,列出 Top3 品类,用 ComfyUI 出一张趋势折线图,最后把文字结论和图拼成一个验收小报告.md。
“写一篇《本地部署 AI 的 5 个误区》验收说明(约 2500 字),再配一张信息图风格的封面(清爽配色、5 个小图标)”。文章与封面一气呵成。验收文档最耗时的“起头”和“配图”两步,被一句话解决
图片引自微信公众号,扫码关注阅读原文|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
把这六个场景串起来看,你会发现它们不是孤立的功能演示,而是一条完整的“需求 → 用例 → 数据 → 脚本 → 截图分析 → 报告”流水线。过去这条线要靠你开着四五个软件、在不同窗口间反复复制粘贴;现在,它收敛成你和龙虾之间连续的一段对话。这才是本地 AI 对测试工程师真正的意义:不是某个单点变快,而是整条链路被压扁了
- 数据隔离与合规
模型全本地运行,对话/图片/代码均不出本机,适合处理敏感验收资料。在金融、政企等强合规场景里,这一点比“提效”更关键——它让用 AI 这件事本身能通过安全审查 - 接进本机,而非替代 CI
让龙虾读写你的测试脚本、日志、截图,把重复劳动自动化;现有 CI/CD 流程保持不变。它的定位是“副驾”,不是“重写的流水线” - 空间与升级
模型文件较大,用 OLLAMA_MODELS环境变量把模型存到非系统盘;升级显卡/内存后可换更大模型(如把 14B 代码模型跑得更顺),体验会明显提升 - 模型选型弹性
若希望代码模型也全速跑在显卡上,可改用 qwen2.5-coder:7b(约 4.6GB,能完整进 8G);本文保留你原方案的 14B,并在调度章节说明了降级选项
本地部署最怕“卡在某个不知道为什么的步骤”。下面把作者踩过、读者大概率也会遇到的几个坑列成速查表,照着对号入座即可,不必从头再来。
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
常用命令一页纸:
# Ollamaollama pull qwen3.5:9b / qwen2.5-coder:14b / qwen2.5:7bollama list # 查看已装模型ollama ps # 正在运行的模型ollama stop qwen3.5:9b # 立刻释放显存给画图# OpenClaw(龙虾)openclaw doctor # 检查配置openclaw models list --provider comfy# 确认 ComfyUI 接入openclaw gateway install # 注册开机自启
断网不是 AI 用不起来的理由。把 Ollama、ComfyUI、OpenClaw 三件套在本地串起来,你就有了一个数据不出机、断网也能用、一句话派活的测试副驾。从“写用例、造数据、审截图、出报告”这些重复劳动里腾出手脚,把精力留给真正需要人判断的验收决策上。
有人会问:本地部署是不是很折腾?确实要花一个下午把环境搭起来,但搭好之后是“零边际成本”的——不用再为每次调用付费,不用担心数据外泄,也不用被限流。对一个长期和验收环境打交道的测试工程师,这笔一次性投入,回报率相当可观。
部署细节、完整 openclaw.json 与命令速查,可参考作者此前发布的《个人本地离线 AI 全套部署手册》(同机验证通过)。先把三件套装起来,今晚就能让龙虾帮你写第一份用例。下一步,可以把它接到你日常的真实项目里:把测试脚本目录交给龙虾读取,把验收截图目录交给它分析——那一刻,它才真正从“演示”变成“生产力”。
