interp-engine 1.3.2__tar.gz → 1.3.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. {interp_engine-1.3.2 → interp_engine-1.3.3}/.gitignore +4 -1
  2. {interp_engine-1.3.2 → interp_engine-1.3.3}/PKG-INFO +7 -4
  3. {interp_engine-1.3.2 → interp_engine-1.3.3}/README.md +5 -2
  4. {interp_engine-1.3.2 → interp_engine-1.3.3}/pyproject.toml +2 -2
  5. {interp_engine-1.3.2 → interp_engine-1.3.3}/LICENSE +0 -0
  6. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/README.md +0 -0
  7. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/__init__.py +0 -0
  8. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/bench_spec.py +0 -0
  9. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/cells.py +0 -0
  10. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/probe.py +0 -0
  11. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/probe_lens_stream.py +0 -0
  12. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/publish.py +0 -0
  13. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/report_bench.py +0 -0
  14. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/deepseek-v4-flash-0731__eager.json +0 -0
  15. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/deepseek-v4-flash-0731__vllm-cudagraph.json +0 -0
  16. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/deepseek-v4-flash-0731__vllm-dspark-cudagraph.json +0 -0
  17. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/deepseek-v4-flash-0731__vllm-dspark.json +0 -0
  18. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/deepseek-v4-flash-0731__vllm-static.json +0 -0
  19. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/deepseek-v4-flash-0731__vllm.json +0 -0
  20. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/gemma-2-2b__eager.json +0 -0
  21. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/gemma-2-2b__vllm-cudagraph.json +0 -0
  22. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/gemma-2-2b__vllm-static.json +0 -0
  23. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/gemma-2-2b__vllm.json +0 -0
  24. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/llama-3.1-8b__eager.json +0 -0
  25. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/llama-3.1-8b__vllm-cudagraph.json +0 -0
  26. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/llama-3.1-8b__vllm-static.json +0 -0
  27. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/llama-3.1-8b__vllm.json +0 -0
  28. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/qwen3-4b__eager.json +0 -0
  29. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/qwen3-4b__vllm-cudagraph.json +0 -0
  30. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/qwen3-4b__vllm-static.json +0 -0
  31. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/qwen3-4b__vllm.json +0 -0
  32. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/qwen3.8-27b__eager.json +0 -0
  33. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/qwen3.8-27b__vllm-cudagraph.json +0 -0
  34. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/qwen3.8-27b__vllm-static.json +0 -0
  35. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results/qwen3.8-27b__vllm.json +0 -0
  36. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/results-latest.md +0 -0
  37. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/run_all.sh +0 -0
  38. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/run_bench.py +0 -0
  39. {interp_engine-1.3.2 → interp_engine-1.3.3}/benchmarks/workloads.py +0 -0
  40. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/AGENT_INTEGRATION.md +0 -0
  41. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/ARCHITECTURE_QUIRKS.md +0 -0
  42. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/COMPATIBILITY.md +0 -0
  43. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/ENGINE_HOOK_MAPPINGS.md +0 -0
  44. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/GRADIENTS.md +0 -0
  45. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/INTERNALS.md +0 -0
  46. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/PERFORMANCE.md +0 -0
  47. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/PORTING.md +0 -0
  48. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/README.md +0 -0
  49. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/SUPPORTED_POINTS.md +0 -0
  50. {interp_engine-1.3.2 → interp_engine-1.3.3}/docs/USAGE.md +0 -0
  51. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/__init__.py +0 -0
  52. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/_loop.py +0 -0
  53. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/address.py +0 -0
  54. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/arch.py +0 -0
  55. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/attn_config.py +0 -0
  56. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/attn_scores.py +0 -0
  57. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/autograd_support.py +0 -0
  58. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/capture.py +0 -0
  59. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/chat_compose.py +0 -0
  60. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/chat_conventions.py +0 -0
  61. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/chat_formatters.py +0 -0
  62. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/cuda_preflight.py +0 -0
  63. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/dispatch.py +0 -0
  64. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/facts.py +0 -0
  65. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/hooks.py +0 -0
  66. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/lens.py +0 -0
  67. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/load.py +0 -0
  68. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/mappers.py +0 -0
  69. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/model.py +0 -0
  70. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/moe_routing.py +0 -0
  71. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/points.py +0 -0
  72. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/protocol.py +0 -0
  73. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/residual_basis.py +0 -0
  74. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/select.py +0 -0
  75. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/steer.py +0 -0
  76. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/steer_specs.py +0 -0
  77. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/sync.py +0 -0
  78. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/tokenize.py +0 -0
  79. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_backend.py +0 -0
  80. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/__init__.py +0 -0
  81. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/_demux.py +0 -0
  82. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/_hooks.py +0 -0
  83. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/_payload.py +0 -0
  84. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/_tree.py +0 -0
  85. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/attn.py +0 -0
  86. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/capture.py +0 -0
  87. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/graphs.py +0 -0
  88. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/lens/__init__.py +0 -0
  89. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/lens/intervene.py +0 -0
  90. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/lens/readout.py +0 -0
  91. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/lens/unembed.py +0 -0
  92. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/mhc.py +0 -0
  93. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/native.py +0 -0
  94. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/requests.py +0 -0
  95. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/static.py +0 -0
  96. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_capture/steering.py +0 -0
  97. {interp_engine-1.3.2 → interp_engine-1.3.3}/interp_engine/vllm_plugin.py +0 -0
  98. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/conftest.py +0 -0
  99. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/harness.py +0 -0
  100. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/model_expectations.yaml +0 -0
  101. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/synthetic_families.py +0 -0
  102. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_address.py +0 -0
  103. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_attn_config_tripwire.py +0 -0
  104. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_attn_probs_indexing.py +0 -0
  105. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_attn_scores.py +0 -0
  106. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_attn_z_gqa.py +0 -0
  107. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_autograd_support.py +0 -0
  108. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_bench_workloads.py +0 -0
  109. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_capability_refusals.py +0 -0
  110. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_capture_addressing.py +0 -0
  111. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_chat_compose.py +0 -0
  112. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_chat_formatters.py +0 -0
  113. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_chat_templates.py +0 -0
  114. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_core.py +0 -0
  115. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_cuda_preflight.py +0 -0
  116. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_doc_code_fences.py +0 -0
  117. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_eager_autograd.py +0 -0
  118. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_facts.py +0 -0
  119. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_family_points.py +0 -0
  120. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_gated_attn_out.py +0 -0
  121. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_head_contributions.py +0 -0
  122. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_hook_call_conventions.py +0 -0
  123. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_layer_kinds.py +0 -0
  124. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_load.py +0 -0
  125. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_logit_transform.py +0 -0
  126. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_mappers.py +0 -0
  127. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_mlp_internals.py +0 -0
  128. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_model_expectations.py +0 -0
  129. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_moe.py +0 -0
  130. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_multimodal_arch.py +0 -0
  131. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_new_models_gpu.py +0 -0
  132. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_no_chat_template.py +0 -0
  133. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_normalized_hook.py +0 -0
  134. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_packaging.py +0 -0
  135. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_parity_gpt2.py +0 -0
  136. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_per_layer_attn_dims.py +0 -0
  137. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_points_registry.py +0 -0
  138. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_protocol.py +0 -0
  139. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_published_benchmarks.py +0 -0
  140. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_qk_norm.py +0 -0
  141. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_qkv_layout.py +0 -0
  142. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_reasoning_spans.py +0 -0
  143. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_release.py +0 -0
  144. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_resid_mid.py +0 -0
  145. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_residual_basis.py +0 -0
  146. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_sandwich_norms.py +0 -0
  147. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_select.py +0 -0
  148. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_sliding_window_attn.py +0 -0
  149. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_small_models_gpu.py +0 -0
  150. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_static_dsv4_gpu.py +0 -0
  151. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_static_parity_gpu.py +0 -0
  152. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_static_set.py +0 -0
  153. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_static_warmup.py +0 -0
  154. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_steer_context.py +0 -0
  155. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_steer_math_parity.py +0 -0
  156. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_sync_loop.py +0 -0
  157. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_sync_parity.py +0 -0
  158. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_unified_free_functions.py +0 -0
  159. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_unresolved_families.py +0 -0
  160. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_capture_gpu.py +0 -0
  161. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_capture_scales.py +0 -0
  162. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_engine_loop.py +0 -0
  163. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_graph_path.py +0 -0
  164. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_graphs_on_gpu.py +0 -0
  165. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_hook_availability.py +0 -0
  166. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_hyper_connections.py +0 -0
  167. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_kv_isolation.py +0 -0
  168. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_new_points.py +0 -0
  169. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_only_families.py +0 -0
  170. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_plugin.py +0 -0
  171. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vllm_wire_grammar.py +0 -0
  172. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_vocabulary_boundary.py +0 -0
  173. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_worker_lens_capture_readout.py +0 -0
  174. {interp_engine-1.3.2 → interp_engine-1.3.3}/tests/test_worker_lens_readout.py +0 -0
@@ -33,4 +33,7 @@ dist/
33
33
  .venv-ci/
34
34
 
35
35
  plans/
36
- *.plan.md
36
+ *.plan.md
37
+
38
+ logs/*
39
+ logs/
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: interp-engine
3
- Version: 1.3.2
4
- Summary: A fast, standardized interpretability engine that supports most modern models and architectures. Powers Neuronpedia.
3
+ Version: 1.3.3
4
+ Summary: A fast, standardized, and easy to use interpretability engine.
5
5
  Project-URL: Homepage, https://github.com/decoderesearch/interp-engine
6
6
  Project-URL: Repository, https://github.com/decoderesearch/interp-engine
7
7
  Project-URL: Issues, https://github.com/decoderesearch/interp-engine/issues
@@ -44,10 +44,13 @@ Description-Content-Type: text/markdown
44
44
  <a href="https://join.slack.com/t/opensourcemechanistic/shared_invite/zt-3z9o0hxjl-MDX9pbATO2qESOazNDLpdQ"><img src="https://img.shields.io/badge/Slack-Open%20Source%20Mechanistic%20Interpretability-4A154B?logo=slack&logoColor=white" alt="Join the Slack"></a>
45
45
  </p>
46
46
 
47
- `interp-engine` is an interpretability engine that is fast (>40x tok/s vs HF eager), standardized (34 'points'/addresses across architectures), and easy to use and debug. It powers all of [Neuronpedia](https://neuronpedia.org)'s inference and is checked for accuracy against HF Transformers and other engines.
47
+ `interp-engine` is an interpretability engine that is fast, standardized (34 'points'/addresses across architectures), and easy to use and debug. It powers all of [Neuronpedia](https://neuronpedia.org)'s inference and is checked for accuracy against HF Transformers and other engines.
48
48
 
49
49
  <p align="center">
50
- <img src="https://neuronpedia.s3.amazonaws.com/site-assets/ie-perf.png" alt="Tokens per second while capturing and generating: eager against IE-vLLM and IE-vLLM-static on qwen3.8-27b and deepseek-v4-flash-0731, 8 requests in flight" width="100%">
50
+ <img src="https://neuronpedia.s3.amazonaws.com/site-assets/ie-benchmark.gif" alt="benchmark between ie and transformers" width="100%">
51
+ </p>
52
+ <p align="center">
53
+ <img src="https://neuronpedia.s3.amazonaws.com/site-assets/toks.png" alt="Tokens per second while capturing and generating: eager against IE-vLLM and IE-vLLM-static on qwen3.8-27b and deepseek-v4-flash-0731, 8 requests in flight" width="100%">
51
54
  </p>
52
55
  <p align="center">
53
56
  <img src="https://neuronpedia.s3.amazonaws.com/site-assets/interp-engine-demo.gif" alt="interp-engine demo gif" width="100%">
@@ -13,10 +13,13 @@
13
13
  <a href="https://join.slack.com/t/opensourcemechanistic/shared_invite/zt-3z9o0hxjl-MDX9pbATO2qESOazNDLpdQ"><img src="https://img.shields.io/badge/Slack-Open%20Source%20Mechanistic%20Interpretability-4A154B?logo=slack&logoColor=white" alt="Join the Slack"></a>
14
14
  </p>
15
15
 
16
- `interp-engine` is an interpretability engine that is fast (>40x tok/s vs HF eager), standardized (34 'points'/addresses across architectures), and easy to use and debug. It powers all of [Neuronpedia](https://neuronpedia.org)'s inference and is checked for accuracy against HF Transformers and other engines.
16
+ `interp-engine` is an interpretability engine that is fast, standardized (34 'points'/addresses across architectures), and easy to use and debug. It powers all of [Neuronpedia](https://neuronpedia.org)'s inference and is checked for accuracy against HF Transformers and other engines.
17
17
 
18
18
  <p align="center">
19
- <img src="https://neuronpedia.s3.amazonaws.com/site-assets/ie-perf.png" alt="Tokens per second while capturing and generating: eager against IE-vLLM and IE-vLLM-static on qwen3.8-27b and deepseek-v4-flash-0731, 8 requests in flight" width="100%">
19
+ <img src="https://neuronpedia.s3.amazonaws.com/site-assets/ie-benchmark.gif" alt="benchmark between ie and transformers" width="100%">
20
+ </p>
21
+ <p align="center">
22
+ <img src="https://neuronpedia.s3.amazonaws.com/site-assets/toks.png" alt="Tokens per second while capturing and generating: eager against IE-vLLM and IE-vLLM-static on qwen3.8-27b and deepseek-v4-flash-0731, 8 requests in flight" width="100%">
20
23
  </p>
21
24
  <p align="center">
22
25
  <img src="https://neuronpedia.s3.amazonaws.com/site-assets/interp-engine-demo.gif" alt="interp-engine demo gif" width="100%">
@@ -1,7 +1,7 @@
1
1
  [project]
2
2
  name = "interp-engine"
3
- version = "1.3.2"
4
- description = "A fast, standardized interpretability engine that supports most modern models and architectures. Powers Neuronpedia."
3
+ version = "1.3.3"
4
+ description = "A fast, standardized, and easy to use interpretability engine."
5
5
  readme = "README.md"
6
6
  license = "Apache-2.0"
7
7
  license-files = ["LICENSE"]
File without changes