[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f2w6271ezqel0e":3},{"code":4,"message":5,"data":6,"timestamp":62},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":22,"summary_md":23,"topic":24,"github_topics":27,"license":32,"homepage":32,"updated_at":33,"history":34,"related":35},"lyramakesmusic\u002Fneuron-explorer",22,"Steering-first neuron explorer for Qwen3.5-4B: push every MLP neuron, keep every rollout, browse the results","Python",673,71,139,4,[16],{"id":17,"title":18,"points":19,"comments":20,"posted_at":21},50233138,"Neuron Explorer for Qwen 4B",2,0,"2026-10-25","把 Qwen3.4-4B 每个 MLP 神经元推高和压低，再用 3D 探索器浏览所有 rollout。","如果你已经在小型开放权重模型上做激活引导研究，并且有可用的 GPU 时间，可以试；把它当研究工具，而非成品。\n\n## 解决什么问题\n\n你想知道单个 MLP 神经元到底做什么，而不只是 layer 22 上某个整体方向的作用。常见做法很零散：写个脚本改一个神经元，跑几条 prompt，扫一眼生成结果，换下一个神经元时脚本就丢了。由于每个神经元、每个剂量的结果都没有归档，两天后你没法把 3501 号神经元的三条 prompt 和 12000 号神经元的六条 prompt 放在一起比较，也没有基线来判断哪些效果只是噪声。\n\n这个项目把流程改成一轮批量 sweep 加一个浏览器。选定层里每个 MLP 神经元都被同样几条 prompt 分别推高和压低，每条 rollout 连同文本、token id、logprob 和 top-k 落盘，探索器再把这些结果铺在模型各层的 3D 视图上。你得到的是可持久保存、可视觉导航的结果，而不是一次性的 prompt 实验。\n\n## 有什么不同\n\n机制的关键在于把全量 sweep、随机对照组和下游 lens 放在一起。`sweep\u002Frank.py` 用独特词和 cluster mass 给神经元打分，并与 256 个随机方向对照；`sweep\u002Fsteer_lens.py` 记录每个神经元在 ±0.8 推动下 next-token logprob 的变化和 KL。对照比较才是真正有用的部分：它让你能区分有可重复效果的神经元和只是碰巧生成了一句有趣文本的神经元，而不用手工读三万条输出。\n\n剂量以离开该层时残差范数的中位数比例表示，而不是原始激活差值，因此 +0.8 是相对该层自身尺度的量。README 描述了固定的 prompt\u002F剂量网格，例如 `{who, snake, orange}` 在 −0.7 和 +0.5\u002F+0.8 下，外加每条 prompt 一个未引导基线。代价是这批 sweep 很重：每个神经元乘以若干 prompt 再乘以若干剂量，而且需要 vLLM 的 steering fork。探索器的实时聊天会本地加载 Qwen3.5-4B，用于引导、lens 和消融。\n\n投入前需要明白一点：sweep、stats 和 cache 文件是探索器的输入。仓库自带的 cache 只覆盖作者生成过的内容；你自己的层需要自己把 sweep 结果放进 `runs\u002F` 和 `stats\u002F`。另外有一个 Claude 面板，通过 MCP server 调用 `claude` CLI，能读取神经元、运行实时模型、移动地图，并在你的 home 目录里使用文件工具和 shell。这是研究时的便利，不是浏览已有 run 的必要条件。\n\n## 谁值得试\n\n适合已经有 CUDA pod、熟悉 vLLM 和 Hugging Face 内部机制、并且专门想在 Qwen3.5-4B 上跑神经元级密集引导实验的机制可解释性研究者或好奇的工程师。如果你只想交互式查看某个感兴趣的神经元，三列引导聊天和逐神经元 rollout 能省掉你自己搭框架的功夫。\n\n不适合想要一个适用于任意模型的通用可解释性工具、或者不打算跑 sweep 就想看效果的人。探索器围绕 Qwen3.5-4B 和这些脚本产出的数据构建；README 没有提供与模型无关的路径，也没有托管版本。\n\n## 使用条件与边界\n\nsweep 路径明确要求 CUDA 13 GPU pod、RhizoNymph\u002Fvllm 的 steering fork，并由 `setup_pod.sh` 写出环境文件。探索器可以在 MPS、CUDA 或 CPU 上加载模型，但重头在 sweep。仓库未声明 license，在基于它继续开发前需要确认使用条款是否合适。\n\nClaude 面板有单独的准备工作：必须安装并登录 `claude` CLI，且服务端说明它只响应本机上的页面和工具。这个 agent 拥有你 home 目录里的文件工具和 shell，应把它当作能访问本地文件的可执行环境，而不是隔离沙箱。日常维护更多是研究工作流问题：增加层时保持 runs、stats 和 cache 目录一致，README 只通过 `merge_runs.py` 和 depth report 给了粗略说明。\n\n## HotRepo 点评\n\nHotRepo 从 2026-10-24 开始追踪这个仓库，2026-10-26 在 NEW-REPOSITORY 榜（python，并非总榜）上观察到它以 673 总 stars 排到 #22。这只是四天新仓库的一个带日期快照，不是每日增长序列，因此还无法判断热度能否持续。投入 GPU 时间前，先确认决定适配性的那一点：sweep 脚本能否接受你自己数据所需的层和 stats 布局。\n\n[项目源码与说明](https:\u002F\u002Fgithub.com\u002Flyramakesmusic\u002Fneuron-explorer)",{"slug":25,"name":26},"machine-learning","机器学习",[28,29,30,31],"interpretability","mechanistic-interpretability","qwen","steering",null,"2026-10-26T00:46:16Z",[],[36,40,45,49,53,58],{"full_name":37,"one_liner":38,"language":10,"stars":39},"unslothai\u002Funsloth","一个在本地运行和微调大模型与扩散模型的桌面应用，适合想在自有显卡上训练模型的人。",78537,{"full_name":41,"one_liner":42,"language":43,"stars":44},"heterodoxin\u002FAbliteratedOutTheBox","llama.cpp 的分支，在推理时剥离受支持模型的拒答，磁盘权重和普通提示保持不变。","C++",104,{"full_name":46,"one_liner":47,"language":43,"stars":48},"NVIDIA\u002Fcutlass","为 NVIDIA GPU 编写高性能 GEMM 与 Tensor Core 内核的 CUDA 模板与 Python DSL 库。",10652,{"full_name":50,"one_liner":51,"language":43,"stars":52},"openvinotoolkit\u002Fopenvino","把训练好的深度学习模型转换并部署到 Intel CPU、GPU、NPU 上的推理工具包。",11062,{"full_name":54,"one_liner":55,"language":56,"stars":57},"caveman-ai\u002Ftrim-1","一个 1.2 MB 的按行筛选模型，只保留 AI 智能体当前问题所需的上下文行。","Go",188,{"full_name":59,"one_liner":60,"language":43,"stars":61},"ml-explore\u002Fmlx","面向 Apple 芯片的 NumPy 风格数组框架，用惰性执行和统一内存来训练、运行模型。",28920,1792984470]