卡码笔记-最强八股文
首页
计算机基础
C++
Java
Go
🔥大模型🔥
  • 大模型面经
  • Java面经
  • C++面经
简历专栏
秋招投递表
代码随想录 (opens new window)
首页
计算机基础
C++
Java
Go
🔥大模型🔥
  • 大模型面经
  • Java面经
  • C++面经
简历专栏
秋招投递表
代码随想录 (opens new window)
  • 本栏必读

    • 卡码大模型专栏介绍
  • 大模型面经

  • 大模型动态

  • Claude深度解读

  • 入门认知

  • Prompt与调用基础

  • RAG检索增强

  • Agent智能体

  • 微调认知

  • 部署与工程化

  • 多模态入门

  • Transformer原理

  • 手撕Transformer

  • 模型家族与Llama架构

# 大模型专栏(llm/)配图规范

本文件是大模型专栏(llm/ 下 intro/、app/、transformer/ 等所有子目录)画图时的专属补充规范。

通用规则(经典色板、drawio 样式、导出命令、pngquant 压缩、图床上传)见仓库根目录 CLAUDE.md 的「配图规范」一节,这里不重复,只写本专栏特有的约定。

# 一、最高原则:图要展现原理,不要堆文字

这是本专栏配图最重要的一条,也是最容易踩的坑。

  • 图不是用来排版文字的。 一张图里如果全是文字框堆叠(比如对比表、要点罗列),那它本质是张表,应该用 markdown 表格,不要画 drawio。
  • 图要展现「文字段落讲的那个原理」——结构、机制、流转、变化、层次。让读者一眼看懂「发生了什么」,而不是读完一堆方框里的字。
  • 自检:把图里的文字全删掉,光看形状/颜色/箭头,还能不能看出这张图在讲什么?看不出来,就说明你在用图排版文字,重画。

举例(本专栏已落地的做法):

  • 讲「微调改参数、RAG 不改参数」→ 画模型权重的格子矩阵:RAG 侧格子全灰(冻结),微调侧格子由灰变蓝(被改写)。用颜色变化展现「参数动没动」,而不是写两段文字说明。
  • 讲「成本 Prompt < RAG < 微调」→ 画一条从左到右的渐变箭头轴,而不是列三行字。
  • 讲「混合架构」→ 用两条不同颜色的线(知识线 / 行为线)汇入模型,展现「两个来源各管各的」。

节点文字精简到关键词(如「缺知识」「RAG」),详细解释放在正文里,不要塞进图里。

# 问答 / 话术型文章(如「面试官怎么问 X」)也要配图

这类文章看似全是问答和话术,最容易踩两个坑:要么觉得「没法画」只配一张甚至不配,要么把「踩雷答法 vs 参考话术」这种对比硬画成方块(典型堆文字)。

其实话术文章的骨架里藏着可视化结构,从这三类去找,就能配出真原理图(都不是堆文字):

  • 梯度 / 分界图:把「层层递进 + 一条边界线」画出来。如「面试官的追问梯度」——问题从简历一句话逐层加深,红色虚线标出「应用岗必答区 / 算法岗深水区」的分界。展现的是深度递进和回答边界,纯文字讲不清。
  • 归类 / 解码图:把零散问题归到几条主线上。如「四条线」泳道图——选型 / 数据 / 评估 / 成本四条泳道,高频问题各归其位,教读者「拿到任何题先归类」。展现的是映射关系。
  • 改前 / 改后对比图:如「怎么证明微调有收益」——基线模型 vs 微调后模型跑同一测试集,再 fan-out 到任务 / 质量 / 成本 / 风险四维。展现的是对比结构,比列指标清单直观(参考根 CLAUDE.md「改前/改后对比 → 画图」)。

一篇话术文章配 2-3 张这种图刚好,卡在「总论分界 → 方法骨架 → 关键一节的对比」三个节点上,不堆砌也不空。已落地示例见 app/finetuning_interview.md(面试官怎么问微调)的三张图。

# 二、每张图必带的三个品牌元素

本专栏所有 drawio 图,导出前必须包含以下三个元素(从已有图复制粘贴即可,不要漏):

  1. K logo 图片:shape=image;aspect=fixed;image=data:image/png,...,约 79×79,放标题附近的角落(右上或左上)。base64 较长,直接从任意一个已有的 llm/**/drawio/*.drawio 文件里复制整个 logo mxCell。
  2. 旋转水印:text;...textOpacity=35;rotation=-20;fontColor=#666666; value 为 公众号:卡码大模型,斜放在画布中部偏下的留白处。
  3. 站点署名:text;...fontColor=#666666;align=right; value 为 卡码笔记:https://notes.kamacoder.com/,放右下角。

最省事的做法:新图直接拿一个最近的同类 drawio 当模板改,三个元素自然带过来。

# 三、文件组织与命名

  • drawio 源文件统一放在文章所在目录的 drawio/ 子目录下(如 llm/app/drawio/)。
  • 命名:<文章英文名>_NN_<简短英文描述>.drawio,NN 为两位序号,如 finetuning_vs_rag_01_essence.drawio。
  • 导出的 PNG 上传图床后删除本地文件(见根 CLAUDE.md),仓库里只保留 .drawio 源文件,不保留 PNG。

# 四、markdown 里的插图写法

每张图在正文里按这个模式插入:

<!-- drawio源文件: ./drawio/xxx_01_yyy.drawio -->

![能被搜索/无障碍读到的描述性 alt](图床返回的 url)

这张图回答的是:……(一句话点明图在讲什么,再展开 2-3 句解读,和正文呼应)
1
2
3
4
5
  • <!-- drawio源文件 --> 注释必带,方便以后回找源文件改图。
  • alt 文字写成「描述这张图内容」的完整短句,利于 SEO 和无障碍,不要写成「图1」这种。
  • 图后紧跟「这张图回答的是……」的解读,把图和它对应的段落原理绑在一起。

# 五、改图后的流程

  1. 改完 .drawio 后,先用 CLI 导出 PNG 自检能否正常打开、布局有没有错位(见根 CLAUDE.md 导出命令)。
  2. 导出图先给用户确认效果,确认后再上传图床。
  3. 上传成功后删除本地 PNG,把返回的 url 填进 markdown。

# 六、文章篇幅与配图数量的平衡

基于 claude/loop_engineering_guide.md 的创作经验:

# 篇幅控制

  • 目标行数:150 行左右(包括 frontmatter 和空行)
  • 长文章容易失焦,读者难以抓住重点
  • 精简方法:
    • 砍掉重复解释,每个概念只讲一次
    • 把详细示例移到引用的其他文章中
    • 关键步骤保留,次要细节省略
    • 结尾简短有力,不总结全文

# 配图数量

  • 每篇文章 2-4 张图最合适
  • 太少(1 张或没有)→ 文章单薄、不够直观
  • 太多(5 张以上)→ 画图成本高、容易堆砌
  • 配图节奏:开篇判断图 → 中间核心原理图 → 结尾实践图

# 图与文的比例

  • 图要承载关键决策和原理,不要只是装饰
  • 文字讲「为什么」和「怎么做细节」,图讲「结构」和「流程」
  • 如果一个段落需要 5 张图才能讲清楚,说明这个主题可以拆成 2-3 篇文章

# 七、drawio 导出格式选择

基于实践经验:

# JPG vs PNG

  • JPG:适合复杂图、颜色丰富的图,文件更小(通常是 PNG 的 30-50%)
  • PNG:适合简单图、对比强烈的图,边缘更清晰
  • 本专栏默认用 JPG(--format jpg --quality 85),除非图特别简单(纯线框图)才用 PNG

# 导出参数

# JPG 导出(推荐)
"/Applications/draw.io.app/Contents/MacOS/draw.io" \
  --export --format jpg --scale 1.5 --quality 85 \
  --output 输出.jpg 输入.drawio

# PNG 导出(备选)
"/Applications/draw.io.app/Contents/MacOS/draw.io" \
  --export --format png --scale 1.5 \
  --output 输出.png 输入.drawio
1
2
3
4
5
6
7
8
9
  • scale 1.5:兼顾清晰度和文件大小
  • quality 85(JPG):视觉无损,但文件小很多
  • PNG 不需要 pngquant 压缩,直接上传
Last Updated: 7/8/2026, 5:36:40 PM

评论

验证登录状态...

侧边栏 侧边栏
夜间模式 夜间
卡码简历 卡码简历
代码随想录 代码随想录
卡码投递表 卡码投递表🔥
2026实习校招群 2026群
添加客服微信 2026实习校招客服微信 PS:通过微信后,请发送姓名-学校-年级-2026实习/校招
支持卡码笔记 支持卡码笔记
鼓励/支持/赞赏Carl 卡码笔记赞赏码
1. 如果感觉本站对你很有帮助,也可以请Carl喝杯奶茶,金额大小不重要,心意已经收下
2. 希望大家都能梦想成真,有好的前程,加油💪