Skip to main content

No project description provided

Project description

EasyRoutine

This is just a simple collection of routines that I use frequently. I have found that I often need to do the same things over and over again, so I have created this repository to store them. I hope you find them useful.

Installation

Interpretability

The interpretability module contains wrapper of huggingface LLM/VLM that help to perform interpretability tasks on the model. Currently, it supports:

  • Extract activations of any component of the model
  • Perform ablation study on the model during inference
  • Perform activation patching on the model during inference

Simple Tutorial

# First we need to import the HookedModel and the config classes
from easyroutine.interpretability import HookedModel,  ExtractionConfig

hooked_model = HookedModel.from_pretrained(
    model_name="mistral-community/pixtral-12b", # the model name
    device_map = "auto"
)

# Now let's define a simple dataset
dataset = [
    "This is a test",
    "This is another test"
]

tokenizer = hooked_model.get_tokenizer()

dataset = tokenizer(dataset, padding=True, truncation=True, return_tensors="pt") 

cache = hooked_model.extract_cache(
    dataset,
    target_token_positions = ["last"],
    extraction_config = ExtractionConfig(
        extract_resid_out = True
    )
)

Development

For publish the package push a commit with the flag:

  • [patch]: x.x.7 -> x.x.8
  • [minor]: x.7.x -> x.8.0
  • [major]: 2.x.x -> 3.0.0

Example commit: fix multiple bus [patch]

Project details


Download files

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

Source Distribution

easyroutine-1.1.2.tar.gz (75.3 kB view details)

Uploaded Source

Built Distribution

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

easyroutine-1.1.2-py3-none-any.whl (94.0 kB view details)

Uploaded Python 3

File details

Details for the file easyroutine-1.1.2.tar.gz.

File metadata

  • Download URL: easyroutine-1.1.2.tar.gz
  • Upload date:
  • Size: 75.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for easyroutine-1.1.2.tar.gz
Algorithm Hash digest
SHA256 ec97c7c2408ff1cef46a679de3a841f0d821acfc664e0089a86df2462f263a6d
MD5 3564bc59fd4c16e2d82eec016e72ba97
BLAKE2b-256 09d774152541c1a8c18edebe7a208de77e6b26230c8e7307001dc64843fdc67d

See more details on using hashes here.

File details

Details for the file easyroutine-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: easyroutine-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 94.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for easyroutine-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d407ebb6c065f90702618b292fb1cd3607b1787014125434ed05bcac2d89ac75
MD5 22362259714235e2c54878e901a8abbc
BLAKE2b-256 46c45ce0b4cd6b9a7e6b0be998e25fc224664afbad083044f7256e8edf03a7fd

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