ra-jit
Rust 코드를 실시간으로 편집하고, 실행 중인 프로그램에서 밀리초 단위로 변화를 확인
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
Steering-first neuron explorer for Qwen3.5-4B: push every MLP neuron, keep every rollout, browse the results
개발 도구Python · JavaScriptGitHub @lyramakesmusic직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
설치형 프로젝트는 배포 도메인 없이도 확인할 수 있습니다. 개인 저장소는 GitHub 로그인으로, 조직 저장소는 위의 저장소 확인 파일로 직접 확인해 주세요.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Steering-first neuron explorer for Qwen3.5-4B. Every MLP neuron in a layer is pushed up and down on a few prompts, every rollout is kept, and the explorer lays the results out over a 3D view of the model.
uv sync
uv run python explorer/server.py # http://localhost:8791
Reads sweep runs from runs/ and per-layer stats from stats/, both produced by the sweep below; the caches in
explorer/cache/ ship with the repo. Loads Qwen3.5-4B locally (MPS, CUDA or CPU) for live
steered chat, lens, connections and live inference over your own text.
writes places
neurons with similar down-projection columns next to each other.lens searches the steer and logit
lenses for a token, fires runs your text through the model and filters neurons by activation.explorer/static/i18n.js.claude CLI (installed and
logged in) with the explorer as an MCP server (explorer/agent_mcp.py). It reads neurons, cones and lenses, runs the
live model (steering, activations, next-token logprobs, ablations), moves the map, list and highlights, and has file
tools and a shell in your home folder. Its prompt is explorer/agent_prompt.md plus explorer/agent_methodology.md, and
explorer/agent_prompt.local.md when present (untracked, for your own additions);
EXPLORER_CLAUDE_MODEL picks the model. The server answers only pages and tools on this machine.Runs on a CUDA 13 GPU pod with the steering fork of vLLM (RhizoNymph/vllm).
bash sweep/setup_pod.sh # fork, deps, model; writes /workspace/env.sh
python sweep/neuron_stats.py --layers 22 --tokens 2000000 --out stats/q35-4b
python sweep/steer_sweep.py --stats stats/q35-4b_L22.npz --design main_rel --dose-unit rel \
--neurons all --random-controls 256 --run q35-4b-L22
sweep/run_depth.sh "4 9 13 17" 384 64 # random-subset sweep across several layers
main_rel doses are fractions of the median residual norm leaving the layer: {who, snake, orange} × {−0.7, +0.5, +0.8}
and {free} × {+3}, plus one unsteered baseline per prompt.
| script | output |
|---|---|
sweep/neuron_stats.py | per-neuron activation extremes by sign regime, down columns, residual norms |
sweep/steer_sweep.py | runs/<run>.jsonl: text, token ids, logprobs, top-k per step; optional activation captures |
sweep/rank.py | runs/<run>.units.jsonl: distinctive words, cluster mass, percentile against controls |
sweep/steer_lens.py | stats/steer_lens_L{l}.npz: next-token Δlogprob and KL for ±0.8 pushes on every neuron |
sweep/depth_report.py | runs/depth_report.json: per-layer share of neurons above controls, coherence, top units |
sweep/shift.py | word-shift score against controls, all words counted |
sweep/merge_runs.py | joins sharded runs of one layer |
sweep/check_equivalence.py | HF vs vLLM steering and capture agreement |
sweep/bench.py, sweep/peek.py | throughput conditions; terminal views of a run |
explorer/build_embeddings.py | runs/<run>.umap.json |
explorer/build_layout.py | explorer/cache/layout_writes.npz |
explorer/build_connections.py | explorer/cache/connections.npz: each neuron's 24 strongest direct-path links up and down |
sweep/capture_prefill.py | captures/<run>.mlp_in.npy: MLP input at the last prompt token at the run's capture layers, steered |
research_log.md holds the findings and reasoning; NOTES.md the source notes.
MIT, see LICENSE.