Skip to main content

Package for interpreting and manipulating the internals of deep learning models.

Project description

nnsight

Interpret and manipulate the internals of deep learning models

Documentation | GitHub | Discord | Forum | Twitter | Paper

Ask DeepWiki


About

nnsight is a Python library that enables interpreting and intervening on the internals of deep learning models. It provides a clean, Pythonic interface for:

  • Accessing activations at any layer during forward passes
  • Modifying activations to study causal effects
  • Computing gradients with respect to intermediate values
  • Batching interventions across multiple inputs efficiently

Originally developed in the NDIF team at Northeastern University, nnsight supports local execution on any PyTorch model and remote execution on large models via the NDIF infrastructure.

📖 For a deeper technical understanding of nnsight's internals (tracing, interleaving, the Envoy system, etc.), see NNsight.md.


Installation

pip install nnsight

Agents

Inform LLM agents how to use nnsight using one of these methods:

Skills Repository

Claude Code

# Open Claude Code terminal
claude

# Add the marketplace (one time)
/plugin marketplace add https://github.com/ndif-team/skills.git

# Install all skills
/plugin install nnsight@skills

OpenAI Codex

# Open OpenAI Codex terminal
codex

# Install skills
skill-installer install https://github.com/ndif-team/skills.git

Context7 MCP

Alternatively, use Context7 to provide up-to-date nnsight documentation directly to your LLM. Add use context7 to your prompts or configure it in your MCP client:

{
  "mcpServers": {
    "context7": {
      "url": "https://mcp.context7.com/mcp"
    }
  }
}

See the Context7 README for full installation instructions across different IDEs.

Documentation Files

You can also add our documentation files directly to your agent's context:

  • CLAUDE.md — Comprehensive guide for AI agents working with nnsight
  • NNsight.md — Deep technical documentation on nnsight's internals

Quick Start

from nnsight import LanguageModel

model = LanguageModel('openai-community/gpt2', device_map='auto', dispatch=True)

with model.trace('The Eiffel Tower is in the city of'):
    # Intervene on activations (must access in execution order!)
    model.transformer.h[0].output[0][:] = 0
    
    # Access and save hidden states from a later layer
    hidden_states = model.transformer.h[-1].output[0].save()
    
    # Get model output
    output = model.output.save()

print(model.tokenizer.decode(output.logits.argmax(dim=-1)[0]))

💡 Tip: Always call .save() on values you want to access after the trace exits. Without .save(), values are garbage collected. You can also use nnsight.save(value) as an alternative.

Accessing Activations

with model.trace("The Eiffel Tower is in the city of"):
    # Access attention output
    attn_output = model.transformer.h[0].attn.output[0].save()
    
    # Access MLP output
    mlp_output = model.transformer.h[0].mlp.output.save()

    # Access any layer's output (access in execution order)
    layer_output = model.transformer.h[5].output[0].save()
    
    # Access final logits
    logits = model.lm_head.output.save()

Note: GPT-2 transformer layers return tuples where index 0 contains the hidden states.

Modifying Activations

In-Place Modification

with model.trace("Hello"):
    # Zero out all activations
    model.transformer.h[0].output[0][:] = 0
    
    # Modify specific positions
    model.transformer.h[0].output[0][:, -1, :] = 0  # Last token only

Replacement

with model.trace("Hello"):
    # Add noise to activations
    hs = model.transformer.h[-1].mlp.output.clone()
    noise = 0.01 * torch.randn(hs.shape)
    model.transformer.h[-1].mlp.output = hs + noise
    
    result = model.transformer.h[-1].mlp.output.save()

Batching with Invokers

Process multiple inputs in one forward pass. Each invoke runs its code in a separate worker thread:

  • Threads execute serially (no race conditions)
  • Each thread waits for values via .output, .input, etc.
  • Invokes run in the order they're defined
  • Cross-invoke references work because threads run sequentially
  • Within an invoke, access modules in execution order only
with model.trace() as tracer:
    # First invoke: worker thread 1
    with tracer.invoke("The Eiffel Tower is in"):
        embeddings = model.transformer.wte.output  # Thread waits here
        output1 = model.lm_head.output.save()
    
    # Second invoke: worker thread 2 (runs after thread 1 completes)
    with tracer.invoke("_ _ _ _ _ _"):
        model.transformer.wte.output = embeddings  # Uses value from thread 1
        output2 = model.lm_head.output.save()

Prompt-less Invokers

Use .invoke() with no arguments to operate on the entire batch:

with model.trace() as tracer:
    with tracer.invoke("Hello"):
        out1 = model.lm_head.output[:, -1].save()
    
    with tracer.invoke(["World", "Test"]):
        out2 = model.lm_head.output[:, -1].save()
    
    # No-arg invoke: operates on ALL 3 inputs
    with tracer.invoke():
        out_all = model.lm_head.output[:, -1].save()  # Shape: [3, vocab]

Multi-Token Generation

Use .generate() for autoregressive generation:

with model.generate("The Eiffel Tower is in", max_new_tokens=3) as tracer:
    output = model.generator.output.save()

print(model.tokenizer.decode(output[0]))
# "The Eiffel Tower is in the city of Paris"

Iterating Over Generation Steps

with model.generate("Hello", max_new_tokens=5) as tracer:
    logits = list().save()
    
    # Iterate over all generation steps
    for step in tracer.iter[:]:
        logits.append(model.lm_head.output[0][-1].argmax(dim=-1))

print(model.tokenizer.batch_decode(logits))

Conditional Interventions Per Step

with model.generate("Hello", max_new_tokens=5) as tracer:
    outputs = list().save()
    
    for step_idx in tracer.iter[:]:
        if step_idx == 2:
            model.transformer.h[0].output[0][:] = 0  # Only on step 2

        outputs.append(model.transformer.h[-1].output[0])

⚠️ Warning: Code after tracer.iter[:] never executes! The unbounded iterator waits forever for more steps. Put post-iteration code in a separate tracer.invoke(). When using multiple invokes, do not pass input to generate() — pass it to the first invoke:

with model.generate(max_new_tokens=3) as tracer:
    with tracer.invoke("Hello"):  # First invoker — pass input here
        for step in tracer.iter[:]:
            hidden = model.transformer.h[-1].output.save()
    with tracer.invoke():  # Second invoker — runs after generation
        final = model.output.save()  # Now works!

Gradients

Gradients are accessed on tensors (not modules), only inside a with tensor.backward(): context:

with model.trace("Hello"):
    hs = model.transformer.h[-1].output[0]
    hs.requires_grad_(True)
    
    logits = model.lm_head.output
    loss = logits.sum()
    
    with loss.backward():
        grad = hs.grad.save()

print(grad.shape)

Model Editing

Create persistent model modifications:

# Create edited model (non-destructive)
with model.edit() as model_edited:
    model.transformer.h[0].output[0][:] = 0

# Original model unchanged
with model.trace("Hello"):
    out1 = model.transformer.h[0].output[0].save()

# Edited model has modification
with model_edited.trace("Hello"):
    out2 = model_edited.transformer.h[0].output[0].save()

assert not torch.all(out1 == 0)
assert torch.all(out2 == 0)

Scanning (Shape Inference)

Get shapes without running the full model. Like all tracing contexts, .save() is required to persist values outside the block:

import nnsight

with model.scan("Hello"):
    dim = nnsight.save(model.transformer.h[0].output[0].shape[-1])

print(dim)  # 768

Caching Activations

Automatically cache outputs from modules:

with model.trace("Hello") as tracer:
    cache = tracer.cache()

# Access cached values
layer0_out = cache['model.transformer.h.0'].output
print(cache.model.transformer.h[0].output[0].shape)

Sessions

Group multiple traces for efficiency:

with model.session() as session:
    with model.trace("Hello"):
        hs1 = model.transformer.h[0].output[0].save()
    
    with model.trace("World"):
        model.transformer.h[0].output[0][:] = hs1  # Use value from first trace
        hs2 = model.transformer.h[0].output[0].save()

Remote Execution (NDIF)

Run on NDIF's remote infrastructure:

from nnsight import CONFIG
CONFIG.set_default_api_key("YOUR_API_KEY")

model = LanguageModel("meta-llama/Meta-Llama-3.1-8B")

with model.trace("Hello", remote=True):
    hidden_states = model.model.layers[-1].output.save()

Check available models at nnsight.net/status

vLLM Integration

High-performance inference with vLLM:

from nnsight.modeling.vllm import VLLM

model = VLLM("gpt2", tensor_parallel_size=1, dispatch=True)

with model.trace("Hello", temperature=0.0, max_tokens=5) as tracer:
    logits = list().save()
    
    for step in tracer.iter[:]:
        logits.append(model.logits)

NNsight for Any PyTorch Model

Use NNsight for arbitrary PyTorch models:

from nnsight import NNsight
import torch

net = torch.nn.Sequential(
    torch.nn.Linear(5, 10),
    torch.nn.Linear(10, 2)
)

model = NNsight(net)

with model.trace(torch.rand(1, 5)):
    layer1_out = model[0].output.save()
    output = model.output.save()

Source Tracing

Access intermediate operations inside a module's forward pass. .source rewrites the forward method to hook into all operations:

# Discover available operations
print(model.transformer.h[0].attn.source)
# Shows forward method with operation names like:
#   attention_interface_0 -> 66  attn_output, attn_weights = attention_interface(...)
#   self_c_proj_0         -> 79  attn_output = self.c_proj(attn_output)

# Access operation values
with model.trace("Hello"):
    attn_out = model.transformer.h[0].attn.source.attention_interface_0.output.save()

Ad-hoc Module Application

Apply modules out of their normal execution order:

with model.trace("The Eiffel Tower is in the city of"):
    # Get intermediate hidden states
    hidden_states = model.transformer.h[-1].output[0]
    
    # Apply lm_head to get "logit lens" view
    logits = model.lm_head(model.transformer.ln_f(hidden_states))
    tokens = logits.argmax(dim=-1).save()

print(model.tokenizer.decode(tokens[0]))

Core Concepts

Deferred Execution with Thread-Based Synchronization

NNsight uses deferred execution with thread-based synchronization:

  1. Code extraction: When you enter a with model.trace(...) block, nnsight captures your code (via AST) and immediately exits the block
  2. Thread execution: Your code runs in a separate worker thread
  3. Value waiting: When you access .output, the thread waits until the model provides that value
  4. Hook-based injection: The model uses PyTorch hooks to provide values to waiting threads
with model.trace("Hello"):
    # Code runs in a worker thread
    # Thread WAITS here until layer output is available
    hs = model.transformer.h[-1].output[0]
    
    # .save() marks the value to persist after the context exits
    hs = hs.save()
    # Alternative: hs = nnsight.save(hs)

# After exiting, hs contains the actual tensor
print(hs.shape)  # torch.Size([1, 2, 768])

Key insight: Your code runs directly. When you access .output, you get the real tensor - your thread just waits for it to be available.

Important: Within an invoke, you must access modules in execution order. Accessing layer 5's output before layer 2's output will cause a deadlock (layer 2 has already been executed).

Key Properties

Every module has these special properties. Accessing them causes the worker thread to wait for the value:

Property Description
.output Module's forward pass output (thread waits)
.input First positional argument to the module
.inputs All inputs as (args_tuple, kwargs_dict)

Note: .grad is accessed on tensors (not modules), only inside a with tensor.backward(): context.

Module Hierarchy

Print the model to see its structure:

print(model)
# GPT2LMHeadModel(
#   (transformer): GPT2Model(
#     (h): ModuleList(
#       (0-11): 12 x GPT2Block(
#         (attn): GPT2Attention(...)
#         (mlp): GPT2MLP(...)
#       )
#     )
#   )
#   (lm_head): Linear(...)
# )

Troubleshooting

Error Cause Fix
OutOfOrderError: Value was missed... Accessed modules in wrong order Access modules in forward-pass execution order
NameError after tracer.iter[:] Code after unbounded iter doesn't run Use separate tracer.invoke() for post-iteration code; pass input to first invoke, not generate()
ValueError: Cannot invoke during an active model execution Passed input to generate() while using multiple invokes Use model.generate(max_new_tokens=N) with no input; pass prompt to first tracer.invoke("Hello")
ValueError: Cannot return output of Envoy... No input provided to trace Provide input: model.trace(input) or use tracer.invoke(input)

For more debugging tips, see the documentation.


More Resources

  • Documentation — Tutorials, guides, and API reference
  • NNsight.md — Deep technical documentation on nnsight's internals
  • CLAUDE.md — Comprehensive guide for AI agents working with nnsight
  • Performance Report — Detailed performance analysis and benchmarks

Citation

If you use nnsight in your research, please cite:

@article{fiottokaufman2024nnsightndifdemocratizingaccess,
      title={NNsight and NDIF: Democratizing Access to Foundation Model Internals}, 
      author={Jaden Fiotto-Kaufman and Alexander R Loftus and Eric Todd and Jannik Brinkmann and Caden Juang and Koyena Pal and Can Rager and Aaron Mueller and Samuel Marks and Arnab Sen Sharma and Francesca Lucchetti and Michael Ripa and Adam Belfki and Nikhil Prakash and Sumeet Multani and Carla Brodley and Arjun Guha and Jonathan Bell and Byron Wallace and David Bau},
      year={2024},
      eprint={2407.14561},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2407.14561}, 
}

Project details


Release history Release notifications | RSS feed

This version

0.7.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nnsight-0.7.0.tar.gz (1.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

nnsight-0.7.0-cp314-cp314t-win_amd64.whl (267.7 kB view details)

Uploaded CPython 3.14tWindows x86-64

nnsight-0.7.0-cp314-cp314t-win32.whl (267.3 kB view details)

Uploaded CPython 3.14tWindows x86

nnsight-0.7.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (273.4 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

nnsight-0.7.0-cp314-cp314t-macosx_11_0_arm64.whl (265.1 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

nnsight-0.7.0-cp314-cp314-win_amd64.whl (267.6 kB view details)

Uploaded CPython 3.14Windows x86-64

nnsight-0.7.0-cp314-cp314-win32.whl (267.2 kB view details)

Uploaded CPython 3.14Windows x86

nnsight-0.7.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (272.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

nnsight-0.7.0-cp314-cp314-macosx_11_0_arm64.whl (265.0 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

nnsight-0.7.0-cp313-cp313-win_amd64.whl (267.5 kB view details)

Uploaded CPython 3.13Windows x86-64

nnsight-0.7.0-cp313-cp313-win32.whl (267.1 kB view details)

Uploaded CPython 3.13Windows x86

nnsight-0.7.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (272.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

nnsight-0.7.0-cp313-cp313-macosx_11_0_arm64.whl (265.0 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

nnsight-0.7.0-cp312-cp312-win_amd64.whl (267.5 kB view details)

Uploaded CPython 3.12Windows x86-64

nnsight-0.7.0-cp312-cp312-win32.whl (267.1 kB view details)

Uploaded CPython 3.12Windows x86

nnsight-0.7.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (272.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

nnsight-0.7.0-cp312-cp312-macosx_11_0_arm64.whl (265.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

nnsight-0.7.0-cp311-cp311-win_amd64.whl (267.5 kB view details)

Uploaded CPython 3.11Windows x86-64

nnsight-0.7.0-cp311-cp311-win32.whl (267.1 kB view details)

Uploaded CPython 3.11Windows x86

nnsight-0.7.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (272.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

nnsight-0.7.0-cp311-cp311-macosx_11_0_arm64.whl (264.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

nnsight-0.7.0-cp310-cp310-win_amd64.whl (267.5 kB view details)

Uploaded CPython 3.10Windows x86-64

nnsight-0.7.0-cp310-cp310-win32.whl (267.1 kB view details)

Uploaded CPython 3.10Windows x86

nnsight-0.7.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (272.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

nnsight-0.7.0-cp310-cp310-macosx_11_0_arm64.whl (264.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file nnsight-0.7.0.tar.gz.

File metadata

  • Download URL: nnsight-0.7.0.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0.tar.gz
Algorithm Hash digest
SHA256 5bc6678d567ecc5590b823b7bbab2c310c69f8dda6f4064684c6d488563eebee
MD5 b5678c17361714bc808d977abc2cfeaa
BLAKE2b-256 a69e76fd632deef926599d3d16c02fd736cf5f8465f49d708d5be13cd6638484

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 267.7 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 544f7e32e277738ca10e85cdd3f07d8965ec3388854fdf14373308580f8fd0f4
MD5 57d5e1a357fb5859fe8bae12bb1b792c
BLAKE2b-256 bfc9749370592057f790fc60f2542848b09542ca8eb75b4583e1dde01e7e40c9

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp314-cp314t-win32.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 267.3 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 7140bf2cab8d4bff46e8f6a1a942185fcdf8f18f62ddb173ca7fe000b6e580cc
MD5 f32537719a1e8db377b4ef6616998c3e
BLAKE2b-256 7fdaf47e1102a9216dc487608ce5b7bc058afb0ea9f3f087e85f83ed877d156d

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 eeed67fa7d8ef03a1196533ec341dbe1dfb40bb7615c8dee06a22009eba1be0f
MD5 e0f2f9954803b246b94caa0af4fceb72
BLAKE2b-256 ec2e0df50b4b98896b02fc76dd08997aab977eef96e0fb3a2646c5c695a3389f

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 171a0a1a13f3f8ea8ddc06c98eb3f924c7a8dfcc108be1407c7c071504f0370f
MD5 62dbf7533b1eb0e78f48601d1ea7ae90
BLAKE2b-256 81361f698a62ae01187dd6c4e63a561220ec7999ad489fea796df3733d700d36

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 267.6 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 65a894add8c93b38d781affac4bf10a58050ed3e46497b2038febf9d8633ce21
MD5 438bdccd7c30d6aca501904ba738025f
BLAKE2b-256 ef009300ab917f759d2e4cf2c4ceb23b76827fe5e77379c1933f6b67c0bb680c

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp314-cp314-win32.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp314-cp314-win32.whl
  • Upload date:
  • Size: 267.2 kB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 6b360febd90a1c5330c7e881a11aaa51f76f04e4876fe045c7f0481ded9e0398
MD5 6c2fbe9ef9dc5eda99f09bd832f20fa2
BLAKE2b-256 d13805845f3fc29631450efa5d9b8e17aaff37d2ae4e6eee8f8e38ce0ba5b162

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 22f172565dab55583fb2eb0d615697af76e2c22f12644309738bf7174090ccc6
MD5 0125c878ccf1e3de04dbf41a6dcc77a0
BLAKE2b-256 29a7b1ba47acbe95fafc854170390d29ef3dd0bdaac44576f1554f25e53c8309

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 baaa6409717a8e95cadf7d71fbb376103524f9137a0cc0d8ea55c2656add4326
MD5 2fd0dc460d806732d8b5a7b5864092d7
BLAKE2b-256 ba766148cd42a1323d218c64ed122f4da775233fb2e44edef0341fd8aa976c7e

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 267.5 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 8cd6b5aac59175a6c436fb4fca713a6a58fc85407f9b4f938a819a467c17108e
MD5 59ce022011e96bbc826a0b83ef38fb16
BLAKE2b-256 670feb2a6cdff12abcd7264b6e9992c9fe907cfd4c445ea3df1b3aa4165061ff

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp313-cp313-win32.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp313-cp313-win32.whl
  • Upload date:
  • Size: 267.1 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 ed4c01b7cc882e3699de56f1ee77cedd7f720797bb3670a690ec1edeeb34f9bb
MD5 b581c1b94531a3c90973e24d55206683
BLAKE2b-256 931865f473ae3147156dec3e6d30b5fa386491474964db1af24f478ef467718d

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 3b59ff8a2d41ed482313fa21f62e5a035068bd68828201cccb928c6e0ded2b4f
MD5 3f8559c31f87f06d5d136f4f299fbb71
BLAKE2b-256 0ae0335c94482b3c739994cdabaef02a12458c806cbe7ca5883d03380f6fdf8a

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 753acc23dcc97ed32bfc3f650400f049e94621dc56cd9a372dbbfef868f98753
MD5 85977e739fbf274aa0f368e83b99d67e
BLAKE2b-256 d3dd2e2f800876f00a0f38e7ef5e536c53bacf9ac7775efc8b337ba117a4459c

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 267.5 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 408e2ae8b0da3af0b71f3c8dbb2301b671801205f7a3f95ede7f3f6672c5a8a5
MD5 3b43f67d9ba31bcfde4269385015abb0
BLAKE2b-256 f11bd3d60dfbbd1167320ec7f02cf06f4c589a3d2d462c3748f45bba7eaa17eb

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 267.1 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 2601ccc8a352c09f6f17576ea07943ed29eb3c8d1bba2ec174fbb554942a3821
MD5 b1f5846423730c3797af5c58a1e8cc84
BLAKE2b-256 8577c59d1e983936e77b2d9fcd4694461f78c66d0af95982b42ffc365fa0c224

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 000f5285a754d63fafc0a677e4518192f16c5fa3f2af347a46e2f27c793ef2b2
MD5 d19e4b2903650329bad5c2b7d39a26c0
BLAKE2b-256 f5faaee0a17356528f6cf4e0deaf3af2f0a88f660f793fb1fbb10f363682ef6a

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d988fd477abcc15d413012aa1b6eaef667da81b2d61c86c528b2a154adf259c5
MD5 9663b2efca1122fb2da4f9a44a86a2d6
BLAKE2b-256 a84d634c1f08e5d34d9d145f81a5b872c5d2a2fcae714c77450e4f14660670b8

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 267.5 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 933bf1d5a3f22dd930184c63989fea25bccd475e5db4df420dc1766950c4963f
MD5 de3b2ad807e3c93b39d93cc0a4332048
BLAKE2b-256 4066923f089e3dc432bf51a272edeaf36ea535d9f344cd5c9a163b70d19e19ff

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 267.1 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 33e14c52c6f9ce3f07a1709838fd51243660a2a07a18d32c857708a66fa60609
MD5 255a641aa01b8a67545ed00135a7557f
BLAKE2b-256 dd3a78bb189bf2cd67192e92e2f09b19cb5b277e86f5ebe418965362ce919da6

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 318da7f3cd1e6b93145c2dbb430837446026be626cf511b8ee8c491da7d803fb
MD5 b7f1dce256db38f50a1ae17f3b187935
BLAKE2b-256 6dee2204233151a6df0d37af23096250d4cc5ecbebb27b082110076164a1c4d6

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3bc66c4e3ad084bb069bcb9eaa463f4c7b0c1fc56016c13387b4313f1800f69e
MD5 e466b119f8952d47d84d5e1837a667a2
BLAKE2b-256 d5e74d8f94663bbe3a15c92c8105b1d6985c02e237497ad632637a4c2b2f5025

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 267.5 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9430c4df3c00fd91a761417ea7900587939a12d7c167e9e24226df3c22f4ba3f
MD5 72e88a7cbf7e431cf7c588d9aea259f7
BLAKE2b-256 8efcf0bc26cd8e4b123d81262a17bef5805452d518cd18fe1b079f97ac870b27

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: nnsight-0.7.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 267.1 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnsight-0.7.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 f4b01c5652fd04dc18ccc41bad9e24a830065bd02e3bf681886713c5b5b6a672
MD5 d4765a67e1bc124671ad4a184391bcb4
BLAKE2b-256 0fa1cd6479d1da6e47a613815023515637b4767dab8fa862a16eb18cb217a80f

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 1504068d9da0f20ad3ae46ac70af08d240ff9d15786f3ef07a7e763c5f1815dd
MD5 e7b105e5e2ba0d3ee401f6f5d0853611
BLAKE2b-256 655105f11264c1d425f38e5fed481d6bf82e2d719371c99b1e2bad9682b6ef94

See more details on using hashes here.

File details

Details for the file nnsight-0.7.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for nnsight-0.7.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 05d8447e3a03b7cedfef2f4287c0ba59343bbe7c743e7ee493194dc3c03e2968
MD5 c3feb3a9b2eb83000fbd84f1dc5c1169
BLAKE2b-256 2ee82f3346dc22d2c069977490839f2e1bd8f66d2b371aaba6aff03d274c80e3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page