自然语言驱动的 Transformer 可视化解释器:基础设计
自然语言驱动的 Transformer 可视化解释器,是一个面向初学者的交互式模型理解工具:复用 poloclub/transformer-explainer 这类教学式前端范式,让用户用自然语言提问,并在受约束的解释框架内查看真实模型运行产生的 token、attention、logits、layer-wise prediction。
它不是「任意模型万能解释器」,而是:
在有限模型家族、有限解释任务、固定可视化组件和真实模型数据约束下,帮助小白理解 Transformer 内部计算过程的 AI-assisted model explainer。
现有工具各有边界:
| 工具 | 强项 | 不足 | | --- | --- | --- | | Netron | 通用结构图 | 不解释机制 | | torchview | 计算图与 shape | 偏工程,不适合小白 | | BertViz | attention 可视化 | 覆盖面窄 | | TransformerLens | 机制解释基础设施 | 偏研究代码 | | CircuitsVis | 可视化组件 | 不是完整产品 |
更合理的方向是收窄范围:
- 先支持 decoder-only Transformer 小模型
- 用真实 forward pass 采集解释数据
- 用固定 schema 约束自然语言规划
- 用固定前端组件渲染
- 让 LLM 只负责把数据翻译成小白能懂的文案
这是 Transformer 可视化 产品化的关键纪律:LLM 可以组织解释,但不能发明证据。
第一阶段目标
- 中英文自然语言提问
- 受约束 explanation plan
- 真实模型数据驱动
- Transformer Explainer 风格前端
- 面向初学者的解释语言
- 允许人工干预:切换 layer / head / token,高级模式编辑 plan
非目标
- 任意深度学习模型
- 自动生成任意 React 页面
- 把 attention 说成完整因果解释
- 默认支持 7B/14B 大模型浏览器端推理
- 完整 mechanistic interpretability research platform
- 让 LLM 编造权重语义或 neuron 语义
主要用户:本科生 / 研究生、课堂演示者、AI 可视化与可解释方向的研究者。
典型问题:
1这个模型接下来会预测什么?2为什么它预测 Paris?3第 5 层在看什么?4某个 token 的概率是怎么变化的?5MLP 和 attention 有什么区别?
系统不需要回答所有开放问题。无法归类时,应明确 unsupported,并给出可问示例。
1用户输入 prompt + 自然语言问题2↓3LLM Planner → 受约束 Explanation Plan4↓5后端运行模型并采集真实数据6↓7LLM Explainer 基于真实 JSON 生成文案8↓9前端用固定组件渲染10↓11用户追问 / 切换 layer·head·token / 编辑 plan
页面大致分三块:Prompt 输入、可视化画布、自然语言解释面板;底部是 layer / head / token / plan JSON 控制。
三种模式:
| 模式 | 特点 | | --- | --- | | 初学者 | 隐藏复杂参数,类比解释 | | 进阶 | 暴露 layer/head/token 与更多数值 | | 研究者 | 暴露 plan JSON、原始矩阵、导出数据 |
模型家族
第一阶段只支持 decoder-only Transformer。推荐:
sshleifer/tiny-gpt2distilgpt2gpt2EleutherAI/pythia-70m
原因:与 transformer-explainer 范式匹配、可本地运行、生态成熟、便于采集 attention / hidden states / logits。
Intent 与 Views
1type ExplainIntent =2| 'overview_model'3| 'explain_tokenization'4| 'explain_attention'5| 'explain_next_token_prediction'6| 'compare_token_probabilities'7| 'inspect_layer'8| 'inspect_head'9| 'explain_mlp_vs_attention'10| 'unsupported';1112type ExplainView =13| 'model_overview'14| 'tokenization'15| 'embedding_flow'16| 'layer_stack'17| 'attention_matrix'18| 'attention_head_view'19| 'mlp_block'20| 'residual_stream'21| 'logit_lens'22| 'top_token_probs';
LLM 不能直接生成 UI,只能选择固定 views。每个 view 对应固定数据 schema 与固定组件。这套约束接近 状态机护栏:开放输入,封闭动作空间。
1interface ExplainRequest {2modelId: string;3prompt: string;4question: string;5level: 'beginner' | 'intermediate' | 'researcher';6locale: 'zh-CN' | 'en-US';7options?: { targetToken?: string; layer?: number; head?: number; topK?: number };8}910interface ExplanationPlan {11intent: ExplainIntent;12modelFamily: 'decoder_only_transformer';13views: ExplainView[];14focus?: { tokenIndex?: number; tokenText?: string; layer?: number; head?: number };15level: 'beginner' | 'intermediate' | 'researcher';16unsupportedReason?: string;17}1819interface ModelRunData {20model: { id: string; family: 'decoder_only_transformer'; layers: number; heads: number };21input: { prompt: string; tokens: { index: number; text: string; tokenId: number }[] };22output: { nextTokenTopK: { token: string; probability: number; logit: number }[] };23attention?: AttentionViewData;24logitLens?: LogitLensData;25}
Explainer 输出必须带:summary、steps(绑定 view + evidenceFields)、caveats、followUpQuestions。
推荐后端:Python FastAPI + HuggingFace / TransformerLens + Pydantic + LLM planner/explainer。
核心 API:POST /api/explain。
Planner 规则:
- 只能输出 JSON
- intent / views 必须来自允许列表
- 超范围就
unsupported - 禁止生成 UI 代码与不存在的分析字段
Explainer 规则:
- 只能依据给定 JSON 解释
- 禁止声称模型「理解 / 知道 / 认为」
- 使用「倾向于预测」「该层提高了某 token 的 logit」等措辞
- 必须提醒:attention 不是完整因果解释
前端路线:
- Fork 改造
transformer-explainer:继承视觉与交互 - 独立项目复刻教学范式:架构更自由
公开设计建议:独立项目优先;若给上游贡献,先做 i18n、文案配置化、schema 文档这类小 PR。
核心组件:TokenStrip、LayerStack、AttentionMatrix、LogitLensChart、TopTokenProbabilityBars、ExplanationPanel、PlanEditor。
必须有:
- 支持
gpt2或distilgpt2 - prompt + 自然语言问题
- Planner 输出结构化 plan
- 真实 token / top-k / attention / logit lens
- 前端展示 tokenization、attention head、top token probs、logit lens
刻意不做:任意模型上传、自动生成页面、大模型浏览器端默认路径、无证据的自由解释。
自然语言可以降低入门门槛,但不能成为「万能解释权」。先定义模型家族、intent、view family 与真实数据契约,再让 LLM 当 planner / narrator。这样做出的 可视分析 工具,才既适合教学,也经得起追问。
- Polo Club Transformer Explainer
- Polo Club 风格模型解释器选题清单
- TransformerLens 文档