Collection of utilities for AI/ML model analysis and processing
Project description
dolphin-utils
A collection of utilities for AI/ML model analysis and processing.
dolphin-summarize
This tool analyzes safetensors model files to generate a condensed summary of the model's architecture. It groups similar parameter names using range notation (e.g., model.layers.[0-39].mlp.down_proj.weight) and displays the shape and data type (precision) for each parameter group.
Key Features:
- Remote Processing: Analyze Hugging Face models without downloading the full model files (downloads only headers - KB instead of GB)
- Local Processing: Works with locally stored model directories
- Efficient: Uses HTTP range requests and streaming to minimize data transfer
- Reliable: Multiple fallback strategies ensure 100% compatibility
Dependencies
- Python 3.7+
huggingface_hub- For accessing Hugging Face repositoriesrequests- For HTTP requests and remote file accesssafetensors- For reading safetensors file headers
All dependencies are automatically installed when you install the package:
pip install dolphin-utils
Usage
After installing the package:
pip install dolphin-utils
You can use the tool in two ways:
Via CLI command:
dolphin-summarize [MODEL_PATH_OR_REPO_ID] [OPTIONS]
Via Python module:
python -m dolphin_summarize [MODEL_PATH_OR_REPO_ID] [OPTIONS]
Arguments:
MODEL_PATH_OR_REPO_ID:- Local path: Directory containing safetensors files (e.g.,
~/models/my_llama_model) - Hugging Face repo ID: Repository identifier (e.g.,
microsoft/DialoGPT-medium) - Defaults to current directory (
.) if not provided
- Local path: Directory containing safetensors files (e.g.,
Options:
--output OUTPUT,-o OUTPUT: Path to an output file where the summary will be written (optional).--verbose,-v: Show verbose output during processing (optional).
Examples
Remote Processing (Hugging Face Hub):
# Process a model directly from Hugging Face without downloading
python -m dolphin_summarize microsoft/DialoGPT-medium --verbose
# Large models work too - only headers are downloaded
python -m dolphin_summarize meta-llama/Llama-2-70b-hf --verbose
Local Processing:
# Process a local model directory
python -m dolphin_summarize ~/models/my_llama_model --verbose
# Process current directory
python -m dolphin_summarize . --verbose
Output Format
The script prints the summary to the console (and optionally to a file). Each line represents a parameter or a group of parameters with a similar structure:
parameter_name,[shape],dtype
Example Output Lines:
lm_head.weight,[131072,5120],BF16
model.embed_tokens.weight,[131072,5120],BF16
model.layers.[0-39].input_layernorm.weight,[5120],BF16
model.layers.[0-39].mlp.down_proj.weight,[5120,13824],BF16
model.layers.[0-39].mlp.gate_proj.weight,[13824,5120],BF16
model.layers.[0-39].mlp.up_proj.weight,[13824,5120],BF16
model.layers.[0-39].post_attention_layernorm.weight,[5120],BF16
model.layers.[0-39].self_attn.k_proj.weight,[512,5120],BF16
model.layers.[0-39].self_attn.o_proj.weight,[5120,8192],BF16
model.layers.[0-39].self_attn.q_proj.weight,[8192,5120],BF16
model.layers.[0-39].self_attn.v_proj.weight,[512,5120],BF16
model.norm.weight,[5120],BF16
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dolphin_utils-0.4.1.tar.gz.
File metadata
- Download URL: dolphin_utils-0.4.1.tar.gz
- Upload date:
- Size: 10.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/8.5.0 pkginfo/1.12.1.2 requests/2.32.4 requests-toolbelt/1.0.0 tqdm/4.67.1 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
539c421e6bcc512b48516e097f7cb6368c198dd6e20db32cb93f0eb9340856d2
|
|
| MD5 |
4d4ba88608d7db22f7a8dab06ede5789
|
|
| BLAKE2b-256 |
2f5fdf6011265567dd8c1ec613b146fead0dc9be978f32432f193335e1fe115b
|
File details
Details for the file dolphin_utils-0.4.1-py3-none-any.whl.
File metadata
- Download URL: dolphin_utils-0.4.1-py3-none-any.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/8.5.0 pkginfo/1.12.1.2 requests/2.32.4 requests-toolbelt/1.0.0 tqdm/4.67.1 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e2492b1aa91e76d111216c2cd0be821e4287757dd6cee720d0870d5a63607e6
|
|
| MD5 |
ed756fc8524e910b8d70d494156139da
|
|
| BLAKE2b-256 |
01f9b16db2e4b9b5da15995a7e212a857245ed37837e1745bdbda04d17288399
|