Skip to main content

A sentence-level visualization tool for attention in large language models

Project description

SAVIS: Sentence-Level Attention Visualization for Large Language Models

SAVIS (Sentence-level Attention VISualization) is a Python library for visualizing inter-sentence attention in large language models (LLMs), specifically designed for public relations (PR) analysis. This tool enhances the interpretability of LLMs by providing an intuitive visualization of how attention is distributed across sentences in generated text.

SAVIS analyzing reviews

Features

  • Inter-sentence attention calculation
  • Interactive visualization of attention patterns
  • Support for various LLMs through Hugging Face's transformers library
  • Customizable for PR-specific analysis tasks with Jupyter Notebook

Installation

pip install savis

Quick Start

from savis import TextGenerator, ISA, ISAVisualization

# Initialize the text generator with your chosen model
generator = TextGenerator("Model name")

# Generate text and get attention data
input_text = "Your input prompt here"
generated_text, attentions, tokenizer, input_ids, outputs = generator.generate_text(input_text)

# Calculate inter-sentence attention
isa = ISA(outputs.sequences[0], attentions, tokenizer)

# Visualize the attention patterns
vis = ISAVisualization(isa.sentence_attention, isa.sentences)
vis.visualize_sentence_attention()

Key Components

  1. TextGenerator: Interfaces with the LLM to generate text and extract attention information.
  2. Attention: Manages the underlying LLM and provides methods for obtaining attention data from the model.
  3. ISA (Inter-Sentence Attention): Processes raw attention data to compute attention between sentences.
  4. ISAVisualization: Creates interactive visualizations of the computed inter-sentence attention.

These components work together to provide a comprehensive pipeline from text generation to attention visualization:

  • TextGenerator uses the LLM to generate text based on input prompts.
  • Attention handles the interaction with the LLM, extracting detailed attention information.
  • ISA takes the raw attention data and computes meaningful inter-sentence attention scores.
  • ISAVisualization takes these scores and creates interactive visualizations.

License

SAVIS is released under the MIT License. See the LICENSE file for more details.

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

savis-0.3.6.tar.gz (4.9 MB view details)

Uploaded Source

Built Distribution

savis-0.3.6-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file savis-0.3.6.tar.gz.

File metadata

  • Download URL: savis-0.3.6.tar.gz
  • Upload date:
  • Size: 4.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.13

File hashes

Hashes for savis-0.3.6.tar.gz
Algorithm Hash digest
SHA256 c6ddf048e44ece6242c583754a6363a6f8d5c4c386ffc5430edcd2f276c4036b
MD5 5028c049630859313f45d31cd6f199ec
BLAKE2b-256 af7f0c504362bc4dfacf459455d0b998689a1700119d32952397d23593c73e60

See more details on using hashes here.

File details

Details for the file savis-0.3.6-py3-none-any.whl.

File metadata

  • Download URL: savis-0.3.6-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.13

File hashes

Hashes for savis-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6f1dfc160779e329a61aae394eadc07bc94c2bf2856ca8b2cedcefce0ef505f1
MD5 005218c4743fe81a633f708173132f79
BLAKE2b-256 cffd084ce7898f5191442f0b8499e278b3caf8cd2cfa247e67cefb8a7ffe148c

See more details on using hashes here.

Supported by

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