ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

TIL 实战:用 claude CLI 跨模型批量生成图片 Alt Text 的对比与提示词技巧

TIL 实战:用 claude CLI 跨模型批量生成图片 Alt Text 的对比与提示词技巧 文档教程知识库【免费下载链接】til:memo: Today I Learned项目地址https://gitcode.com/gh_mirrors/ti/til点击查看免费下载本篇技术指南基于 til 仓库 llm/generate-image-alt-text-across-claude-models.md 的实测记录展开核心主题是如何用claudeCLI 以一行内联命令为一张图片批量生成 alt text并横向对比 opus / sonnet / haiku / fable 四个模型的输出差异。读完你可以掌握claude -p图片路径--output-format jsonjq的完整命令链路理解提示词措辞concise but descriptive如何决定输出粒度并学会复现这套跨模型评测流程。为什么用 LLM 生成 Alt Text图片的 alt text替代文本是网页可访问性的基础屏幕阅读器靠它向视障用户描述图片内容搜索引擎也依赖它理解图片语义。为一张复杂的示意图手工撰写准确、完整的 alt text 往往费时且容易遗漏细节。仓库作者的习惯是让不同的大模型各自为同一张图生成 alt text再与自己手写的版本对比观察模型的描述风格与细节密度。尤其是较新的模型生成的描述常常比自己写的更全面、更细致。这套流程的价值不只是偷懒而是把 alt text 写作变成了一个可量化的对照实验同一张图、同一句提示词、不同模型输出之间的差异直接反映出各模型对视觉内容的理解深度与语言组织风格。实验素材一张参数化测试对比示意图实验所用的图片是作者近期一篇关于 pytest 参数化测试的博客配图一张对比两类测试套件的示意图。图片内容可描述如下左侧 Behavioral Tests行为测试单列六行测试四行通过绿色勾号、两行失败红色叉号右侧 Parameterized Behavioral Tests参数化行为测试三个参数符号圆形、三角形、菱形各自扇出到一列测试每列重跑同一组六个测试并打上对应参数形状的标签——圆形列全部通过、三角形列三项失败、菱形列一项失败。这张图在仓库的另一篇笔记 llm/include-a-file-with-message-to-ant.md 中也被用作示例且该笔记给出了antCLI 附带图片的完整做法可作为本实验的姊妹篇对照阅读。核心命令内联提示 图片引用 JSON 输出作者通过claudeCLI 的内联模式-p即 print 模式的 prompt 参数一次性地向模型发起请求。命令模板如下claude -p Produce a concise alt text for the following image: image.png \ --model 模型名 [--effort medium] --output-format json \ | jq .result逐个拆解这条命令的组成部分参数作用说明-p ...以非交互方式直接传入提示词命令结束后立即退出适合脚本化调用。该模式在本仓库 claude-code/ask-an-agent-to-fix-merge-conflicts.md 中也有同款用法claude -p Can you fix the merge conflict?image.png提示词内嵌的文件引用语法在claudeCLI 中后跟相对路径即可把本地图片随消息一并发送给模型无需手动做 base64 编码。把image.png替换为任意图片路径即可用于自己的图--model opus / sonnet / haiku / fable指定要调用的 Claude 模型家族。同一提示词通过切换该参数即可完成跨模型对比--effort medium控制模型推理投入程度的参数中等档位。注意 haiku 那次调用没有加--effort仍能给出可用结果说明该参数是可选的调优项而非必选项--output-format json让 CLI 以 JSON 结构返回结果便于程序化解析\| jq .result用jq提取 JSON 中的result字段把模型输出从结构化外壳中剥出来只留下纯文本回答。jq 在本仓库 jq 目录下有大量独立技巧笔记需要提示的是若命令运行环境要求模型具备改文件、跑命令等权限可像 claude-code/ask-an-agent-to-fix-merge-conflicts.md 中那样追加--permission-mode auto避免交互式询问。但纯看图写描述这类只读任务不需要该参数。四个模型的实测输出逐条对比作者对同一张图、同一句提示词分别调用了四个模型以下是完整实测输出未做删改Opus--effort mediumAlt text:\n\n Diagram comparing two test suites. Left, \Behavioral Tests\: a single column of six test rows, four passing (green check) and two failing (red X). Right, \Parameterized Behavioral Tests\: a list of three parameters (circle, triangle, diamond) with arrows fanning out to three columns, each rerunning the same six tests tagged with that parameters shape — the circle column all passing, the triangle column with three failures, the diamond column with one failure.Sonnet--effort mediumAlt text: \Diagram contrasting plain behavioral tests (a single list of pass/fail checks) with parameterized behavioral tests, where one test template is run against multiple parameter sets (circle, triangle, diamond), producing separate pass/fail results for each.\HaikuDiagram contrasting behavioral tests (list with pass/fail results) vs parameterized behavioral tests (matrix showing same tests run with different parameter shapes, each with pass/fail outcomes).Fable--effort mediumDiagram comparing \Behavioral Tests\ (one column of six test cards, four passing with green checks, two failing with red Xs) against \Parameterized Behavioral Tests\ (a set of three parameters shown as a purple circle, triangle, and diamond, each fanning out into its own column of six test cards, with the circle column all passing and the triangle and diamond columns containing a mix of passes and failures).对比要点模型输出风格细节覆盖opus最贴近标准 alt text先给结论再按左右结构分层描述颜色绿勾/红叉、数量六行、四过两败、三参三列全部覆盖接近仓库作者手写版本sonnet偏概念归纳不列具体数字准确提炼了同一测试模板×多组参数→各自通过/失败结果的抽象关系用词最凝练haiku极简概括用 matrix 一词概括布局抓住了两种测试套件的本质对比细节最少fable最看图说话连参数符号是紫色圆形/三角形/菱形都描述出来逐列叙述每列六个测试卡片的结果篇幅最长、视觉细节最丰富一个值得注意的差异opus 和 fable 都精确指出了三列各自的失败数量三角形列三败、菱形列一败而 sonnet 和 haiku 只做了定性描述。这说明对于需要让读者精确理解图上数据的场景选对模型或通过提示词显式要求写明每个参数列的通过/失败数量是必要的。提示词措辞决定输出粒度与 ant 详述版的对照作者在运行前原本预期结果会接近 llm/include-a-file-with-message-to-ant.md 中那段非常详尽的描述。在那次实验中作者通过ant messages create命令用 base64 图片数据 提示词 Produce a concise, but descriptive alt text for this image. 得到的是一段四段式长描述A hand-drawn style diagram comparing two testing approaches, split by a vertical line.On the left, under the heading Behavioral Tests, is a single column of six rounded rectangular test rows: four outlined in green with green check-mark icons (passing) and two outlined in red with red X icons (failing), each containing black scribble lines representing text.On the right, under the heading Parameterized Behavioral Tests, a bracketed list of three purple parameter symbols — a circle, a triangle, and a diamond — sits at the top, with arrows pointing down to three separate columns of six test rows each. Every row in a column is tagged with its corresponding parameter shape on the right edge. The circle column shows all six rows passing (green with check marks). The triangle column shows three passing and three failing (red with X marks). The diamond column shows five passing and one failing. The illustration conveys that a single behavioral test, when parameterized, expands into multiple variants whose pass/fail outcomes can differ per parameter.这段描述详细到连手绘风格、黑色涂鸦线条代表文字、参数符号位于右边缘都写了出来同时准确传达了单个行为测试参数化后扩展为多个变体、各变体通过/失败结果不同的核心概念。仓库作者对此的评价是比我想要的啰嗦一点但非常精准——既有视觉描述又传达了示意图想说明的概念。把两次实验并排看结论非常清晰提示词里有没有 concise, but descriptive 这类限定语直接决定了输出是精简摘要还是逐像素级的详尽描述。所谓 alt text 的正确长度取决于使用场景——装饰性插图需要短描述承载数据对比的核心示意图则需要能让读者脱离图片也能理解结论的完整描述。复现与扩展把你的图跑一遍这套流程要在本地复现实验只需三步准备一张图片放在当前目录或改用绝对路径复制上面的命令模板把image.png换成你的图片文件名依次切换--model的取值opus、sonnet、haiku、fable收集四份输出逐一比对。可选的扩展玩法批量脚本化把命令写进 shell 循环遍历目录下多张图片配合--output-format jsonjq .result把全部结果聚合成一份对比清单提示词微调在提示词中追加列出每个参数列的通过/失败数量等硬性要求观察模型是否照做借此判断各模型遵循指令的能力成本感知关于 token 开销llm/count-number-of-tokens-in-a-file.md 给出了用tiktoken预估文本 token 数的一行命令而ant侧那次完整的图片问答在 llm/include-a-file-with-message-to-ant.md 中记录为约 3800 输入 token、328 输出 token可作为大致量级的参考换工具链若你用的是 Simon Willison 的llmCLI可参照 llm/use-the-llm-cli-with-claude-models.md 通过安装llm-claude-3插件、用-m claude-3-opus等方式调用 Claude 模型形成另一套可对照的生成链路。小结一次图片 alt text 的跨模型实验折射出三条可迁移的工程经验claude -p是高效的评测工具一行命令 文件引用语法 JSON 输出让同一任务喂给多个模型的成本趋近于零提示词是输出粒度的开关想要精炼摘要就要求 concise想要完整可用就要求 concise, but descriptive想要逐细节还原就明确列出必须覆盖的要素模型的差异真实存在同为前沿模型opus/fable 更擅长逐项还原图中的量化信息sonnet/haiku 更擅长抽象归纳选型应服务于 alt text 的实际使用场景。相关延伸阅读本仓库llm目录下的 llm/include-a-file-with-message-to-ant.mdantCLI 附带图片的完整请求格式、llm/use-the-llm-cli-with-claude-models.mdllmCLI 调用 Claude 模型、llm/count-number-of-tokens-in-a-file.mdtoken 数估算。赞分享文档教程知识库【免费下载链接】til:memo: Today I Learned项目地址https://gitcode.com/gh_mirrors/ti/til点击查看免费下载相关推荐Hive 图像生成技能实战指南用 image_generate 从提示词生成与编辑图片Hive 图像生成技能实战指南用 image_generate 从提示词生成与编辑图片 导读 本文基于 Hive 仓库内置的 preset skill 文档人工智能AI Agent多智能体MCP 服务工具调用浏览器控制Claude Agent SDK 与 Claude CLI 系统提示词对比架构差异与输出一致性实战指南Claude Agent SDK 与 Claude CLI 系统提示词对比架构差异与输出一致性实战指南 本文基于 claude code best pract文档教程AI 技能claude-seo 图片生成提示词工程实战6 组件推理简报、领域模式库与 Gemini 提示词优化指南claude seo 图片生成提示词工程实战6 组件推理简报、领域模式库与 Gemini 提示词优化指南 本篇技术指南围绕 claude seo 仓库中 ba创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表