No project description provided
Project description
clipscope
usage
import PIL
from clipscope import ConfiguredViT, TopKSAE
device='cpu'
filename_in_hf_repo = "725159424.pt"
sae = TopKSAE.from_pretrained(repo_id="lewington/CLIP-ViT-L-scope", filename=filename_in_hf_repo, device=device)
transformer_name='laion/CLIP-ViT-L-14-laion2B-s32B-b82K'
locations = [(22, 'resid')]
transformer = ConfiguredViT(locations, transformer_name, device=device)
input = PIL.Image.new("RGB", (224, 224), (0, 0, 0)) # black image for testing
activations = transformer.all_activations(input)[locations[0]] # (1, 257, 1024)
assert activations.shape == (1, 257, 1024)
activations = activations[:, 0] # just the cls token
# alternatively flatten the activations
# activations = activations.flatten(1)
print('activations shape', activations.shape)
output = sae.forward_verbose(activations)
print('output keys', output.keys())
print('latent shape', output['latent'].shape) # (1, 65536)
print('reconstruction shape', output['reconstruction'].shape) # (1, 1024)
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
clipscope-0.1.5.tar.gz
(9.2 MB
view hashes)
Built Distribution
Close
Hashes for clipscope-0.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6400ce22429fd93a3a56f9eff4dbf95826edc662fe3ac450c62205feec817ce |
|
MD5 | 81fb9fbfe0bc232bfd07b4310bc9bec2 |
|
BLAKE2b-256 | 42110406a2dfb48387dbf5eb7c31e152d93e356c9de2ffb8966b7ad0f55d4438 |