Text Generation
Transformers
Safetensors
mistral3
image-text-to-text
summarization
long-context
grounded-generation
citation
xml-tagging
🇪🇺 Region: EU
Instructions to use ellamind/sui-1-24b with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use ellamind/sui-1-24b with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="ellamind/sui-1-24b")# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("ellamind/sui-1-24b") model = AutoModelForMultimodalLM.from_pretrained("ellamind/sui-1-24b", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use ellamind/sui-1-24b with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "ellamind/sui-1-24b" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "ellamind/sui-1-24b", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/ellamind/sui-1-24b
- SGLang
How to use ellamind/sui-1-24b with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "ellamind/sui-1-24b" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "ellamind/sui-1-24b", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "ellamind/sui-1-24b" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "ellamind/sui-1-24b", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use ellamind/sui-1-24b with Docker Model Runner:
docker model run hf.co/ellamind/sui-1-24b
Initial release
Browse files- .gitattributes +2 -0
- README.md +572 -0
- config.json +48 -0
- document.txt +101 -0
- example.py +203 -0
- generation_config.json +8 -0
- images/criteria_breakdown.png +0 -0
- images/overall_performance.png +0 -0
- images/sui_icon.jpeg +3 -0
- merge_metadata.json +5 -0
- model-00001-of-00010.safetensors +3 -0
- model-00002-of-00010.safetensors +3 -0
- model-00003-of-00010.safetensors +3 -0
- model-00004-of-00010.safetensors +3 -0
- model-00005-of-00010.safetensors +3 -0
- model-00006-of-00010.safetensors +3 -0
- model-00007-of-00010.safetensors +3 -0
- model-00008-of-00010.safetensors +3 -0
- model-00009-of-00010.safetensors +3 -0
- model-00010-of-00010.safetensors +3 -0
- model.safetensors.index.json +593 -0
- prompts.py +253 -0
- tekken.json +3 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
images/sui_icon.jpeg filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
tekken.json filter=lfs diff=lfs merge=lfs -text
|
README.md
ADDED
|
@@ -0,0 +1,572 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: apache-2.0
|
| 3 |
+
base_model: mistralai/Mistral-Small-3.2-24B-Instruct-2506
|
| 4 |
+
tags:
|
| 5 |
+
- summarization
|
| 6 |
+
- long-context
|
| 7 |
+
- grounded-generation
|
| 8 |
+
- citation
|
| 9 |
+
- xml-tagging
|
| 10 |
+
language:
|
| 11 |
+
- en
|
| 12 |
+
- de
|
| 13 |
+
- es
|
| 14 |
+
- fr
|
| 15 |
+
- it
|
| 16 |
+
- pt
|
| 17 |
+
- nl
|
| 18 |
+
- pl
|
| 19 |
+
- zh
|
| 20 |
+
- ja
|
| 21 |
+
- ko
|
| 22 |
+
- ru
|
| 23 |
+
- ar
|
| 24 |
+
- tr
|
| 25 |
+
- vi
|
| 26 |
+
- id
|
| 27 |
+
- hi
|
| 28 |
+
- sv
|
| 29 |
+
- uk
|
| 30 |
+
- ro
|
| 31 |
+
- cs
|
| 32 |
+
- el
|
| 33 |
+
- hu
|
| 34 |
+
- th
|
| 35 |
+
pipeline_tag: text-generation
|
| 36 |
+
library_name: transformers
|
| 37 |
+
---
|
| 38 |
+
|
| 39 |
+
<div align="center">
|
| 40 |
+
<img src="images/sui_icon.jpeg" alt="SUI Icon" width="200">
|
| 41 |
+
<h3>sui-1</h3>
|
| 42 |
+
</div>
|
| 43 |
+
|
| 44 |
+
**sui-1** (Summarization with Unique Identifiers) is a specialized model for high-quality summarization of very long texts with built-in source grounding. Every claim in the summary can be traced back to its source sentence, enabling verification and reducing hallucination risk.
|
| 45 |
+
|
| 46 |
+
## Key Features
|
| 47 |
+
|
| 48 |
+
- **Very Long Document Processing**: Handles up to 128k tokens natively, with a two-step iterative approach for documents up to 2 million tokens
|
| 49 |
+
- **Single GPU Deployment**: The FP8 variant runs on a single A100 40GB or A6000 48GB GPU; the iterative approach enables deployment on even more modest hardware
|
| 50 |
+
- **Competitive Performance**: Significantly outperforms all tested open-weight baselines, including models with 3x more parameters
|
| 51 |
+
- **Multilingual Support**: Fine-tuned for English, German, Spanish, French, and Italian; inherits 20+ additional languages from Mistral Small 3.2
|
| 52 |
+
- **High-Quality Training Data**: Built using a sophisticated data generation pipeline that produced 22,000+ training examples from parliamentary documents, web sources, and Wikipedia using chain-of-thought reasoning with multi-stage verification
|
| 53 |
+
- **Verifiable Outputs**: Built-in citation mechanism links each claim to its source sentence for full traceability
|
| 54 |
+
|
| 55 |
+
## Quick Start
|
| 56 |
+
|
| 57 |
+
Run the end-to-end [example.py](example.py) script (requires [uv](https://docs.astral.sh/uv/)):
|
| 58 |
+
|
| 59 |
+
```bash
|
| 60 |
+
# Summarize a document
|
| 61 |
+
uv run example.py document.txt
|
| 62 |
+
|
| 63 |
+
# Or with inline text
|
| 64 |
+
uv run example.py --text "Your long text here..." --words 300 --tags 8
|
| 65 |
+
```
|
| 66 |
+
|
| 67 |
+
The script handles everything: sentence tagging, model inference, and formatted output with source citations.
|
| 68 |
+
|
| 69 |
+
## Evaluation
|
| 70 |
+
|
| 71 |
+
We evaluate sui-1-24b using an **LLM-as-a-Judge** methodology, where a strong judge model evaluates summary quality across multiple criteria. This approach captures nuanced quality aspects that traditional metrics like ROUGE cannot measure.
|
| 72 |
+
|
| 73 |
+
### Overall Performance
|
| 74 |
+
|
| 75 |
+

|
| 76 |
+
|
| 77 |
+
The chart shows the overall success rate across all evaluation criteria. sui-1-24b significantly outperforms its base model (Mistral-Small-3.2-24B) on the summarization task.
|
| 78 |
+
|
| 79 |
+
### Performance by Criteria
|
| 80 |
+
|
| 81 |
+
We evaluate summaries on five key dimensions:
|
| 82 |
+
|
| 83 |
+
| Criterion | Description |
|
| 84 |
+
|-----------|-------------|
|
| 85 |
+
| **Factual Accuracy** | Does the summary avoid introducing new facts, entities, numbers, or claims not supported by the source content? |
|
| 86 |
+
| **Coverage & Completeness**¹ | Does the summary cover the document's main points and key takeaways at appropriate granularity? |
|
| 87 |
+
| **Specificity & Informativeness** | Are claims specific and informative rather than generic filler (e.g., "there are several points")? |
|
| 88 |
+
| **Format Compliance** | Is the output compliant with formatting instructions including language consistency, semantic-aware planning, and paragraph structure? |
|
| 89 |
+
| **Custom Instruction**² | If a custom instruction is provided, is it followed appropriately? |
|
| 90 |
+
|
| 91 |
+

|
| 92 |
+
|
| 93 |
+
The evaluation was conducted on 100 diverse test samples covering multiple languages (English, German, Spanish, French, Italian) and document types. Scoring uses binary pass/fail per criterion, aggregated to success rates.
|
| 94 |
+
|
| 95 |
+
*¹ Coverage scores are lower when samples require constrained formats (bullet points, short summaries) that inherently limit content coverage.*
|
| 96 |
+
*² Tests whether the model deviates from its default prose style when users request specific formats.*
|
| 97 |
+
|
| 98 |
+
### Grounding Metrics
|
| 99 |
+
|
| 100 |
+
In addition to LLM-as-a-Judge evaluation, we validate grounding quality using structural checks:
|
| 101 |
+
|
| 102 |
+
1. **Tag Uniqueness**: All referenced tags in `xml_tags` must be unique
|
| 103 |
+
2. **Tag Validity**: All referenced tags must exist in the input text
|
| 104 |
+
3. **Tag Usage**: All tags in `xml_tags` must appear in the summary
|
| 105 |
+
|
| 106 |
+
### Elluminate
|
| 107 |
+
|
| 108 |
+
The evaluation was performed using [Elluminate](https://elluminate.de), a collaborative evaluation platform for enterprise AI. Elluminate provides structured LLM-as-a-Judge workflows that enable teams to standardize quality metrics and systematically measure AI performance across defined criteria.
|
| 109 |
+
|
| 110 |
+
This model is a contribution by [ellamind](https://ellamind.ai) to the open-source community.
|
| 111 |
+
|
| 112 |
+
---
|
| 113 |
+
|
| 114 |
+
## Model Weights
|
| 115 |
+
|
| 116 |
+
We provide two variants:
|
| 117 |
+
|
| 118 |
+
| Variant | Description | Link |
|
| 119 |
+
|---------|-------------|------|
|
| 120 |
+
| **bfloat16** | Full precision (~48GB weights) | [ellamind/sui-1-24b](https://huggingface.co/ellamind/sui-1-24b) |
|
| 121 |
+
| **FP8** | Quantized (~24GB weights), lower VRAM | [ellamind/sui-1-24b-fp8](https://huggingface.co/ellamind/sui-1-24b-fp8) |
|
| 122 |
+
|
| 123 |
+
The FP8 version preserves high quality, scoring 81.05% overall on our benchmark—nearly identical to bfloat16.
|
| 124 |
+
|
| 125 |
+
---
|
| 126 |
+
|
| 127 |
+
## Hardware Requirements
|
| 128 |
+
|
| 129 |
+
We tested various GPU configurations using vLLM. The tables below show minimum requirements for different context lengths.
|
| 130 |
+
|
| 131 |
+
The bfloat16 variant requires **~55GB VRAM** for 8k context, scaling to **~76GB** for 128k. The FP8 variant requires **~38GB** for 8k and **~50GB** for 128k.
|
| 132 |
+
|
| 133 |
+
### bfloat16 (Full Precision)
|
| 134 |
+
|
| 135 |
+
| Setup | 8k | 32k | 64k | 128k |
|
| 136 |
+
|-------|:--:|:---:|:---:|:----:|
|
| 137 |
+
| 1× A100 80GB / H100 96GB| ✓ | ✓ | ✓ | ✓ |
|
| 138 |
+
| 2× RTX 5090 (32GB) | ✓ | ✓ | ✗ | ✗ |
|
| 139 |
+
| 2× A100 40GB / A6000 | ✓ | ✓ | ✓ | ✓ |
|
| 140 |
+
| 4× RTX 4090 (24GB) | ✓ | ✓ | ✓ | ✓ |
|
| 141 |
+
|
| 142 |
+
### FP8 Quantized (Recommended for Consumer GPUs)
|
| 143 |
+
|
| 144 |
+
| Setup | 8k | 32k | 64k | 128k |
|
| 145 |
+
|-------|:--:|:---:|:---:|:----:|
|
| 146 |
+
| 1× A100 40GB | ✓ | ✓ | ✗ | ✗ |
|
| 147 |
+
| 1× A6000 (48GB) | ✓ | ✓ | ✓ | ✗ |
|
| 148 |
+
| 1× A100 80GB / H100 96GB| ✓ | ✓ | ✓ | ✓ |
|
| 149 |
+
| 2× RTX 4090 (24GB) | ✓ | ✓ | ✓ | ✗ |
|
| 150 |
+
| 2× RTX 5090 (32GB) | ✓ | ✓ | ✓ | ✓ |
|
| 151 |
+
| 4× RTX 4090 (24GB) | ✓ | ✓ | ✓ | ✓ |
|
| 152 |
+
|
| 153 |
+
> **Tip**: The model supports both one-shot summarization (full document in context) and an iterative two-step approach for very long documents (see [Handling Very Long Contexts](#handling-very-long-contexts)). The 8k context configuration is sufficient to produce high-quality summaries using the iterative approach, making the model accessible on more modest hardware.
|
| 154 |
+
|
| 155 |
+
---
|
| 156 |
+
|
| 157 |
+
## How It Works
|
| 158 |
+
|
| 159 |
+
The model follows a three-phase approach:
|
| 160 |
+
|
| 161 |
+
1. **Planning Phase**: Analyzes the input and plans the summary structure
|
| 162 |
+
2. **Reference Selection**: Identifies the most important sentences to cite
|
| 163 |
+
3. **Grounded Generation**: Produces a summary with inline citations to source sentences
|
| 164 |
+
|
| 165 |
+
Citations use XML tags assigned during preprocessing, enabling deterministic verification of each claim.
|
| 166 |
+
|
| 167 |
+
---
|
| 168 |
+
|
| 169 |
+
## Input Format
|
| 170 |
+
|
| 171 |
+
The input text must be preprocessed with XML sentence tags. Each sentence is wrapped in a unique 8-character hexadecimal tag:
|
| 172 |
+
|
| 173 |
+
```
|
| 174 |
+
<a1b2c3d4>First sentence of the document.</a1b2c3d4><e5f6g7h8>Second sentence continues here.</e5f6g7h8>...
|
| 175 |
+
```
|
| 176 |
+
|
| 177 |
+
### Tag Format Requirements
|
| 178 |
+
|
| 179 |
+
- Tags must be **8 lowercase hexadecimal characters** (e.g., `a1b2c3d4`)
|
| 180 |
+
- Each tag must be **unique** within the document
|
| 181 |
+
- Tags wrap individual sentences: `<tag>sentence text</tag>`
|
| 182 |
+
- Tags should be contiguous (no whitespace between closing and opening tags)
|
| 183 |
+
|
| 184 |
+
### Preprocessing with spaCy (Recommended)
|
| 185 |
+
|
| 186 |
+
```python
|
| 187 |
+
import hashlib
|
| 188 |
+
import spacy
|
| 189 |
+
|
| 190 |
+
def generate_tag(index: int, sentence: str) -> str:
|
| 191 |
+
"""Generate unique 8-char hex tag from sentence."""
|
| 192 |
+
return hashlib.md5(f"{index}_{sentence[:50]}".encode()).hexdigest()[:8]
|
| 193 |
+
|
| 194 |
+
def tag_text(text: str, language: str = "en") -> tuple[str, dict]:
|
| 195 |
+
"""
|
| 196 |
+
Tag text with XML sentence markers.
|
| 197 |
+
|
| 198 |
+
Args:
|
| 199 |
+
text: Input text to tag
|
| 200 |
+
language: Language code (en, de, es, fr, it)
|
| 201 |
+
|
| 202 |
+
Returns:
|
| 203 |
+
tuple: (tagged_text, tag_to_sentence_mapping)
|
| 204 |
+
"""
|
| 205 |
+
# Load appropriate spaCy model
|
| 206 |
+
models = {"en": "en_core_web_sm", "de": "de_core_news_sm",
|
| 207 |
+
"es": "es_core_news_sm", "fr": "fr_core_news_sm", "it": "it_core_news_sm"}
|
| 208 |
+
nlp = spacy.load(models.get(language, "en_core_web_sm"))
|
| 209 |
+
|
| 210 |
+
doc = nlp(text)
|
| 211 |
+
tagged_text = ""
|
| 212 |
+
tag_mapping = {}
|
| 213 |
+
|
| 214 |
+
for i, sent in enumerate(doc.sents):
|
| 215 |
+
sentence = sent.text.strip()
|
| 216 |
+
if sentence:
|
| 217 |
+
tag = generate_tag(i, sentence)
|
| 218 |
+
tag_mapping[tag] = sentence
|
| 219 |
+
tagged_text += f"<{tag}>{sentence}</{tag}>"
|
| 220 |
+
|
| 221 |
+
return tagged_text, tag_mapping
|
| 222 |
+
|
| 223 |
+
# Example usage
|
| 224 |
+
text = "This is the first sentence. Here is the second one. And a third."
|
| 225 |
+
tagged, mapping = tag_text(text)
|
| 226 |
+
print(tagged)
|
| 227 |
+
# Output: <a1b2c3d4>This is the first sentence.</a1b2c3d4><e5f67890>Here is the second one.</e5f67890>...
|
| 228 |
+
```
|
| 229 |
+
|
| 230 |
+
### Installation for Preprocessing
|
| 231 |
+
|
| 232 |
+
```bash
|
| 233 |
+
pip install spacy langdetect
|
| 234 |
+
python -m spacy download en_core_web_sm # English
|
| 235 |
+
python -m spacy download de_core_news_sm # German (optional)
|
| 236 |
+
```
|
| 237 |
+
|
| 238 |
+
To automatically detect the input language and select the appropriate spaCy model, you can use `langdetect`:
|
| 239 |
+
|
| 240 |
+
```python
|
| 241 |
+
from langdetect import detect
|
| 242 |
+
|
| 243 |
+
def detect_language(text: str) -> str:
|
| 244 |
+
lang_code = detect(text[:1000]) # Sample first 1000 chars
|
| 245 |
+
lang_map = {"de": "German", "en": "English", "es": "Spanish",
|
| 246 |
+
"fr": "French", "it": "Italian"}
|
| 247 |
+
return lang_map.get(lang_code, "English") # Default to English
|
| 248 |
+
```
|
| 249 |
+
|
| 250 |
+
For non-enhanced languages, English-style sentence segmentation is used as fallback, which may be suboptimal for languages with different punctuation conventions (e.g., Chinese, Japanese).
|
| 251 |
+
|
| 252 |
+
---
|
| 253 |
+
|
| 254 |
+
## Output Format
|
| 255 |
+
|
| 256 |
+
The model outputs a JSON object with three keys:
|
| 257 |
+
|
| 258 |
+
```json
|
| 259 |
+
{
|
| 260 |
+
"structure": "Planning text describing how the summary will be organized...",
|
| 261 |
+
"xml_tags": ["<a1b2c3d4>", "<e5f67890>", "<12345678>"],
|
| 262 |
+
"summary": "The document discusses... [<a1b2c3d4>]. Furthermore... [<e5f67890>]."
|
| 263 |
+
}
|
| 264 |
+
```
|
| 265 |
+
|
| 266 |
+
### Output Keys
|
| 267 |
+
|
| 268 |
+
| Key | Type | Description |
|
| 269 |
+
|-----|------|-------------|
|
| 270 |
+
| `structure` | string | Internal reasoning about the content and planned summary structure. Shows which topics will be covered and in what order. |
|
| 271 |
+
| `xml_tags` | array | List of XML tags that will be cited in the summary. Each tag corresponds to a source sentence. Tags are listed in the order they appear in the source. |
|
| 272 |
+
| `summary` | string | The actual summary with inline XML tag references in square brackets (e.g., `[<a1b2c3d4>]`). Each referenced tag must appear in the `xml_tags` list and exist in the input. |
|
| 273 |
+
|
| 274 |
+
### Reference Format in Summary
|
| 275 |
+
|
| 276 |
+
Citations appear inline immediately after the statement they support:
|
| 277 |
+
|
| 278 |
+
```
|
| 279 |
+
The report found significant budget overruns [<a1b2c3d4>]. This was attributed to
|
| 280 |
+
supply chain disruptions [<e5f67890>] and labor shortages [<12345678>].
|
| 281 |
+
```
|
| 282 |
+
|
| 283 |
+
<details>
|
| 284 |
+
<summary><b>Example Output (click to expand)</b></summary>
|
| 285 |
+
|
| 286 |
+
```json
|
| 287 |
+
{
|
| 288 |
+
"structure": "This government report examines infrastructure spending over the past fiscal year. I will structure the summary as follows: 1) Executive overview with key findings, 2) Budget analysis section covering the main expenditures, 3) Regional breakdown of infrastructure projects, 4) Recommendations from the oversight committee. I will select 8 XML tags distributed across these sections to provide comprehensive source grounding.",
|
| 289 |
+
"xml_tags": [
|
| 290 |
+
"<9f2a1b3c>",
|
| 291 |
+
"<d4e5f678>",
|
| 292 |
+
"<90ab12cd>",
|
| 293 |
+
"<ef345678>",
|
| 294 |
+
"<9abc0def>",
|
| 295 |
+
"<12345678>",
|
| 296 |
+
"<abcdef90>",
|
| 297 |
+
"<78901234>"
|
| 298 |
+
],
|
| 299 |
+
"summary": "The Congressional Budget Office's annual infrastructure report reveals that federal infrastructure spending reached $284 billion in fiscal year 2024, representing a 12% increase from the previous year [<9f2a1b3c>]. The majority of funds were allocated to transportation projects, with highway maintenance and bridge repair accounting for 45% of total expenditures [<d4e5f678>].\n\nThe report identifies significant regional disparities in infrastructure investment. Northeastern states received disproportionately higher funding due to aging infrastructure requiring immediate attention [<90ab12cd>], while southern and western regions saw increased allocations for new construction projects [<ef345678>]. Rural communities continued to face challenges in securing adequate funding for basic infrastructure needs [<9abc0def>].\n\nThe oversight committee raised concerns about cost overruns in several major projects, with the average project exceeding initial estimates by 23% [<12345678>]. The committee recommends implementing stricter oversight mechanisms and requiring more detailed feasibility studies before project approval [<abcdef90>]. Additionally, the report suggests exploring public-private partnerships as a means to supplement federal funding and improve project efficiency [<78901234>]."
|
| 300 |
+
}
|
| 301 |
+
```
|
| 302 |
+
|
| 303 |
+
</details>
|
| 304 |
+
|
| 305 |
+
---
|
| 306 |
+
|
| 307 |
+
## Handling Very Long Contexts
|
| 308 |
+
|
| 309 |
+
The model supports a 128k token context window natively. For longer documents (tested up to 2 million tokens), use the iterative approach.
|
| 310 |
+
|
| 311 |
+
### Approach 1: Oneshot (Up to 128k tokens)
|
| 312 |
+
|
| 313 |
+
For documents within the context limit, use the standard prompt with `PROMPT_SUMMARY`:
|
| 314 |
+
|
| 315 |
+
```python
|
| 316 |
+
prompt = f"""You are a professional summarizer, following all given instructions with the utmost care.
|
| 317 |
+
|
| 318 |
+
<text>
|
| 319 |
+
{tagged_text}
|
| 320 |
+
</text>
|
| 321 |
+
|
| 322 |
+
# Output Format
|
| 323 |
+
The output must be in JSON format with the following structure:
|
| 324 |
+
1. A "structure" string containing your thoughts about the content and structure of the summary
|
| 325 |
+
2. An "xml_tags" list containing objects with:
|
| 326 |
+
- "xml_tag": The XML tag identifier from the tagged text (e.g., "<a1b2c3d4>")
|
| 327 |
+
3. A "summary" string containing the actual summary with inline XML tag references
|
| 328 |
+
|
| 329 |
+
# Instructions
|
| 330 |
+
...
|
| 331 |
+
|
| 332 |
+
Parameters:
|
| 333 |
+
- Word count (excl. XML tags): {word_count}
|
| 334 |
+
- Number of XML tags: {number_of_xml_tags}
|
| 335 |
+
- Language: {language}
|
| 336 |
+
"""
|
| 337 |
+
```
|
| 338 |
+
|
| 339 |
+
**Output:** JSON with `structure`, `xml_tags`, and `summary`
|
| 340 |
+
|
| 341 |
+
---
|
| 342 |
+
|
| 343 |
+
### Approach 2: Iterative (128k+ tokens)
|
| 344 |
+
|
| 345 |
+
For documents exceeding the context limit, use a two-step iterative approach that preserves grounding quality:
|
| 346 |
+
|
| 347 |
+
#### Step 1: Partial Summaries (`PROMPT_SUMMARY_PARTIAL`)
|
| 348 |
+
|
| 349 |
+
Split the document into chunks and summarize each independently:
|
| 350 |
+
|
| 351 |
+
```python
|
| 352 |
+
prompt_partial = f"""You are a professional summarizer, following all given instructions with the utmost care.
|
| 353 |
+
|
| 354 |
+
This is a section of a larger document. Create a partial summary that will later be combined with other sections.
|
| 355 |
+
|
| 356 |
+
<text>
|
| 357 |
+
{chunk_tagged_text}
|
| 358 |
+
</text>
|
| 359 |
+
|
| 360 |
+
# Output Format
|
| 361 |
+
The output must be in JSON format with the following structure:
|
| 362 |
+
1. A "structure" string containing your thoughts about the content and structure of the summary
|
| 363 |
+
2. An "xml_tags" list containing objects with:
|
| 364 |
+
- "xml_tag": The XML tag identifier from the tagged text (e.g., "<a1b2c3d4>")
|
| 365 |
+
3. A "summary" string containing the actual summary with inline XML tag references
|
| 366 |
+
|
| 367 |
+
# Instructions
|
| 368 |
+
1. Select {number_of_xml_tags} XML tags that capture the most significant data and facts.
|
| 369 |
+
2. Begin with a brief introduction of the section's main topics (no executive summary for partial summaries).
|
| 370 |
+
3. Structure the summary in coherent paragraphs with at least one XML tag reference each.
|
| 371 |
+
4. The summary should be 300-600 words long (without the XML tags).
|
| 372 |
+
5. Only include title/author if explicitly mentioned in this section.
|
| 373 |
+
...
|
| 374 |
+
"""
|
| 375 |
+
```
|
| 376 |
+
|
| 377 |
+
**Output per chunk:** JSON with `structure`, `xml_tags`, and `summary` (300-600 words each)
|
| 378 |
+
|
| 379 |
+
#### Step 2: Final Merge (`PROMPT_SUMMARY_PARTIAL_LAST`)
|
| 380 |
+
|
| 381 |
+
Combine all partial summaries into a coherent final summary:
|
| 382 |
+
|
| 383 |
+
```python
|
| 384 |
+
# Concatenate all partial summary outputs
|
| 385 |
+
partial_summaries_text = "\n\n".join([
|
| 386 |
+
f"--- Section {i+1} ---\n{partial_output}"
|
| 387 |
+
for i, partial_output in enumerate(partial_outputs)
|
| 388 |
+
])
|
| 389 |
+
|
| 390 |
+
prompt_final = f"""You are a professional summarizer, following all given instructions with the utmost care.
|
| 391 |
+
|
| 392 |
+
You are given partial summaries from a larger document. Combine them into a coherent final summary.
|
| 393 |
+
|
| 394 |
+
<partial_summaries>
|
| 395 |
+
{partial_summaries_text}
|
| 396 |
+
</partial_summaries>
|
| 397 |
+
|
| 398 |
+
# Output Format
|
| 399 |
+
The output must be in JSON format with the following structure:
|
| 400 |
+
1. A "structure" string containing your thoughts about the content and structure of the summary
|
| 401 |
+
2. An "xml_tags" list containing objects with:
|
| 402 |
+
- "xml_tag": The XML tag identifier from the tagged text (e.g., "<a1b2c3d4>")
|
| 403 |
+
3. A "summary" string containing the actual summary with inline XML tag references
|
| 404 |
+
|
| 405 |
+
# Instructions
|
| 406 |
+
1. Select the {number_of_xml_tags} most significant XML tags from the partial summaries.
|
| 407 |
+
Copy the XML tags verbatim, ensuring they represent key points from different sections.
|
| 408 |
+
2. Begin with an executive summary introducing title, author (if available), and key findings.
|
| 409 |
+
3. Structure the summary in coherent paragraphs following a coherent thread.
|
| 410 |
+
4. Each XML tag must appear exactly once. Use only XML tags from the partial summaries.
|
| 411 |
+
5. Don't repeat content that is very similar or identical in multiple partial summaries.
|
| 412 |
+
...
|
| 413 |
+
"""
|
| 414 |
+
```
|
| 415 |
+
|
| 416 |
+
**Final Output:** JSON with `structure`, `xml_tags`, and `summary`
|
| 417 |
+
|
| 418 |
+
#### How Grounding Quality is Maintained
|
| 419 |
+
|
| 420 |
+
The iterative approach preserves source grounding through careful XML tag propagation:
|
| 421 |
+
|
| 422 |
+
1. **Tag Extraction**: Each partial summary extracts XML tags from its chunk, linking claims to source sentences
|
| 423 |
+
2. **Tag Preservation**: The final merge prompt explicitly instructs to "copy XML tags verbatim" from partials
|
| 424 |
+
3. **No Hallucinated Tags**: The final summary can only reference tags that were already validated in partial summaries
|
| 425 |
+
4. **Distributed Coverage**: By selecting tags "from different sections," the final summary maintains broad source coverage
|
| 426 |
+
|
| 427 |
+
This ensures that even for 2M+ token documents, every claim in the final summary traces back to a specific source sentence.
|
| 428 |
+
|
| 429 |
+
### Recommended Parameters
|
| 430 |
+
|
| 431 |
+
| Summary Length | Word Count | XML Tags |
|
| 432 |
+
|---------------|------------|----------|
|
| 433 |
+
| Short | ~100 words | 3 tags |
|
| 434 |
+
| Medium | ~250 words | 6 tags |
|
| 435 |
+
| Long | ~500 words | 12 tags |
|
| 436 |
+
|
| 437 |
+
---
|
| 438 |
+
|
| 439 |
+
## Usage
|
| 440 |
+
|
| 441 |
+
For production use, we provide ready-to-use prompt templates in [`prompts.py`](prompts.py). This file contains:
|
| 442 |
+
|
| 443 |
+
- `PROMPT_SUMMARY`: Standard single-pass summarization prompt
|
| 444 |
+
- `PROMPT_SUMMARY_PARTIAL`: Prompt for creating partial summaries of document chunks
|
| 445 |
+
- `PROMPT_SUMMARY_PARTIAL_LAST`: Prompt for merging partial summaries into a final summary
|
| 446 |
+
|
| 447 |
+
**Resource-constrained environments:** The iterative two-step approach is not only useful for very long documents—it also enables deployment on hardware with limited VRAM. The model was trained on a broad range of chunk sizes, so partial summaries work reliably even with smaller context windows (e.g., 5k token chunks). This flexibility allows you to adjust chunk sizes to match your available GPU memory.
|
| 448 |
+
|
| 449 |
+
### With vLLM (Recommended for Production)
|
| 450 |
+
|
| 451 |
+
```python
|
| 452 |
+
from vllm import LLM, SamplingParams
|
| 453 |
+
|
| 454 |
+
# Load model
|
| 455 |
+
llm = LLM(
|
| 456 |
+
model="ellamind/sui-1-24b",
|
| 457 |
+
tensor_parallel_size=4, # Adjust based on available GPUs
|
| 458 |
+
dtype="bfloat16",
|
| 459 |
+
tokenizer_mode="mistral",
|
| 460 |
+
max_model_len=128000,
|
| 461 |
+
trust_remote_code=True,
|
| 462 |
+
)
|
| 463 |
+
|
| 464 |
+
# Prepare prompt
|
| 465 |
+
prompt = f"""You are a professional summarizer, following all given instructions with the utmost care.
|
| 466 |
+
|
| 467 |
+
<text>
|
| 468 |
+
{tagged_text}
|
| 469 |
+
</text>
|
| 470 |
+
|
| 471 |
+
# Output Format
|
| 472 |
+
The output must be in JSON format with the following structure:
|
| 473 |
+
1. A "structure" string containing your thoughts about the content and structure of the summary
|
| 474 |
+
2. An "xml_tags" list containing the XML tag identifiers from the tagged text (e.g., "<a1b2c3d4>")
|
| 475 |
+
3. A "summary" string containing the actual summary with inline XML tag references
|
| 476 |
+
|
| 477 |
+
# Instructions
|
| 478 |
+
1. Start by thinking about and explaining the structure and content of your summary. Select {num_tags} XML tags from the tagged text that capture the most significant data and facts.
|
| 479 |
+
2. Begin with an executive summary introducing the title, author (if available), and key findings.
|
| 480 |
+
3. Structure the summary in coherent paragraphs. Every paragraph should contain at least one XML tag reference.
|
| 481 |
+
4. Reference XML tags inline in square brackets (e.g., [<a1b2c3d4>]) immediately after the statement they support.
|
| 482 |
+
5. Each XML tag must appear exactly once in the summary.
|
| 483 |
+
6. Avoid a concluding paragraph that merely restates points.
|
| 484 |
+
7. Do not use bullet points or headings unless explicitly requested.
|
| 485 |
+
|
| 486 |
+
# Custom Instruction
|
| 487 |
+
{custom_instruction}
|
| 488 |
+
|
| 489 |
+
Parameters:
|
| 490 |
+
- Word count (excl. XML tags): {word_count}
|
| 491 |
+
- Number of XML tags: {num_tags}
|
| 492 |
+
- Language: {language}
|
| 493 |
+
"""
|
| 494 |
+
|
| 495 |
+
# Generate
|
| 496 |
+
sampling_params = SamplingParams(max_tokens=8192, temperature=0.0)
|
| 497 |
+
outputs = llm.chat([[{"role": "user", "content": prompt}]], sampling_params)
|
| 498 |
+
result = outputs[0].outputs[0].text
|
| 499 |
+
```
|
| 500 |
+
|
| 501 |
+
### With Transformers
|
| 502 |
+
|
| 503 |
+
```python
|
| 504 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 505 |
+
import torch
|
| 506 |
+
|
| 507 |
+
model = AutoModelForCausalLM.from_pretrained(
|
| 508 |
+
"ellamind/sui-1-24b",
|
| 509 |
+
torch_dtype=torch.bfloat16,
|
| 510 |
+
device_map="auto",
|
| 511 |
+
trust_remote_code=True,
|
| 512 |
+
)
|
| 513 |
+
tokenizer = AutoTokenizer.from_pretrained("ellamind/sui-1-24b")
|
| 514 |
+
|
| 515 |
+
messages = [{"role": "user", "content": prompt}]
|
| 516 |
+
inputs = tokenizer.apply_chat_template(messages, return_tensors="pt").to(model.device)
|
| 517 |
+
outputs = model.generate(inputs, max_new_tokens=8192, temperature=0.0, do_sample=False)
|
| 518 |
+
result = tokenizer.decode(outputs[0], skip_special_tokens=True)
|
| 519 |
+
```
|
| 520 |
+
|
| 521 |
+
---
|
| 522 |
+
|
| 523 |
+
## Language Support
|
| 524 |
+
|
| 525 |
+
### Enhanced Languages (Fine-tuned)
|
| 526 |
+
|
| 527 |
+
The model was fine-tuned with training data in these languages, providing optimal summarization quality:
|
| 528 |
+
|
| 529 |
+
| Language | Code | Tagging Support |
|
| 530 |
+
|----------|------|-----------------|
|
| 531 |
+
| English | `en` | `en_core_web_sm` |
|
| 532 |
+
| German | `de` | `de_core_news_sm` |
|
| 533 |
+
| Spanish | `es` | `es_core_news_sm` |
|
| 534 |
+
| French | `fr` | `fr_core_news_sm` |
|
| 535 |
+
| Italian | `it` | `it_core_news_sm` |
|
| 536 |
+
|
| 537 |
+
### Inherited Languages (Base Model)
|
| 538 |
+
|
| 539 |
+
The following languages are supported through the Mistral Small 3.2 base model. Summarization works but may have reduced quality compared to enhanced languages:
|
| 540 |
+
|
| 541 |
+
| Category | Languages |
|
| 542 |
+
|----------|-----------|
|
| 543 |
+
| European | Portuguese, Dutch, Polish, Russian, Swedish, Ukrainian, Romanian, Czech, Greek, Hungarian |
|
| 544 |
+
| Asian | Chinese, Japanese, Korean, Vietnamese, Indonesian, Thai, Hindi |
|
| 545 |
+
| Middle Eastern | Arabic, Turkish, Persian |
|
| 546 |
+
|
| 547 |
+
---
|
| 548 |
+
|
| 549 |
+
## Limitations
|
| 550 |
+
|
| 551 |
+
- Requires preprocessing of input text with XML tags
|
| 552 |
+
- Maximum single-pass context of 128k tokens
|
| 553 |
+
- JSON output parsing may occasionally fail; implement retry logic for production use
|
| 554 |
+
|
| 555 |
+
---
|
| 556 |
+
|
| 557 |
+
## Citation
|
| 558 |
+
|
| 559 |
+
```bibtex
|
| 560 |
+
@article{droste2025sui1,
|
| 561 |
+
title={sui-1: Grounded and Verifiable Long-Form Summarization},
|
| 562 |
+
author={Droste, Benedikt and Harries, Jan Philipp and Idahl, Maximilian and Pl{\"u}ster, Bj{\"o}rn},
|
| 563 |
+
journal={arXiv preprint arXiv:2601.08472},
|
| 564 |
+
year={2025}
|
| 565 |
+
}
|
| 566 |
+
```
|
| 567 |
+
|
| 568 |
+
---
|
| 569 |
+
|
| 570 |
+
## License
|
| 571 |
+
|
| 572 |
+
This model is released under the Apache 2.0 license, consistent with the base Mistral model.
|
config.json
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"architectures": [
|
| 3 |
+
"Mistral3ForConditionalGeneration"
|
| 4 |
+
],
|
| 5 |
+
"dtype": "bfloat16",
|
| 6 |
+
"image_token_index": 10,
|
| 7 |
+
"model_type": "mistral3",
|
| 8 |
+
"multimodal_projector_bias": false,
|
| 9 |
+
"projector_hidden_act": "gelu",
|
| 10 |
+
"spatial_merge_size": 2,
|
| 11 |
+
"text_config": {
|
| 12 |
+
"attention_dropout": 0.0,
|
| 13 |
+
"dtype": "bfloat16",
|
| 14 |
+
"head_dim": 128,
|
| 15 |
+
"hidden_act": "silu",
|
| 16 |
+
"hidden_size": 5120,
|
| 17 |
+
"initializer_range": 0.02,
|
| 18 |
+
"intermediate_size": 32768,
|
| 19 |
+
"max_position_embeddings": 131072,
|
| 20 |
+
"model_type": "mistral",
|
| 21 |
+
"num_attention_heads": 32,
|
| 22 |
+
"num_hidden_layers": 40,
|
| 23 |
+
"num_key_value_heads": 8,
|
| 24 |
+
"rms_norm_eps": 1e-05,
|
| 25 |
+
"rope_theta": 1000000000.0,
|
| 26 |
+
"sliding_window": null,
|
| 27 |
+
"use_cache": true,
|
| 28 |
+
"vocab_size": 131072
|
| 29 |
+
},
|
| 30 |
+
"transformers_version": "4.57.1",
|
| 31 |
+
"vision_config": {
|
| 32 |
+
"attention_dropout": 0.0,
|
| 33 |
+
"dtype": "bfloat16",
|
| 34 |
+
"head_dim": 64,
|
| 35 |
+
"hidden_act": "silu",
|
| 36 |
+
"hidden_size": 1024,
|
| 37 |
+
"image_size": 1540,
|
| 38 |
+
"initializer_range": 0.02,
|
| 39 |
+
"intermediate_size": 4096,
|
| 40 |
+
"model_type": "pixtral",
|
| 41 |
+
"num_attention_heads": 16,
|
| 42 |
+
"num_channels": 3,
|
| 43 |
+
"num_hidden_layers": 24,
|
| 44 |
+
"patch_size": 14,
|
| 45 |
+
"rope_theta": 10000.0
|
| 46 |
+
},
|
| 47 |
+
"vision_feature_layer": -1
|
| 48 |
+
}
|
document.txt
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
In 1973, Prevost was planning to attend Tolentine College, an Augustinian seminary in Olympia Fields, Illinois, as part of the order's pre-novitiate program, but it closed that same year.[9][48] He promptly enrolled in Villanova University, an Augustinian college located near Philadelphia, where he earned a Bachelor of Science (BS) degree in mathematics in 1977.[12][49][50] At Villanova, he took elective courses in Hebrew and Latin, read the writings of Saint Augustine, and discussed the work of theologian Karl Rahner with other students.[9] He lived in the Augustinian friary, and was remembered as "particularly committed... to missionary work," and being "the most community minded" among the students.[51] Prevost also worked as a cemetery groundskeeper at Saint Denis Catholic Church in Havertown, Pennsylvania, while studying at Villanova.[52]
|
| 2 |
+
|
| 3 |
+
Entry into Augustinians
|
| 4 |
+
On September 1, 1977, Prevost entered the Order of Saint Augustine's novitiate in the Province of Our Mother of Good Counsel. He resided for one year at Immaculate Conception Church in the Gate District neighborhood of St. Louis, Missouri.[53][54][55][56] In the summer of 1978, Prevost spent three months in Clinical Pastoral Education at Abbott Northwestern Hospital in Minneapolis.[57][58][59] He took his first vows on September 2, 1978, and his solemn vows on August 29, 1981.[11][12]
|
| 5 |
+
|
| 6 |
+
He returned to his father's native Hyde Park to obtain a Master of Divinity (MDiv) from Catholic Theological Union in 1982 and taught physics and math at St. Rita of Cascia High School in the Wrightwood neighborhood of Chicago during his studies.[13][60] As his spiritual director, a guide to the Christian life, he chose a religious sister, Sister Lyn Osiek, RSCJ, the supervisor of his theological reflection class. She described him as "calm and steady... a person who was at peace with himself."[61]
|
| 7 |
+
|
| 8 |
+
Ordination and missionary work in Peru
|
| 9 |
+
On September 10, 1981, Prevost was ordained a deacon by Thomas Gumbleton at St. Clare of Montefalco Parish in Grosse Pointe Park, Michigan. That same year, Prevost concluded his studies at Catholic Theological Union.[62][11] Prevost was ordained a priest in Rome, at the Chapel of Saint Monica of the Augustinians by Archbishop Jean Jadot on June 19, 1982.[11][12][63]
|
| 10 |
+
|
| 11 |
+
Prevost earned a Licentiate of Canon Law (JCL) in 1984, followed by a Doctor of Canon Law (JCD) degree in 1987, both from the Pontifical University of Saint Thomas Aquinas in Rome.[12] During this period, he also learned Italian.[9] His doctoral thesis was a canon law study of the role of local priors in the Order of Saint Augustine.[64]
|
| 12 |
+
|
| 13 |
+
|
| 14 |
+
Prevost spent his novitiate at Immaculate Conception Church in St. Louis, Missouri.
|
| 15 |
+
"Padre Roberto" joined the Augustinian mission in Peru in 1985, serving as chancellor of the Territorial Prelature of Chulucanas (1985–1986), as well as an aide to bishop John McNabb. Much of his work in his first year in Peru was focused on disaster relief following severe El Niño rainstorms. [11][65] In 1987, after defending his doctoral thesis, he was vocation director and missions director of the Augustinian Province of Our Mother of Good Counsel in Olympia Fields, Illinois, and worked with the faculty of the Augustinian Novitiate in Oconomowoc, Wisconsin, before returning to Peru in 1988.[12][66] During his time in Peru, Prevost met and appreciated the Dominican priest and theologian Gustavo Gutierrez, a pioneer of liberation theology.[63] He also learned and mastered the Spanish language during this period.[9]
|
| 16 |
+
|
| 17 |
+
Prevost spent a decade heading the Augustinian seminary in Trujillo, teaching canon law in the diocesan seminary,[12] serving as prefect of studies, acting as a judge in the regional ecclesiastical court, and working in parish ministry on the city's outskirts, coming into contact with poor farmers and Peruvian indigenous peoples.[67][65]
|
| 18 |
+
|
| 19 |
+
|
| 20 |
+
Cathedral Basilica of Saint Mary, Trujillo. As a young missionary, Prevost served in various roles in the Archdiocese of Trujillo.
|
| 21 |
+
He proved successful in the Augustinians' efforts to recruit Peruvians for the priesthood and leadership positions in the order.[68] He organized support for Venezuelan refugees to Peru despite discrimination against the Venezuelans.[69]
|
| 22 |
+
|
| 23 |
+
During the Fujimorato era, Prevost criticized the actions of then-President Alberto Fujimori, placing special emphasis on the victims of the Peruvian Army, especially the Colina Group, during the period of terrorism in Peru, as well as on political corruption. In 2017, he criticized President Pedro Pablo Kuczynski's decision to pardon Fujimori, and called upon Fujimori "to personally apologize for some of the great injustices that were committed".[70] His years in Peru gave him personal knowledge of political violence and inequality; at times, as a missionary, he traveled by horse on difficult roads to reach the isolated communities in the valleys of Lambayeque.[71] He also stood out as a defender of human rights of the population of the Norte Chico region against the violence of the Marxist–Leninist–Maoist guerrilla organization Shining Path.[72][73] However, Trujilio, the area where Prevost served, was not particularly affected by the Shining Path.[65]
|
| 24 |
+
|
| 25 |
+
Prior provincial and prior general (1998–2013)
|
| 26 |
+
|
| 27 |
+
St. Thomas School in Hyde Park, Chicago
|
| 28 |
+
In 1998, Prevost was elected Prior Provincial of the Order of St. Augustine's Province of Our Mother of Good Counsel based in Chicago, assuming the role on March 8, 1999.[12] In 2000, he permitted James Ray, an Augustinian priest, to reside at St. John Stone Friary in Chicago under supervision. Ray had been suspended from public ministry since 1991 due to credible accusations that he had sexually abused minors. Prevost's allowing of the placement of Ray in a friary at the request of the Archdiocese of Chicago and close to St. Thomas School was the subject of reporting in 2021, prior to his appointment to the Vatican.[74] According to the Augustinians, "the location was selected because of the supervision the priest would receive."[61] After American bishops implemented stricter rules in the Dallas Charter, Ray was moved to other housing in 2002.[74][75][e]
|
| 29 |
+
|
| 30 |
+
Elected prior general of the Order of Saint Augustine in 2001, Prevost served two consecutive, six-year terms until 2013.[76] During his tenure as the global head of the Augustinian order, Prevost lived and worked in Rome, but frequently traveled around the world. It was in that capacity that in 2004, he visited Buenos Aires and met Cardinal Jorge Bergoglio, the future Pope Francis, for the first time. Their early encounters are reported to have not gone well. Prevost later explained that at the time, he thought he would never become a bishop after Bergoglio was elected Pope in 2013, but has declined to reveal what they initially disagreed upon. However, they were able to reconcile their differences before Prevost left Rome for Chicago in 2013.[9] Soon after his election as prior general, Prevost personally oversaw the creation of a web site for the Augustinians.[77]
|
| 31 |
+
|
| 32 |
+
From 2013 to 2014, Prevost served as director of formation at the Convent of St. Augustine in Chicago, and as first councilor and provincial vicar of the province of Our Mother of Good Counsel.[12]
|
| 33 |
+
|
| 34 |
+
Bishop of Chiclayo (2015–2023)
|
| 35 |
+
|
| 36 |
+
St. Mary's Cathedral in Chiclayo, Peru, where Prevost was diocesan bishop from 2015 to 2023
|
| 37 |
+
On November 3, 2014, Pope Francis appointed Prevost as the apostolic administrator of the Diocese of Chiclayo in northern Peru and the titular bishop of Sufar.[78] He was consecrated on December 12, 2014, at St. Mary Cathedral by Archbishop James Green, Apostolic Nuncio to Peru.[79][80] On September 26, 2015, he was named Bishop of Chiclayo.[81][82] As required by a 1980 agreement between the Holy See and Peru,[83] Prevost became a naturalized Peruvian citizen before becoming bishop.[60] At the time of his appointment, Chiclayo was described as a conservative diocese, having been staffed by Opus Dei priests for many decades.[65]
|
| 38 |
+
|
| 39 |
+
Prevost developed a close bond with the diocese of Chiclayo, directing a special message to them in his first message as pope, calling them "my beloved diocese", "faithful people" and "faithful church".[84][85] He was seen as being "very faithful to the Church's social doctrine" and organized relief efforts during calamities. He also supported projects in favor of Venezuelan refugees and encouraged vocations in youth groups, giving strong support to the seminary.[86] He helped victims of trafficking and sex workers learn new skills and trades, and invited them to spiritual retreats, while ensuring that volunteer workers have adequate training. He is remembered for his capacity to listen and have discussions with different groups before taking action, and working with institutions when facing controversial issues.[87] He established a diocesan Commission on Integral Ecology and appointed a woman to lead it.[84] According to interviews done by The Pillar, people in the diocese described their bishop as having a "balanced" personality, a "calming presence", showing "great charity and great clarity" in doctrinal matters, and a competent administrator and bridge-builder open to dialogue and never hurtful, with "apostolic zeal"[86]
|
| 40 |
+
|
| 41 |
+
Prevost as Bishop of Chiclayo in 2018, commenting on extreme poverty in the region (in Spanish)
|
| 42 |
+
On July 13, 2019, Prevost was appointed a member of the Congregation for the Clergy,[88] and on April 15, 2020, he became apostolic administrator of Callao.[89][f] On November 21, 2020, he joined the Congregation for Bishops.[90] Within the Episcopal Conference of Peru, he served on the permanent council (2018–2020) and was elected president of its Commission for Education and Culture in 2019, also contributing to Caritas Peru.[91][92] His presence in the permanent council of the episcopal conference was seen by Cardinal Joseph Tobin as "extraordinary for someone who was not born in Peru. Clearly, he has a broad degree of acceptance in the divided group."[93] Prevost had a private audience with Pope Francis on March 1, 2021,[94] sparking speculation about a new role in Chicago or Rome.[95]
|
| 43 |
+
|
| 44 |
+
Prevost has been accused of covering up sexual abuse during his time in Chiclayo.[96][97] In 2022, alleged victims of abuse in 2007 by priests Ricardo Yesquén Paiva and Eleuterio Vásquez Gonzáles said the Diocese of Chiclayo failed to investigate their cases.[98] The Diocese of Chiclayo stated that Prevost followed proper procedures, met with Ana María Quispe and her sisters in April 2022 to personally attend the victims, encouraged them to initiate a civil action, and initiated a canonical investigation, the results of which he sent to the Dicastery for the Doctrine of the Faith.[99][100] The sisters stated in 2024 that no full penal canonical investigation occurred, and an investigation by América Televisión concluded that the church's investigation was not thorough.[101][102]
|
| 45 |
+
|
| 46 |
+
In response the diocese of Chiclayo stated the allegations of the TV program were false, calling on it to correct its inaccuracies. The diocese said that the accused priest "never admitted" to the accusations, that Prevost prohibited him from exercising the priestly ministry and the priest transferred residence to his family's home. Prevost submitted the dossier to the Vatican, which gave a "pro nunc" decision or temporary dismissal. The diocese later reopened the case and sent it to the Vatican anew, and thus it remains "open up to now."[103]
|
| 47 |
+
|
| 48 |
+
Speaking to the Peruvian newspaper La República while Bishop of Chiclayo, Prevost said: "If you are a victim of sexual abuse by a priest, report it. We reject cover-ups and secrecy; that causes a lot of harm. We have to help people who have suffered due to wrongdoing."[104][105][g] Journalist Pedro Salinas [es], who investigated and exposed crimes committed by members of the now-defunct Sodalitium Christianae Vitae—including sexual, physical, and psychological abuse—has argued that Prevost always expressed his support for the victims and was one of the most reliable clerical authorities in Peru, leading Pope Francis to select him as prefect of bishops. Salinas has written that some of the Peruvian clerics linked to the Sodalitium sought to attack and defame Prevost in retaliation for his role in the Sodalitium's dissolution by Pope Francis due to its sexual abuse scandals, as well as Prevost being near to Francis's political theology.[106][107]
|
| 49 |
+
|
| 50 |
+
Dicastery for Bishops and cardinalate (2023–2025)
|
| 51 |
+
|
| 52 |
+
Cardinal Prevost (first from right) during the procession with the body of Pope Francis, April 23, 2025
|
| 53 |
+
|
| 54 |
+
Prevost during the Consistory in 2023
|
| 55 |
+
By the 2020s, Pope Francis had become close to Prevost and advanced his career.[9][108] On January 30, 2023, Francis appointed Prevost prefect of the Dicastery for Bishops with the title Archbishop-Bishop emeritus of Chiclayo.[109][110] Prevost expressed a preference to stay in Peru, but accepted the appointment.[108] He continued to be active in the Latin American and Caribbean Episcopal Council and participated in the council's meetings in Aguadilla, Puerto Rico, in May 2023.[111]
|
| 56 |
+
|
| 57 |
+
On September 30, 2023, Francis created Prevost a cardinal with the rank of Cardinal-Deacon and assigned the deaconry of Santa Monica degli Agostiniani.[112] As prefect, he played a critical role in evaluating and recommending episcopal candidates worldwide, increasing his visibility within the church.[113] These roles elevated his prominence as a papal candidate leading into the conclave.[114][115][116] In October 2023, Francis appointed him as a member of seven additional dicasteries,[12][h] and also named him to the Pontifical Commission for the Vatican City State.[12]
|
| 58 |
+
|
| 59 |
+
On February 6, 2025, Francis promoted Prevost to cardinal-bishop, assigning him as titular bishop of the Suburbicarian Diocese of Albano.[117][118][i] On February 11, he was appointed to the dignity and rank of Bailiff Grand Cross of Honour and Devotion of the Order of Malta by Grand Master Fra' John Dunlap.[120]
|
| 60 |
+
|
| 61 |
+
Written works before the papacy and theology of leadership
|
| 62 |
+
Main article: Pope Leo XIV bibliography
|
| 63 |
+
Given his focus on mission, the writings of Prevost before his election were few.[121][122] When he was global head of the Augustinians, the Rule and Constitutions of the Order of Saint Augustine was "issued by Authority of the Prior General, Robert F. Prevost" in 2002.[123]
|
| 64 |
+
|
| 65 |
+
Aside from four journal articles published mostly in Augustininan journals, his main work of scholarship is his doctoral dissertation, The office and authority of the local Prior in the Order of Saint Augustine, published by the Pontifical University of Saint Thomas Aquinas in 1987. The work has been noted for its legal precision, Augustinian roots, postconciliar engagement and historical depth.[124] Much of the commentary see this work as a window to his "vision of the church" and "theology of leadership."[125][126][127]
|
| 66 |
+
|
| 67 |
+
In his thesis, Prevost sees that authority is received from above, and therefore "the substance of the office of the superior is to obey; to obey the will of God and to put great effort into trying to know it, to formulate it and to specify it for his subjects."[124] Leadership is based on Jesus Christ's threefold offices of teaching, sanctifying and governing, who sanctifies by prayer and builds community by being centered on the Mass, having "the care of the Brothers, 'especially in spiritual matters.'" The prior must help make the sacraments regular and reverent, protecting "each brother's freedom of conscience while promoting 'frequent' confession."[125]
|
| 68 |
+
|
| 69 |
+
Based on St. Augustine's concept, Prevost sees authority as a service.[128] He says that service means "listening to what the Spirit is saying in His people so that His projects can be carried out freely and willingly. The Prior then is called to listen, so that together they can discern and implement what the Spirit inspires."[126]
|
| 70 |
+
|
| 71 |
+
Papacy (2025–present)
|
| 72 |
+
Election
|
| 73 |
+
See also: 2025 conclave
|
| 74 |
+
|
| 75 |
+
Pope Leo XIV waving from the loggia of St. Peter's Basilica in his first public appearance
|
| 76 |
+
In pre-conclave speculation, Prevost was considered a dark horse compared to more prominent papabili,[129][130] although he was noted to be an ally of Pope Francis and a possible compromise candidate.[129][131] His American nationality had been regarded as a potential stumbling block to his candidacy, reflecting unease about enhancing the United States's geopolitical power.[8][132] Prevost was well aware of this, explaining to a friend by text message: "I'm an American, I can't be elected".[9] Supporters argued that he represented a "dignified middle of the road".[133]
|
| 77 |
+
|
| 78 |
+
Prevost was elected pope on May 8, 2025, the second day of the conclave, on the fourth ballot. White smoke appeared from the Sistine Chapel at 18:07 CEST (UTC+2), signifying to the public that a pope had been chosen.[134] After accepting his election and adopting his papal name, Leo embraced his fellow cardinals upon exiting the Sistine Chapel. Cardinal Dominique Mamberti, the cardinal protodeacon, made the traditional Latin proclamation, Habemus papam, announcing Pope Leo XIV to the public for the first time from the central loggia of St. Peter's Basilica.[135][136] According to Italian law enforcement, by the time of the habemus papam announcement, there were up to 150,000 in the square.[137]
|
| 79 |
+
|
| 80 |
+
Leo appeared wearing the traditional papal stole and mozzetta,[138] vestments Pope Francis did not wear upon his greeting of the world following his election.[139][140] Leo's pectoral cross was one he wore during the conclave, a gift from the Postulator General of the Augustinian Order when he became a cardinal, containing relics from Saint Augustine and his mother Saint Monica, among others.[141] He then delivered his first address to Rome and the world in Italian, advocating for peace and dialogue, expressing gratitude for the legacy of Pope Francis and quoting Saint Augustine; he also greeted his former diocese of Chiclayo, Peru, in Spanish. After the speech, he imparted his first Urbi et Orbi blessing in Latin.[142][143][144]
|
| 81 |
+
|
| 82 |
+
Leo XIV is the first pope from the Order of Saint Augustine and the second pope from the Americas (after Pope Francis), and is counted as the 267th pope.[145][12][146][j] He is a dual citizen of Peru and the United States.[147][148][149] He is the first American pope,[150] in the sense of being the first born in the United States.[151][152][153] He is the second to be a native English speaker, after the English-born Adrian IV (r. 1154–1159), who would have spoken Middle English.[154] Leo is also the first pope born after World War II and during the Cold War, and thus the first to be born in the Baby Boomer generation.[155][156] While Leo is the first pope from the Order of Saint Augustine,[157][158] six previous popes belonged to other orders which follow the Augustinian Rule, the last one prior to Leo being Pope Eugene IV (1431–1447).[159]
|
| 83 |
+
|
| 84 |
+
Inauguration
|
| 85 |
+
Main article: Inauguration of Pope Leo XIV
|
| 86 |
+
|
| 87 |
+
Pope Leo XIV's first popemobile ride during his inauguration
|
| 88 |
+
On May 9, the day after his election, Leo celebrated his first Mass as pope in the Sistine Chapel before the assembled College of Cardinals. During the Mass, he preached against the lack of faith in the world, and spoke of a church that would act as a "beacon that illuminates the dark nights of this world".[160] Media reported that Leo would take up permanent residence in the papal apartments in the Apostolic Palace rather than in the Domus Sanctae Marthae where Francis lived.[161][162][163]
|
| 89 |
+
|
| 90 |
+
Leo's inauguration Mass was held on May 18 in St. Peter's Square.[164][165][166] During the Mass, he received the pallium and his Ring of the Fisherman before 12 representatives of the people of God, including cardinals and bishops, who vowed obedience to the new pope.[167] On May 25, he was formally installed as Bishop of Rome in a ceremony at the Archbasilica of Saint John Lateran.[168]
|
| 91 |
+
|
| 92 |
+
Post-election reactions and impact
|
| 93 |
+
Main article: International reactions to the election of Pope Leo XIV
|
| 94 |
+
In Chiclayo, thousands crowded the city square for a Mass of Thanksgiving following Leo's election. Similar Masses were celebrated all over Peru.[169] In the US, over 30,000 Americans gathered at Chicago's Rate Field for a youth-focused celebration with a video message of Leo XIV who urged Catholics to be "beacons of hope".[170]
|
| 95 |
+
|
| 96 |
+
Political leaders sent their congratulations. President Donald Trump stated that it is "a Great Honor for our Country", while Vice President JD Vance, a Catholic, talked about Catholics and other Christians praying "for his successful work leading the Church". The European Council President António Costa said it was "a moment of hope".[171]
|
| 97 |
+
|
| 98 |
+
Early acts
|
| 99 |
+
On June 5, 2025, Leo nominated Joseph Lin Yuntuan as auxiliary bishop of Fuzhou, which was approved by Chinese authorities on June 11 as part of a 2018 agreement between the People's Republic of China and the Holy See under Pope Francis.[172] On July 5, Leo appointed French archbishop Thibault Verny to succeed Seán Patrick O'Malley as president of the Pontifical Commission for the Protection of Minors. O'Malley endorsed the selection, describing Verny as "a collaborative leader committed to advancing the global adoption of protection and safeguarding, to as best possible assure the safety of those in the care of the Church throughout the world."[173] On July 6, Leo revived the papal practice of taking summer residence at the Castel Gandolfo, which Francis had discontinued.[174]
|
| 100 |
+
|
| 101 |
+
On September 7, 2025, Leo presided over the canonization of Carlo Acutis and Pier Giorgio Frassati at a mass in Saint Peter's Square.[175] A month later, his first Apostolic journey, a visit to Turkey and Lebanon, was announced for November 27 through December 2.[176] On November 21, 2025, Leo signed an amendment to the 2023 law allowing women to become president of the Pontifical Commission for the Vatican City State, removing a requirement that would-be officeholders must hold the rank of cardinal.[177] On November 27, 2025, Leo made his first overseas visit as pope, arriving in Turkey to commemorate the 1,700th anniversary of the Council of Nicaea with Patriarch Bartholomew of the Eastern Orthodox Church;[178][179] while in Istanbul, he visited the Blue Mosque.[180][181] Leo later visited Lebanon, visiting and praying at the site of the 2020 Beirut explosion[182] and later the tomb of Charbel Makhlouf[183] before returning to Rome on December 2.[182]"
|
example.py
ADDED
|
@@ -0,0 +1,203 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#!/usr/bin/env -S uv run --script
|
| 2 |
+
# /// script
|
| 3 |
+
# requires-python = ">=3.12"
|
| 4 |
+
# dependencies = [
|
| 5 |
+
# "vllm>=0.11.0",
|
| 6 |
+
# "spacy>=3.7.0",
|
| 7 |
+
# "mistral_common>=1.5.0",
|
| 8 |
+
# "en-core-web-sm @ https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.8.0/en_core_web_sm-3.8.0-py3-none-any.whl",
|
| 9 |
+
# ]
|
| 10 |
+
#
|
| 11 |
+
# [tool.uv]
|
| 12 |
+
# no-build = true
|
| 13 |
+
# index-strategy = "unsafe-best-match"
|
| 14 |
+
# extra-index-url = ["https://download.pytorch.org/whl/cu128"]
|
| 15 |
+
# ///
|
| 16 |
+
"""
|
| 17 |
+
Minimal end-to-end example for sui-1-24b summarization.
|
| 18 |
+
|
| 19 |
+
Usage:
|
| 20 |
+
# Summarize a file
|
| 21 |
+
uv run example.py document.txt
|
| 22 |
+
|
| 23 |
+
# Summarize inline text
|
| 24 |
+
uv run example.py --text "Your long text here..."
|
| 25 |
+
|
| 26 |
+
# With custom parameters
|
| 27 |
+
uv run example.py document.txt --words 300 --tags 8 --language en
|
| 28 |
+
"""
|
| 29 |
+
|
| 30 |
+
import argparse
|
| 31 |
+
import hashlib
|
| 32 |
+
import json
|
| 33 |
+
import re
|
| 34 |
+
import sys
|
| 35 |
+
from pathlib import Path
|
| 36 |
+
|
| 37 |
+
# Lazy imports for faster --help
|
| 38 |
+
def main():
|
| 39 |
+
parser = argparse.ArgumentParser(
|
| 40 |
+
description="Summarize text using sui-1-24b with source grounding",
|
| 41 |
+
formatter_class=argparse.RawDescriptionHelpFormatter,
|
| 42 |
+
epilog=__doc__,
|
| 43 |
+
)
|
| 44 |
+
parser.add_argument("input", nargs="?", help="Input file path (or use --text)")
|
| 45 |
+
parser.add_argument("--text", "-t", help="Input text directly")
|
| 46 |
+
parser.add_argument("--words", "-w", type=int, default=250, help="Target word count (default: 400)")
|
| 47 |
+
parser.add_argument("--tags", "-n", type=int, default=4, help="Number of XML tags to cite (default: 10)")
|
| 48 |
+
parser.add_argument("--language", "-l", default="en", choices=["en", "de", "es", "fr", "it"], help="Language (default: en)")
|
| 49 |
+
parser.add_argument("--model", "-m", default="ellamind/sui-1-24b", help="Model path or HF repo")
|
| 50 |
+
parser.add_argument("--tensor-parallel", "-tp", type=int, default=1, help="Tensor parallel size (default: 1)")
|
| 51 |
+
parser.add_argument("--raw", action="store_true", help="Print raw JSON output instead of formatted")
|
| 52 |
+
args = parser.parse_args()
|
| 53 |
+
|
| 54 |
+
# Get input text
|
| 55 |
+
if args.text:
|
| 56 |
+
text = args.text
|
| 57 |
+
elif args.input:
|
| 58 |
+
text = Path(args.input).read_text()
|
| 59 |
+
else:
|
| 60 |
+
parser.error("Provide input file or --text")
|
| 61 |
+
|
| 62 |
+
# Import heavy dependencies only when needed
|
| 63 |
+
import spacy
|
| 64 |
+
from vllm import LLM, SamplingParams
|
| 65 |
+
|
| 66 |
+
# Load spaCy model for sentence segmentation
|
| 67 |
+
# Note: Only English is bundled. For other languages, install the model first:
|
| 68 |
+
# pip install https://github.com/explosion/spacy-models/releases/download/de_core_news_sm-3.8.0/de_core_news_sm-3.8.0-py3-none-any.whl
|
| 69 |
+
spacy_models = {
|
| 70 |
+
"en": "en_core_web_sm",
|
| 71 |
+
"de": "de_core_news_sm",
|
| 72 |
+
"es": "es_core_news_sm",
|
| 73 |
+
"fr": "fr_core_news_sm",
|
| 74 |
+
"it": "it_core_news_sm",
|
| 75 |
+
}
|
| 76 |
+
try:
|
| 77 |
+
nlp = spacy.load(spacy_models[args.language])
|
| 78 |
+
except OSError:
|
| 79 |
+
print(f"Error: spaCy model '{spacy_models[args.language]}' not found.")
|
| 80 |
+
print(f"For English, this should be bundled automatically.")
|
| 81 |
+
print(f"For other languages, install the model first:")
|
| 82 |
+
print(f" pip install https://github.com/explosion/spacy-models/releases/download/{spacy_models[args.language]}-3.8.0/{spacy_models[args.language]}-3.8.0-py3-none-any.whl")
|
| 83 |
+
sys.exit(1)
|
| 84 |
+
|
| 85 |
+
# Tag sentences with unique XML identifiers
|
| 86 |
+
print("Tagging sentences...")
|
| 87 |
+
doc = nlp(text)
|
| 88 |
+
tagged_text = ""
|
| 89 |
+
tag_mapping = {}
|
| 90 |
+
|
| 91 |
+
for i, sent in enumerate(doc.sents):
|
| 92 |
+
sentence = sent.text.strip()
|
| 93 |
+
if sentence:
|
| 94 |
+
tag = hashlib.md5(f"{i}_{sentence[:50]}".encode()).hexdigest()[:8]
|
| 95 |
+
tag_mapping[tag] = sentence
|
| 96 |
+
tagged_text += f"<{tag}>{sentence}</{tag}>"
|
| 97 |
+
|
| 98 |
+
print(f"Tagged {len(tag_mapping)} sentences")
|
| 99 |
+
|
| 100 |
+
# Build prompt
|
| 101 |
+
language_names = {"en": "English", "de": "German", "es": "Spanish", "fr": "French", "it": "Italian"}
|
| 102 |
+
prompt = f"""You are a professional summarizer, following all given instructions with the utmost care.
|
| 103 |
+
|
| 104 |
+
<text>
|
| 105 |
+
{tagged_text}
|
| 106 |
+
</text>
|
| 107 |
+
|
| 108 |
+
# Output Format
|
| 109 |
+
The output must be in JSON format with the following structure:
|
| 110 |
+
1. A "structure" string containing your thoughts about the content and structure of the summary
|
| 111 |
+
2. An "xml_tags" list containing the XML tag identifiers from the tagged text (e.g., "<a1b2c3d4>")
|
| 112 |
+
3. A "summary" string containing the actual summary with inline XML tag references
|
| 113 |
+
|
| 114 |
+
# Instructions
|
| 115 |
+
1. Start by thinking about and explaining the structure and content of your summary. Select {args.tags} XML tags from the tagged text that capture the most significant data and facts.
|
| 116 |
+
2. Begin with an executive summary introducing the title, author (if available), and key findings.
|
| 117 |
+
3. Structure the summary in coherent paragraphs. Every paragraph should contain at least one XML tag reference.
|
| 118 |
+
4. Reference XML tags inline in square brackets (e.g., [<a1b2c3d4>]) immediately after the statement they support.
|
| 119 |
+
5. Each XML tag must appear exactly once in the summary.
|
| 120 |
+
6. Avoid a concluding paragraph that merely restates points.
|
| 121 |
+
7. Do not use bullet points or headings unless explicitly requested.
|
| 122 |
+
|
| 123 |
+
Parameters:
|
| 124 |
+
- Word count (excl. XML tags): {args.words}
|
| 125 |
+
- Number of XML tags: {args.tags}
|
| 126 |
+
- Language: {language_names[args.language]}
|
| 127 |
+
"""
|
| 128 |
+
|
| 129 |
+
# Load model and generate
|
| 130 |
+
print(f"Loading model: {args.model}")
|
| 131 |
+
llm = LLM(
|
| 132 |
+
model=args.model,
|
| 133 |
+
tensor_parallel_size=args.tensor_parallel,
|
| 134 |
+
dtype="bfloat16",
|
| 135 |
+
tokenizer_mode="mistral",
|
| 136 |
+
trust_remote_code=True,
|
| 137 |
+
limit_mm_per_prompt={"image": 0}, # Disable vision encoder for text-only
|
| 138 |
+
)
|
| 139 |
+
|
| 140 |
+
print("Generating summary...")
|
| 141 |
+
sampling_params = SamplingParams(max_tokens=4096, temperature=0.0)
|
| 142 |
+
outputs = llm.chat([[{"role": "user", "content": prompt}]], sampling_params)
|
| 143 |
+
result = outputs[0].outputs[0].text
|
| 144 |
+
|
| 145 |
+
# Parse and display output
|
| 146 |
+
if args.raw:
|
| 147 |
+
print(result)
|
| 148 |
+
return
|
| 149 |
+
|
| 150 |
+
try:
|
| 151 |
+
# Extract JSON from response
|
| 152 |
+
json_match = re.search(r'\{[\s\S]*\}', result)
|
| 153 |
+
if json_match:
|
| 154 |
+
data = json.loads(json_match.group())
|
| 155 |
+
|
| 156 |
+
print("\n" + "=" * 60)
|
| 157 |
+
print("SUMMARY")
|
| 158 |
+
print("=" * 60 + "\n")
|
| 159 |
+
|
| 160 |
+
summary = data.get("summary", "")
|
| 161 |
+
|
| 162 |
+
# Replace XML tags with highlighted source references
|
| 163 |
+
def replace_tag(match):
|
| 164 |
+
tag = match.group(1)
|
| 165 |
+
source = tag_mapping.get(tag, "???")
|
| 166 |
+
# Truncate long sources
|
| 167 |
+
if len(source) > 80:
|
| 168 |
+
source = source[:77] + "..."
|
| 169 |
+
return f"[{tag}]"
|
| 170 |
+
|
| 171 |
+
clean_summary = re.sub(r'\[<([a-f0-9]{8})>\]', replace_tag, summary)
|
| 172 |
+
print(clean_summary)
|
| 173 |
+
|
| 174 |
+
print("\n" + "-" * 60)
|
| 175 |
+
print("SOURCES")
|
| 176 |
+
print("-" * 60)
|
| 177 |
+
|
| 178 |
+
# Show referenced sources
|
| 179 |
+
# Handle both formats: ["<tag>"] or [{"xml_tag": "<tag>"}]
|
| 180 |
+
xml_tags = data.get("xml_tags", [])
|
| 181 |
+
for tag in xml_tags:
|
| 182 |
+
if isinstance(tag, str):
|
| 183 |
+
clean_tag = tag.strip("<>")
|
| 184 |
+
elif isinstance(tag, dict) and "xml_tag" in tag:
|
| 185 |
+
clean_tag = tag["xml_tag"].strip("<>")
|
| 186 |
+
else:
|
| 187 |
+
continue
|
| 188 |
+
source = tag_mapping.get(clean_tag, "Not found")
|
| 189 |
+
if len(source) > 100:
|
| 190 |
+
source = source[:97] + "..."
|
| 191 |
+
print(f"[{clean_tag}] {source}")
|
| 192 |
+
|
| 193 |
+
else:
|
| 194 |
+
print("Could not parse JSON response:")
|
| 195 |
+
print(result)
|
| 196 |
+
|
| 197 |
+
except json.JSONDecodeError as e:
|
| 198 |
+
print(f"JSON parse error: {e}")
|
| 199 |
+
print(result)
|
| 200 |
+
|
| 201 |
+
|
| 202 |
+
if __name__ == "__main__":
|
| 203 |
+
main()
|
generation_config.json
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_from_model_config": true,
|
| 3 |
+
"bos_token_id": 1,
|
| 4 |
+
"do_sample": true,
|
| 5 |
+
"eos_token_id": 2,
|
| 6 |
+
"temperature": 0.15,
|
| 7 |
+
"transformers_version": "4.57.1"
|
| 8 |
+
}
|
images/criteria_breakdown.png
ADDED
|
images/overall_performance.png
ADDED
|
images/sui_icon.jpeg
ADDED
|
|
Git LFS Details
|
merge_metadata.json
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"base_model": "mistralai/Mistral-Small-3.2-24B-Instruct-2506",
|
| 3 |
+
"lora_checkpoint": "outputs/lora-mistral3-small-3.2-24b-out-v11",
|
| 4 |
+
"merged_at": "NVIDIA H100"
|
| 5 |
+
}
|
model-00001-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:6ce50851ba63f0676579bda2980687fb1163fcaef943316a1fc9dfe92e0e029a
|
| 3 |
+
size 4883550696
|
model-00002-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:8ad4f58e106059022223e77e7e4159815e945ac474f41e5e03d5a1949ecb56b6
|
| 3 |
+
size 4781593336
|
model-00003-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e6b48bae19a6ac6077cf857ea08fe0df7896680305aabdf30fb66021cb66ee8e
|
| 3 |
+
size 4886472224
|
model-00004-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:b33a70eb8e278672070d683d4c0ad442efe9fd5a840a36ac572a683c513f6b7f
|
| 3 |
+
size 4781593376
|
model-00005-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4929ca9a27b65335df063d38959c070b49ee2015c569e6fdd256b0bebefeab32
|
| 3 |
+
size 4781593368
|
model-00006-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ebe791e39244125e5380ea6c5c9d0d7c842fdc5fa0b839c3fea40941831e3b16
|
| 3 |
+
size 4886472248
|
model-00007-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:11325d99e44c88afa3661854459e57a994a73df64f69211d7aaaae80fe881e3c
|
| 3 |
+
size 4781593376
|
model-00008-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:a9318e3fc1d9afcdeb9a4a153f82b352e6fccbc64d2a209d90a7ddcd18d59f51
|
| 3 |
+
size 4781593368
|
model-00009-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:9b107f8f890efd3d2bd651edb1ebd7c8af2080f5855fa12f11efbef5f70459c0
|
| 3 |
+
size 4886472248
|
model-00010-of-00010.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:b51b85f9ac19d93e7b05d8e9c793c8f011164aa38f4ec2e68f685799cd6aaba2
|
| 3 |
+
size 4571866320
|
model.safetensors.index.json
ADDED
|
@@ -0,0 +1,593 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"metadata": {
|
| 3 |
+
"total_parameters": 24011361280,
|
| 4 |
+
"total_size": 48022722560
|
| 5 |
+
},
|
| 6 |
+
"weight_map": {
|
| 7 |
+
"language_model.lm_head.weight": "model-00010-of-00010.safetensors",
|
| 8 |
+
"language_model.model.embed_tokens.weight": "model-00001-of-00010.safetensors",
|
| 9 |
+
"language_model.model.layers.0.input_layernorm.weight": "model-00001-of-00010.safetensors",
|
| 10 |
+
"language_model.model.layers.0.mlp.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 11 |
+
"language_model.model.layers.0.mlp.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 12 |
+
"language_model.model.layers.0.mlp.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 13 |
+
"language_model.model.layers.0.post_attention_layernorm.weight": "model-00001-of-00010.safetensors",
|
| 14 |
+
"language_model.model.layers.0.self_attn.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 15 |
+
"language_model.model.layers.0.self_attn.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 16 |
+
"language_model.model.layers.0.self_attn.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 17 |
+
"language_model.model.layers.0.self_attn.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 18 |
+
"language_model.model.layers.1.input_layernorm.weight": "model-00001-of-00010.safetensors",
|
| 19 |
+
"language_model.model.layers.1.mlp.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 20 |
+
"language_model.model.layers.1.mlp.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 21 |
+
"language_model.model.layers.1.mlp.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 22 |
+
"language_model.model.layers.1.post_attention_layernorm.weight": "model-00001-of-00010.safetensors",
|
| 23 |
+
"language_model.model.layers.1.self_attn.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 24 |
+
"language_model.model.layers.1.self_attn.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 25 |
+
"language_model.model.layers.1.self_attn.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 26 |
+
"language_model.model.layers.1.self_attn.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 27 |
+
"language_model.model.layers.10.input_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 28 |
+
"language_model.model.layers.10.mlp.down_proj.weight": "model-00003-of-00010.safetensors",
|
| 29 |
+
"language_model.model.layers.10.mlp.gate_proj.weight": "model-00003-of-00010.safetensors",
|
| 30 |
+
"language_model.model.layers.10.mlp.up_proj.weight": "model-00003-of-00010.safetensors",
|
| 31 |
+
"language_model.model.layers.10.post_attention_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 32 |
+
"language_model.model.layers.10.self_attn.k_proj.weight": "model-00003-of-00010.safetensors",
|
| 33 |
+
"language_model.model.layers.10.self_attn.o_proj.weight": "model-00003-of-00010.safetensors",
|
| 34 |
+
"language_model.model.layers.10.self_attn.q_proj.weight": "model-00003-of-00010.safetensors",
|
| 35 |
+
"language_model.model.layers.10.self_attn.v_proj.weight": "model-00003-of-00010.safetensors",
|
| 36 |
+
"language_model.model.layers.11.input_layernorm.weight": "model-00004-of-00010.safetensors",
|
| 37 |
+
"language_model.model.layers.11.mlp.down_proj.weight": "model-00004-of-00010.safetensors",
|
| 38 |
+
"language_model.model.layers.11.mlp.gate_proj.weight": "model-00004-of-00010.safetensors",
|
| 39 |
+
"language_model.model.layers.11.mlp.up_proj.weight": "model-00004-of-00010.safetensors",
|
| 40 |
+
"language_model.model.layers.11.post_attention_layernorm.weight": "model-00004-of-00010.safetensors",
|
| 41 |
+
"language_model.model.layers.11.self_attn.k_proj.weight": "model-00003-of-00010.safetensors",
|
| 42 |
+
"language_model.model.layers.11.self_attn.o_proj.weight": "model-00003-of-00010.safetensors",
|
| 43 |
+
"language_model.model.layers.11.self_attn.q_proj.weight": "model-00003-of-00010.safetensors",
|
| 44 |
+
"language_model.model.layers.11.self_attn.v_proj.weight": "model-00003-of-00010.safetensors",
|
| 45 |
+
"language_model.model.layers.12.input_layernorm.weight": "model-00004-of-00010.safetensors",
|
| 46 |
+
"language_model.model.layers.12.mlp.down_proj.weight": "model-00004-of-00010.safetensors",
|
| 47 |
+
"language_model.model.layers.12.mlp.gate_proj.weight": "model-00004-of-00010.safetensors",
|
| 48 |
+
"language_model.model.layers.12.mlp.up_proj.weight": "model-00004-of-00010.safetensors",
|
| 49 |
+
"language_model.model.layers.12.post_attention_layernorm.weight": "model-00004-of-00010.safetensors",
|
| 50 |
+
"language_model.model.layers.12.self_attn.k_proj.weight": "model-00004-of-00010.safetensors",
|
| 51 |
+
"language_model.model.layers.12.self_attn.o_proj.weight": "model-00004-of-00010.safetensors",
|
| 52 |
+
"language_model.model.layers.12.self_attn.q_proj.weight": "model-00004-of-00010.safetensors",
|
| 53 |
+
"language_model.model.layers.12.self_attn.v_proj.weight": "model-00004-of-00010.safetensors",
|
| 54 |
+
"language_model.model.layers.13.input_layernorm.weight": "model-00004-of-00010.safetensors",
|
| 55 |
+
"language_model.model.layers.13.mlp.down_proj.weight": "model-00004-of-00010.safetensors",
|
| 56 |
+
"language_model.model.layers.13.mlp.gate_proj.weight": "model-00004-of-00010.safetensors",
|
| 57 |
+
"language_model.model.layers.13.mlp.up_proj.weight": "model-00004-of-00010.safetensors",
|
| 58 |
+
"language_model.model.layers.13.post_attention_layernorm.weight": "model-00004-of-00010.safetensors",
|
| 59 |
+
"language_model.model.layers.13.self_attn.k_proj.weight": "model-00004-of-00010.safetensors",
|
| 60 |
+
"language_model.model.layers.13.self_attn.o_proj.weight": "model-00004-of-00010.safetensors",
|
| 61 |
+
"language_model.model.layers.13.self_attn.q_proj.weight": "model-00004-of-00010.safetensors",
|
| 62 |
+
"language_model.model.layers.13.self_attn.v_proj.weight": "model-00004-of-00010.safetensors",
|
| 63 |
+
"language_model.model.layers.14.input_layernorm.weight": "model-00004-of-00010.safetensors",
|
| 64 |
+
"language_model.model.layers.14.mlp.down_proj.weight": "model-00004-of-00010.safetensors",
|
| 65 |
+
"language_model.model.layers.14.mlp.gate_proj.weight": "model-00004-of-00010.safetensors",
|
| 66 |
+
"language_model.model.layers.14.mlp.up_proj.weight": "model-00004-of-00010.safetensors",
|
| 67 |
+
"language_model.model.layers.14.post_attention_layernorm.weight": "model-00004-of-00010.safetensors",
|
| 68 |
+
"language_model.model.layers.14.self_attn.k_proj.weight": "model-00004-of-00010.safetensors",
|
| 69 |
+
"language_model.model.layers.14.self_attn.o_proj.weight": "model-00004-of-00010.safetensors",
|
| 70 |
+
"language_model.model.layers.14.self_attn.q_proj.weight": "model-00004-of-00010.safetensors",
|
| 71 |
+
"language_model.model.layers.14.self_attn.v_proj.weight": "model-00004-of-00010.safetensors",
|
| 72 |
+
"language_model.model.layers.15.input_layernorm.weight": "model-00005-of-00010.safetensors",
|
| 73 |
+
"language_model.model.layers.15.mlp.down_proj.weight": "model-00005-of-00010.safetensors",
|
| 74 |
+
"language_model.model.layers.15.mlp.gate_proj.weight": "model-00004-of-00010.safetensors",
|
| 75 |
+
"language_model.model.layers.15.mlp.up_proj.weight": "model-00005-of-00010.safetensors",
|
| 76 |
+
"language_model.model.layers.15.post_attention_layernorm.weight": "model-00005-of-00010.safetensors",
|
| 77 |
+
"language_model.model.layers.15.self_attn.k_proj.weight": "model-00004-of-00010.safetensors",
|
| 78 |
+
"language_model.model.layers.15.self_attn.o_proj.weight": "model-00004-of-00010.safetensors",
|
| 79 |
+
"language_model.model.layers.15.self_attn.q_proj.weight": "model-00004-of-00010.safetensors",
|
| 80 |
+
"language_model.model.layers.15.self_attn.v_proj.weight": "model-00004-of-00010.safetensors",
|
| 81 |
+
"language_model.model.layers.16.input_layernorm.weight": "model-00005-of-00010.safetensors",
|
| 82 |
+
"language_model.model.layers.16.mlp.down_proj.weight": "model-00005-of-00010.safetensors",
|
| 83 |
+
"language_model.model.layers.16.mlp.gate_proj.weight": "model-00005-of-00010.safetensors",
|
| 84 |
+
"language_model.model.layers.16.mlp.up_proj.weight": "model-00005-of-00010.safetensors",
|
| 85 |
+
"language_model.model.layers.16.post_attention_layernorm.weight": "model-00005-of-00010.safetensors",
|
| 86 |
+
"language_model.model.layers.16.self_attn.k_proj.weight": "model-00005-of-00010.safetensors",
|
| 87 |
+
"language_model.model.layers.16.self_attn.o_proj.weight": "model-00005-of-00010.safetensors",
|
| 88 |
+
"language_model.model.layers.16.self_attn.q_proj.weight": "model-00005-of-00010.safetensors",
|
| 89 |
+
"language_model.model.layers.16.self_attn.v_proj.weight": "model-00005-of-00010.safetensors",
|
| 90 |
+
"language_model.model.layers.17.input_layernorm.weight": "model-00005-of-00010.safetensors",
|
| 91 |
+
"language_model.model.layers.17.mlp.down_proj.weight": "model-00005-of-00010.safetensors",
|
| 92 |
+
"language_model.model.layers.17.mlp.gate_proj.weight": "model-00005-of-00010.safetensors",
|
| 93 |
+
"language_model.model.layers.17.mlp.up_proj.weight": "model-00005-of-00010.safetensors",
|
| 94 |
+
"language_model.model.layers.17.post_attention_layernorm.weight": "model-00005-of-00010.safetensors",
|
| 95 |
+
"language_model.model.layers.17.self_attn.k_proj.weight": "model-00005-of-00010.safetensors",
|
| 96 |
+
"language_model.model.layers.17.self_attn.o_proj.weight": "model-00005-of-00010.safetensors",
|
| 97 |
+
"language_model.model.layers.17.self_attn.q_proj.weight": "model-00005-of-00010.safetensors",
|
| 98 |
+
"language_model.model.layers.17.self_attn.v_proj.weight": "model-00005-of-00010.safetensors",
|
| 99 |
+
"language_model.model.layers.18.input_layernorm.weight": "model-00005-of-00010.safetensors",
|
| 100 |
+
"language_model.model.layers.18.mlp.down_proj.weight": "model-00005-of-00010.safetensors",
|
| 101 |
+
"language_model.model.layers.18.mlp.gate_proj.weight": "model-00005-of-00010.safetensors",
|
| 102 |
+
"language_model.model.layers.18.mlp.up_proj.weight": "model-00005-of-00010.safetensors",
|
| 103 |
+
"language_model.model.layers.18.post_attention_layernorm.weight": "model-00005-of-00010.safetensors",
|
| 104 |
+
"language_model.model.layers.18.self_attn.k_proj.weight": "model-00005-of-00010.safetensors",
|
| 105 |
+
"language_model.model.layers.18.self_attn.o_proj.weight": "model-00005-of-00010.safetensors",
|
| 106 |
+
"language_model.model.layers.18.self_attn.q_proj.weight": "model-00005-of-00010.safetensors",
|
| 107 |
+
"language_model.model.layers.18.self_attn.v_proj.weight": "model-00005-of-00010.safetensors",
|
| 108 |
+
"language_model.model.layers.19.input_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 109 |
+
"language_model.model.layers.19.mlp.down_proj.weight": "model-00006-of-00010.safetensors",
|
| 110 |
+
"language_model.model.layers.19.mlp.gate_proj.weight": "model-00005-of-00010.safetensors",
|
| 111 |
+
"language_model.model.layers.19.mlp.up_proj.weight": "model-00005-of-00010.safetensors",
|
| 112 |
+
"language_model.model.layers.19.post_attention_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 113 |
+
"language_model.model.layers.19.self_attn.k_proj.weight": "model-00005-of-00010.safetensors",
|
| 114 |
+
"language_model.model.layers.19.self_attn.o_proj.weight": "model-00005-of-00010.safetensors",
|
| 115 |
+
"language_model.model.layers.19.self_attn.q_proj.weight": "model-00005-of-00010.safetensors",
|
| 116 |
+
"language_model.model.layers.19.self_attn.v_proj.weight": "model-00005-of-00010.safetensors",
|
| 117 |
+
"language_model.model.layers.2.input_layernorm.weight": "model-00002-of-00010.safetensors",
|
| 118 |
+
"language_model.model.layers.2.mlp.down_proj.weight": "model-00002-of-00010.safetensors",
|
| 119 |
+
"language_model.model.layers.2.mlp.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 120 |
+
"language_model.model.layers.2.mlp.up_proj.weight": "model-00002-of-00010.safetensors",
|
| 121 |
+
"language_model.model.layers.2.post_attention_layernorm.weight": "model-00002-of-00010.safetensors",
|
| 122 |
+
"language_model.model.layers.2.self_attn.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 123 |
+
"language_model.model.layers.2.self_attn.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 124 |
+
"language_model.model.layers.2.self_attn.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 125 |
+
"language_model.model.layers.2.self_attn.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 126 |
+
"language_model.model.layers.20.input_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 127 |
+
"language_model.model.layers.20.mlp.down_proj.weight": "model-00006-of-00010.safetensors",
|
| 128 |
+
"language_model.model.layers.20.mlp.gate_proj.weight": "model-00006-of-00010.safetensors",
|
| 129 |
+
"language_model.model.layers.20.mlp.up_proj.weight": "model-00006-of-00010.safetensors",
|
| 130 |
+
"language_model.model.layers.20.post_attention_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 131 |
+
"language_model.model.layers.20.self_attn.k_proj.weight": "model-00006-of-00010.safetensors",
|
| 132 |
+
"language_model.model.layers.20.self_attn.o_proj.weight": "model-00006-of-00010.safetensors",
|
| 133 |
+
"language_model.model.layers.20.self_attn.q_proj.weight": "model-00006-of-00010.safetensors",
|
| 134 |
+
"language_model.model.layers.20.self_attn.v_proj.weight": "model-00006-of-00010.safetensors",
|
| 135 |
+
"language_model.model.layers.21.input_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 136 |
+
"language_model.model.layers.21.mlp.down_proj.weight": "model-00006-of-00010.safetensors",
|
| 137 |
+
"language_model.model.layers.21.mlp.gate_proj.weight": "model-00006-of-00010.safetensors",
|
| 138 |
+
"language_model.model.layers.21.mlp.up_proj.weight": "model-00006-of-00010.safetensors",
|
| 139 |
+
"language_model.model.layers.21.post_attention_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 140 |
+
"language_model.model.layers.21.self_attn.k_proj.weight": "model-00006-of-00010.safetensors",
|
| 141 |
+
"language_model.model.layers.21.self_attn.o_proj.weight": "model-00006-of-00010.safetensors",
|
| 142 |
+
"language_model.model.layers.21.self_attn.q_proj.weight": "model-00006-of-00010.safetensors",
|
| 143 |
+
"language_model.model.layers.21.self_attn.v_proj.weight": "model-00006-of-00010.safetensors",
|
| 144 |
+
"language_model.model.layers.22.input_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 145 |
+
"language_model.model.layers.22.mlp.down_proj.weight": "model-00006-of-00010.safetensors",
|
| 146 |
+
"language_model.model.layers.22.mlp.gate_proj.weight": "model-00006-of-00010.safetensors",
|
| 147 |
+
"language_model.model.layers.22.mlp.up_proj.weight": "model-00006-of-00010.safetensors",
|
| 148 |
+
"language_model.model.layers.22.post_attention_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 149 |
+
"language_model.model.layers.22.self_attn.k_proj.weight": "model-00006-of-00010.safetensors",
|
| 150 |
+
"language_model.model.layers.22.self_attn.o_proj.weight": "model-00006-of-00010.safetensors",
|
| 151 |
+
"language_model.model.layers.22.self_attn.q_proj.weight": "model-00006-of-00010.safetensors",
|
| 152 |
+
"language_model.model.layers.22.self_attn.v_proj.weight": "model-00006-of-00010.safetensors",
|
| 153 |
+
"language_model.model.layers.23.input_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 154 |
+
"language_model.model.layers.23.mlp.down_proj.weight": "model-00006-of-00010.safetensors",
|
| 155 |
+
"language_model.model.layers.23.mlp.gate_proj.weight": "model-00006-of-00010.safetensors",
|
| 156 |
+
"language_model.model.layers.23.mlp.up_proj.weight": "model-00006-of-00010.safetensors",
|
| 157 |
+
"language_model.model.layers.23.post_attention_layernorm.weight": "model-00006-of-00010.safetensors",
|
| 158 |
+
"language_model.model.layers.23.self_attn.k_proj.weight": "model-00006-of-00010.safetensors",
|
| 159 |
+
"language_model.model.layers.23.self_attn.o_proj.weight": "model-00006-of-00010.safetensors",
|
| 160 |
+
"language_model.model.layers.23.self_attn.q_proj.weight": "model-00006-of-00010.safetensors",
|
| 161 |
+
"language_model.model.layers.23.self_attn.v_proj.weight": "model-00006-of-00010.safetensors",
|
| 162 |
+
"language_model.model.layers.24.input_layernorm.weight": "model-00007-of-00010.safetensors",
|
| 163 |
+
"language_model.model.layers.24.mlp.down_proj.weight": "model-00007-of-00010.safetensors",
|
| 164 |
+
"language_model.model.layers.24.mlp.gate_proj.weight": "model-00007-of-00010.safetensors",
|
| 165 |
+
"language_model.model.layers.24.mlp.up_proj.weight": "model-00007-of-00010.safetensors",
|
| 166 |
+
"language_model.model.layers.24.post_attention_layernorm.weight": "model-00007-of-00010.safetensors",
|
| 167 |
+
"language_model.model.layers.24.self_attn.k_proj.weight": "model-00006-of-00010.safetensors",
|
| 168 |
+
"language_model.model.layers.24.self_attn.o_proj.weight": "model-00006-of-00010.safetensors",
|
| 169 |
+
"language_model.model.layers.24.self_attn.q_proj.weight": "model-00006-of-00010.safetensors",
|
| 170 |
+
"language_model.model.layers.24.self_attn.v_proj.weight": "model-00006-of-00010.safetensors",
|
| 171 |
+
"language_model.model.layers.25.input_layernorm.weight": "model-00007-of-00010.safetensors",
|
| 172 |
+
"language_model.model.layers.25.mlp.down_proj.weight": "model-00007-of-00010.safetensors",
|
| 173 |
+
"language_model.model.layers.25.mlp.gate_proj.weight": "model-00007-of-00010.safetensors",
|
| 174 |
+
"language_model.model.layers.25.mlp.up_proj.weight": "model-00007-of-00010.safetensors",
|
| 175 |
+
"language_model.model.layers.25.post_attention_layernorm.weight": "model-00007-of-00010.safetensors",
|
| 176 |
+
"language_model.model.layers.25.self_attn.k_proj.weight": "model-00007-of-00010.safetensors",
|
| 177 |
+
"language_model.model.layers.25.self_attn.o_proj.weight": "model-00007-of-00010.safetensors",
|
| 178 |
+
"language_model.model.layers.25.self_attn.q_proj.weight": "model-00007-of-00010.safetensors",
|
| 179 |
+
"language_model.model.layers.25.self_attn.v_proj.weight": "model-00007-of-00010.safetensors",
|
| 180 |
+
"language_model.model.layers.26.input_layernorm.weight": "model-00007-of-00010.safetensors",
|
| 181 |
+
"language_model.model.layers.26.mlp.down_proj.weight": "model-00007-of-00010.safetensors",
|
| 182 |
+
"language_model.model.layers.26.mlp.gate_proj.weight": "model-00007-of-00010.safetensors",
|
| 183 |
+
"language_model.model.layers.26.mlp.up_proj.weight": "model-00007-of-00010.safetensors",
|
| 184 |
+
"language_model.model.layers.26.post_attention_layernorm.weight": "model-00007-of-00010.safetensors",
|
| 185 |
+
"language_model.model.layers.26.self_attn.k_proj.weight": "model-00007-of-00010.safetensors",
|
| 186 |
+
"language_model.model.layers.26.self_attn.o_proj.weight": "model-00007-of-00010.safetensors",
|
| 187 |
+
"language_model.model.layers.26.self_attn.q_proj.weight": "model-00007-of-00010.safetensors",
|
| 188 |
+
"language_model.model.layers.26.self_attn.v_proj.weight": "model-00007-of-00010.safetensors",
|
| 189 |
+
"language_model.model.layers.27.input_layernorm.weight": "model-00007-of-00010.safetensors",
|
| 190 |
+
"language_model.model.layers.27.mlp.down_proj.weight": "model-00007-of-00010.safetensors",
|
| 191 |
+
"language_model.model.layers.27.mlp.gate_proj.weight": "model-00007-of-00010.safetensors",
|
| 192 |
+
"language_model.model.layers.27.mlp.up_proj.weight": "model-00007-of-00010.safetensors",
|
| 193 |
+
"language_model.model.layers.27.post_attention_layernorm.weight": "model-00007-of-00010.safetensors",
|
| 194 |
+
"language_model.model.layers.27.self_attn.k_proj.weight": "model-00007-of-00010.safetensors",
|
| 195 |
+
"language_model.model.layers.27.self_attn.o_proj.weight": "model-00007-of-00010.safetensors",
|
| 196 |
+
"language_model.model.layers.27.self_attn.q_proj.weight": "model-00007-of-00010.safetensors",
|
| 197 |
+
"language_model.model.layers.27.self_attn.v_proj.weight": "model-00007-of-00010.safetensors",
|
| 198 |
+
"language_model.model.layers.28.input_layernorm.weight": "model-00008-of-00010.safetensors",
|
| 199 |
+
"language_model.model.layers.28.mlp.down_proj.weight": "model-00008-of-00010.safetensors",
|
| 200 |
+
"language_model.model.layers.28.mlp.gate_proj.weight": "model-00007-of-00010.safetensors",
|
| 201 |
+
"language_model.model.layers.28.mlp.up_proj.weight": "model-00008-of-00010.safetensors",
|
| 202 |
+
"language_model.model.layers.28.post_attention_layernorm.weight": "model-00008-of-00010.safetensors",
|
| 203 |
+
"language_model.model.layers.28.self_attn.k_proj.weight": "model-00007-of-00010.safetensors",
|
| 204 |
+
"language_model.model.layers.28.self_attn.o_proj.weight": "model-00007-of-00010.safetensors",
|
| 205 |
+
"language_model.model.layers.28.self_attn.q_proj.weight": "model-00007-of-00010.safetensors",
|
| 206 |
+
"language_model.model.layers.28.self_attn.v_proj.weight": "model-00007-of-00010.safetensors",
|
| 207 |
+
"language_model.model.layers.29.input_layernorm.weight": "model-00008-of-00010.safetensors",
|
| 208 |
+
"language_model.model.layers.29.mlp.down_proj.weight": "model-00008-of-00010.safetensors",
|
| 209 |
+
"language_model.model.layers.29.mlp.gate_proj.weight": "model-00008-of-00010.safetensors",
|
| 210 |
+
"language_model.model.layers.29.mlp.up_proj.weight": "model-00008-of-00010.safetensors",
|
| 211 |
+
"language_model.model.layers.29.post_attention_layernorm.weight": "model-00008-of-00010.safetensors",
|
| 212 |
+
"language_model.model.layers.29.self_attn.k_proj.weight": "model-00008-of-00010.safetensors",
|
| 213 |
+
"language_model.model.layers.29.self_attn.o_proj.weight": "model-00008-of-00010.safetensors",
|
| 214 |
+
"language_model.model.layers.29.self_attn.q_proj.weight": "model-00008-of-00010.safetensors",
|
| 215 |
+
"language_model.model.layers.29.self_attn.v_proj.weight": "model-00008-of-00010.safetensors",
|
| 216 |
+
"language_model.model.layers.3.input_layernorm.weight": "model-00002-of-00010.safetensors",
|
| 217 |
+
"language_model.model.layers.3.mlp.down_proj.weight": "model-00002-of-00010.safetensors",
|
| 218 |
+
"language_model.model.layers.3.mlp.gate_proj.weight": "model-00002-of-00010.safetensors",
|
| 219 |
+
"language_model.model.layers.3.mlp.up_proj.weight": "model-00002-of-00010.safetensors",
|
| 220 |
+
"language_model.model.layers.3.post_attention_layernorm.weight": "model-00002-of-00010.safetensors",
|
| 221 |
+
"language_model.model.layers.3.self_attn.k_proj.weight": "model-00002-of-00010.safetensors",
|
| 222 |
+
"language_model.model.layers.3.self_attn.o_proj.weight": "model-00002-of-00010.safetensors",
|
| 223 |
+
"language_model.model.layers.3.self_attn.q_proj.weight": "model-00002-of-00010.safetensors",
|
| 224 |
+
"language_model.model.layers.3.self_attn.v_proj.weight": "model-00002-of-00010.safetensors",
|
| 225 |
+
"language_model.model.layers.30.input_layernorm.weight": "model-00008-of-00010.safetensors",
|
| 226 |
+
"language_model.model.layers.30.mlp.down_proj.weight": "model-00008-of-00010.safetensors",
|
| 227 |
+
"language_model.model.layers.30.mlp.gate_proj.weight": "model-00008-of-00010.safetensors",
|
| 228 |
+
"language_model.model.layers.30.mlp.up_proj.weight": "model-00008-of-00010.safetensors",
|
| 229 |
+
"language_model.model.layers.30.post_attention_layernorm.weight": "model-00008-of-00010.safetensors",
|
| 230 |
+
"language_model.model.layers.30.self_attn.k_proj.weight": "model-00008-of-00010.safetensors",
|
| 231 |
+
"language_model.model.layers.30.self_attn.o_proj.weight": "model-00008-of-00010.safetensors",
|
| 232 |
+
"language_model.model.layers.30.self_attn.q_proj.weight": "model-00008-of-00010.safetensors",
|
| 233 |
+
"language_model.model.layers.30.self_attn.v_proj.weight": "model-00008-of-00010.safetensors",
|
| 234 |
+
"language_model.model.layers.31.input_layernorm.weight": "model-00008-of-00010.safetensors",
|
| 235 |
+
"language_model.model.layers.31.mlp.down_proj.weight": "model-00008-of-00010.safetensors",
|
| 236 |
+
"language_model.model.layers.31.mlp.gate_proj.weight": "model-00008-of-00010.safetensors",
|
| 237 |
+
"language_model.model.layers.31.mlp.up_proj.weight": "model-00008-of-00010.safetensors",
|
| 238 |
+
"language_model.model.layers.31.post_attention_layernorm.weight": "model-00008-of-00010.safetensors",
|
| 239 |
+
"language_model.model.layers.31.self_attn.k_proj.weight": "model-00008-of-00010.safetensors",
|
| 240 |
+
"language_model.model.layers.31.self_attn.o_proj.weight": "model-00008-of-00010.safetensors",
|
| 241 |
+
"language_model.model.layers.31.self_attn.q_proj.weight": "model-00008-of-00010.safetensors",
|
| 242 |
+
"language_model.model.layers.31.self_attn.v_proj.weight": "model-00008-of-00010.safetensors",
|
| 243 |
+
"language_model.model.layers.32.input_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 244 |
+
"language_model.model.layers.32.mlp.down_proj.weight": "model-00009-of-00010.safetensors",
|
| 245 |
+
"language_model.model.layers.32.mlp.gate_proj.weight": "model-00008-of-00010.safetensors",
|
| 246 |
+
"language_model.model.layers.32.mlp.up_proj.weight": "model-00008-of-00010.safetensors",
|
| 247 |
+
"language_model.model.layers.32.post_attention_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 248 |
+
"language_model.model.layers.32.self_attn.k_proj.weight": "model-00008-of-00010.safetensors",
|
| 249 |
+
"language_model.model.layers.32.self_attn.o_proj.weight": "model-00008-of-00010.safetensors",
|
| 250 |
+
"language_model.model.layers.32.self_attn.q_proj.weight": "model-00008-of-00010.safetensors",
|
| 251 |
+
"language_model.model.layers.32.self_attn.v_proj.weight": "model-00008-of-00010.safetensors",
|
| 252 |
+
"language_model.model.layers.33.input_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 253 |
+
"language_model.model.layers.33.mlp.down_proj.weight": "model-00009-of-00010.safetensors",
|
| 254 |
+
"language_model.model.layers.33.mlp.gate_proj.weight": "model-00009-of-00010.safetensors",
|
| 255 |
+
"language_model.model.layers.33.mlp.up_proj.weight": "model-00009-of-00010.safetensors",
|
| 256 |
+
"language_model.model.layers.33.post_attention_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 257 |
+
"language_model.model.layers.33.self_attn.k_proj.weight": "model-00009-of-00010.safetensors",
|
| 258 |
+
"language_model.model.layers.33.self_attn.o_proj.weight": "model-00009-of-00010.safetensors",
|
| 259 |
+
"language_model.model.layers.33.self_attn.q_proj.weight": "model-00009-of-00010.safetensors",
|
| 260 |
+
"language_model.model.layers.33.self_attn.v_proj.weight": "model-00009-of-00010.safetensors",
|
| 261 |
+
"language_model.model.layers.34.input_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 262 |
+
"language_model.model.layers.34.mlp.down_proj.weight": "model-00009-of-00010.safetensors",
|
| 263 |
+
"language_model.model.layers.34.mlp.gate_proj.weight": "model-00009-of-00010.safetensors",
|
| 264 |
+
"language_model.model.layers.34.mlp.up_proj.weight": "model-00009-of-00010.safetensors",
|
| 265 |
+
"language_model.model.layers.34.post_attention_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 266 |
+
"language_model.model.layers.34.self_attn.k_proj.weight": "model-00009-of-00010.safetensors",
|
| 267 |
+
"language_model.model.layers.34.self_attn.o_proj.weight": "model-00009-of-00010.safetensors",
|
| 268 |
+
"language_model.model.layers.34.self_attn.q_proj.weight": "model-00009-of-00010.safetensors",
|
| 269 |
+
"language_model.model.layers.34.self_attn.v_proj.weight": "model-00009-of-00010.safetensors",
|
| 270 |
+
"language_model.model.layers.35.input_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 271 |
+
"language_model.model.layers.35.mlp.down_proj.weight": "model-00009-of-00010.safetensors",
|
| 272 |
+
"language_model.model.layers.35.mlp.gate_proj.weight": "model-00009-of-00010.safetensors",
|
| 273 |
+
"language_model.model.layers.35.mlp.up_proj.weight": "model-00009-of-00010.safetensors",
|
| 274 |
+
"language_model.model.layers.35.post_attention_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 275 |
+
"language_model.model.layers.35.self_attn.k_proj.weight": "model-00009-of-00010.safetensors",
|
| 276 |
+
"language_model.model.layers.35.self_attn.o_proj.weight": "model-00009-of-00010.safetensors",
|
| 277 |
+
"language_model.model.layers.35.self_attn.q_proj.weight": "model-00009-of-00010.safetensors",
|
| 278 |
+
"language_model.model.layers.35.self_attn.v_proj.weight": "model-00009-of-00010.safetensors",
|
| 279 |
+
"language_model.model.layers.36.input_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 280 |
+
"language_model.model.layers.36.mlp.down_proj.weight": "model-00009-of-00010.safetensors",
|
| 281 |
+
"language_model.model.layers.36.mlp.gate_proj.weight": "model-00009-of-00010.safetensors",
|
| 282 |
+
"language_model.model.layers.36.mlp.up_proj.weight": "model-00009-of-00010.safetensors",
|
| 283 |
+
"language_model.model.layers.36.post_attention_layernorm.weight": "model-00009-of-00010.safetensors",
|
| 284 |
+
"language_model.model.layers.36.self_attn.k_proj.weight": "model-00009-of-00010.safetensors",
|
| 285 |
+
"language_model.model.layers.36.self_attn.o_proj.weight": "model-00009-of-00010.safetensors",
|
| 286 |
+
"language_model.model.layers.36.self_attn.q_proj.weight": "model-00009-of-00010.safetensors",
|
| 287 |
+
"language_model.model.layers.36.self_attn.v_proj.weight": "model-00009-of-00010.safetensors",
|
| 288 |
+
"language_model.model.layers.37.input_layernorm.weight": "model-00010-of-00010.safetensors",
|
| 289 |
+
"language_model.model.layers.37.mlp.down_proj.weight": "model-00010-of-00010.safetensors",
|
| 290 |
+
"language_model.model.layers.37.mlp.gate_proj.weight": "model-00010-of-00010.safetensors",
|
| 291 |
+
"language_model.model.layers.37.mlp.up_proj.weight": "model-00010-of-00010.safetensors",
|
| 292 |
+
"language_model.model.layers.37.post_attention_layernorm.weight": "model-00010-of-00010.safetensors",
|
| 293 |
+
"language_model.model.layers.37.self_attn.k_proj.weight": "model-00009-of-00010.safetensors",
|
| 294 |
+
"language_model.model.layers.37.self_attn.o_proj.weight": "model-00009-of-00010.safetensors",
|
| 295 |
+
"language_model.model.layers.37.self_attn.q_proj.weight": "model-00009-of-00010.safetensors",
|
| 296 |
+
"language_model.model.layers.37.self_attn.v_proj.weight": "model-00009-of-00010.safetensors",
|
| 297 |
+
"language_model.model.layers.38.input_layernorm.weight": "model-00010-of-00010.safetensors",
|
| 298 |
+
"language_model.model.layers.38.mlp.down_proj.weight": "model-00010-of-00010.safetensors",
|
| 299 |
+
"language_model.model.layers.38.mlp.gate_proj.weight": "model-00010-of-00010.safetensors",
|
| 300 |
+
"language_model.model.layers.38.mlp.up_proj.weight": "model-00010-of-00010.safetensors",
|
| 301 |
+
"language_model.model.layers.38.post_attention_layernorm.weight": "model-00010-of-00010.safetensors",
|
| 302 |
+
"language_model.model.layers.38.self_attn.k_proj.weight": "model-00010-of-00010.safetensors",
|
| 303 |
+
"language_model.model.layers.38.self_attn.o_proj.weight": "model-00010-of-00010.safetensors",
|
| 304 |
+
"language_model.model.layers.38.self_attn.q_proj.weight": "model-00010-of-00010.safetensors",
|
| 305 |
+
"language_model.model.layers.38.self_attn.v_proj.weight": "model-00010-of-00010.safetensors",
|
| 306 |
+
"language_model.model.layers.39.input_layernorm.weight": "model-00010-of-00010.safetensors",
|
| 307 |
+
"language_model.model.layers.39.mlp.down_proj.weight": "model-00010-of-00010.safetensors",
|
| 308 |
+
"language_model.model.layers.39.mlp.gate_proj.weight": "model-00010-of-00010.safetensors",
|
| 309 |
+
"language_model.model.layers.39.mlp.up_proj.weight": "model-00010-of-00010.safetensors",
|
| 310 |
+
"language_model.model.layers.39.post_attention_layernorm.weight": "model-00010-of-00010.safetensors",
|
| 311 |
+
"language_model.model.layers.39.self_attn.k_proj.weight": "model-00010-of-00010.safetensors",
|
| 312 |
+
"language_model.model.layers.39.self_attn.o_proj.weight": "model-00010-of-00010.safetensors",
|
| 313 |
+
"language_model.model.layers.39.self_attn.q_proj.weight": "model-00010-of-00010.safetensors",
|
| 314 |
+
"language_model.model.layers.39.self_attn.v_proj.weight": "model-00010-of-00010.safetensors",
|
| 315 |
+
"language_model.model.layers.4.input_layernorm.weight": "model-00002-of-00010.safetensors",
|
| 316 |
+
"language_model.model.layers.4.mlp.down_proj.weight": "model-00002-of-00010.safetensors",
|
| 317 |
+
"language_model.model.layers.4.mlp.gate_proj.weight": "model-00002-of-00010.safetensors",
|
| 318 |
+
"language_model.model.layers.4.mlp.up_proj.weight": "model-00002-of-00010.safetensors",
|
| 319 |
+
"language_model.model.layers.4.post_attention_layernorm.weight": "model-00002-of-00010.safetensors",
|
| 320 |
+
"language_model.model.layers.4.self_attn.k_proj.weight": "model-00002-of-00010.safetensors",
|
| 321 |
+
"language_model.model.layers.4.self_attn.o_proj.weight": "model-00002-of-00010.safetensors",
|
| 322 |
+
"language_model.model.layers.4.self_attn.q_proj.weight": "model-00002-of-00010.safetensors",
|
| 323 |
+
"language_model.model.layers.4.self_attn.v_proj.weight": "model-00002-of-00010.safetensors",
|
| 324 |
+
"language_model.model.layers.5.input_layernorm.weight": "model-00002-of-00010.safetensors",
|
| 325 |
+
"language_model.model.layers.5.mlp.down_proj.weight": "model-00002-of-00010.safetensors",
|
| 326 |
+
"language_model.model.layers.5.mlp.gate_proj.weight": "model-00002-of-00010.safetensors",
|
| 327 |
+
"language_model.model.layers.5.mlp.up_proj.weight": "model-00002-of-00010.safetensors",
|
| 328 |
+
"language_model.model.layers.5.post_attention_layernorm.weight": "model-00002-of-00010.safetensors",
|
| 329 |
+
"language_model.model.layers.5.self_attn.k_proj.weight": "model-00002-of-00010.safetensors",
|
| 330 |
+
"language_model.model.layers.5.self_attn.o_proj.weight": "model-00002-of-00010.safetensors",
|
| 331 |
+
"language_model.model.layers.5.self_attn.q_proj.weight": "model-00002-of-00010.safetensors",
|
| 332 |
+
"language_model.model.layers.5.self_attn.v_proj.weight": "model-00002-of-00010.safetensors",
|
| 333 |
+
"language_model.model.layers.6.input_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 334 |
+
"language_model.model.layers.6.mlp.down_proj.weight": "model-00003-of-00010.safetensors",
|
| 335 |
+
"language_model.model.layers.6.mlp.gate_proj.weight": "model-00002-of-00010.safetensors",
|
| 336 |
+
"language_model.model.layers.6.mlp.up_proj.weight": "model-00002-of-00010.safetensors",
|
| 337 |
+
"language_model.model.layers.6.post_attention_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 338 |
+
"language_model.model.layers.6.self_attn.k_proj.weight": "model-00002-of-00010.safetensors",
|
| 339 |
+
"language_model.model.layers.6.self_attn.o_proj.weight": "model-00002-of-00010.safetensors",
|
| 340 |
+
"language_model.model.layers.6.self_attn.q_proj.weight": "model-00002-of-00010.safetensors",
|
| 341 |
+
"language_model.model.layers.6.self_attn.v_proj.weight": "model-00002-of-00010.safetensors",
|
| 342 |
+
"language_model.model.layers.7.input_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 343 |
+
"language_model.model.layers.7.mlp.down_proj.weight": "model-00003-of-00010.safetensors",
|
| 344 |
+
"language_model.model.layers.7.mlp.gate_proj.weight": "model-00003-of-00010.safetensors",
|
| 345 |
+
"language_model.model.layers.7.mlp.up_proj.weight": "model-00003-of-00010.safetensors",
|
| 346 |
+
"language_model.model.layers.7.post_attention_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 347 |
+
"language_model.model.layers.7.self_attn.k_proj.weight": "model-00003-of-00010.safetensors",
|
| 348 |
+
"language_model.model.layers.7.self_attn.o_proj.weight": "model-00003-of-00010.safetensors",
|
| 349 |
+
"language_model.model.layers.7.self_attn.q_proj.weight": "model-00003-of-00010.safetensors",
|
| 350 |
+
"language_model.model.layers.7.self_attn.v_proj.weight": "model-00003-of-00010.safetensors",
|
| 351 |
+
"language_model.model.layers.8.input_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 352 |
+
"language_model.model.layers.8.mlp.down_proj.weight": "model-00003-of-00010.safetensors",
|
| 353 |
+
"language_model.model.layers.8.mlp.gate_proj.weight": "model-00003-of-00010.safetensors",
|
| 354 |
+
"language_model.model.layers.8.mlp.up_proj.weight": "model-00003-of-00010.safetensors",
|
| 355 |
+
"language_model.model.layers.8.post_attention_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 356 |
+
"language_model.model.layers.8.self_attn.k_proj.weight": "model-00003-of-00010.safetensors",
|
| 357 |
+
"language_model.model.layers.8.self_attn.o_proj.weight": "model-00003-of-00010.safetensors",
|
| 358 |
+
"language_model.model.layers.8.self_attn.q_proj.weight": "model-00003-of-00010.safetensors",
|
| 359 |
+
"language_model.model.layers.8.self_attn.v_proj.weight": "model-00003-of-00010.safetensors",
|
| 360 |
+
"language_model.model.layers.9.input_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 361 |
+
"language_model.model.layers.9.mlp.down_proj.weight": "model-00003-of-00010.safetensors",
|
| 362 |
+
"language_model.model.layers.9.mlp.gate_proj.weight": "model-00003-of-00010.safetensors",
|
| 363 |
+
"language_model.model.layers.9.mlp.up_proj.weight": "model-00003-of-00010.safetensors",
|
| 364 |
+
"language_model.model.layers.9.post_attention_layernorm.weight": "model-00003-of-00010.safetensors",
|
| 365 |
+
"language_model.model.layers.9.self_attn.k_proj.weight": "model-00003-of-00010.safetensors",
|
| 366 |
+
"language_model.model.layers.9.self_attn.o_proj.weight": "model-00003-of-00010.safetensors",
|
| 367 |
+
"language_model.model.layers.9.self_attn.q_proj.weight": "model-00003-of-00010.safetensors",
|
| 368 |
+
"language_model.model.layers.9.self_attn.v_proj.weight": "model-00003-of-00010.safetensors",
|
| 369 |
+
"language_model.model.norm.weight": "model-00010-of-00010.safetensors",
|
| 370 |
+
"multi_modal_projector.linear_1.weight": "model-00001-of-00010.safetensors",
|
| 371 |
+
"multi_modal_projector.linear_2.weight": "model-00001-of-00010.safetensors",
|
| 372 |
+
"multi_modal_projector.norm.weight": "model-00001-of-00010.safetensors",
|
| 373 |
+
"multi_modal_projector.patch_merger.merging_layer.weight": "model-00001-of-00010.safetensors",
|
| 374 |
+
"vision_tower.ln_pre.weight": "model-00001-of-00010.safetensors",
|
| 375 |
+
"vision_tower.patch_conv.weight": "model-00001-of-00010.safetensors",
|
| 376 |
+
"vision_tower.transformer.layers.0.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 377 |
+
"vision_tower.transformer.layers.0.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 378 |
+
"vision_tower.transformer.layers.0.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 379 |
+
"vision_tower.transformer.layers.0.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 380 |
+
"vision_tower.transformer.layers.0.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 381 |
+
"vision_tower.transformer.layers.0.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 382 |
+
"vision_tower.transformer.layers.0.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 383 |
+
"vision_tower.transformer.layers.0.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 384 |
+
"vision_tower.transformer.layers.0.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 385 |
+
"vision_tower.transformer.layers.1.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 386 |
+
"vision_tower.transformer.layers.1.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 387 |
+
"vision_tower.transformer.layers.1.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 388 |
+
"vision_tower.transformer.layers.1.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 389 |
+
"vision_tower.transformer.layers.1.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 390 |
+
"vision_tower.transformer.layers.1.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 391 |
+
"vision_tower.transformer.layers.1.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 392 |
+
"vision_tower.transformer.layers.1.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 393 |
+
"vision_tower.transformer.layers.1.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 394 |
+
"vision_tower.transformer.layers.10.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 395 |
+
"vision_tower.transformer.layers.10.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 396 |
+
"vision_tower.transformer.layers.10.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 397 |
+
"vision_tower.transformer.layers.10.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 398 |
+
"vision_tower.transformer.layers.10.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 399 |
+
"vision_tower.transformer.layers.10.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 400 |
+
"vision_tower.transformer.layers.10.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 401 |
+
"vision_tower.transformer.layers.10.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 402 |
+
"vision_tower.transformer.layers.10.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 403 |
+
"vision_tower.transformer.layers.11.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 404 |
+
"vision_tower.transformer.layers.11.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 405 |
+
"vision_tower.transformer.layers.11.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 406 |
+
"vision_tower.transformer.layers.11.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 407 |
+
"vision_tower.transformer.layers.11.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 408 |
+
"vision_tower.transformer.layers.11.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 409 |
+
"vision_tower.transformer.layers.11.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 410 |
+
"vision_tower.transformer.layers.11.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 411 |
+
"vision_tower.transformer.layers.11.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 412 |
+
"vision_tower.transformer.layers.12.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 413 |
+
"vision_tower.transformer.layers.12.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 414 |
+
"vision_tower.transformer.layers.12.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 415 |
+
"vision_tower.transformer.layers.12.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 416 |
+
"vision_tower.transformer.layers.12.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 417 |
+
"vision_tower.transformer.layers.12.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 418 |
+
"vision_tower.transformer.layers.12.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 419 |
+
"vision_tower.transformer.layers.12.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 420 |
+
"vision_tower.transformer.layers.12.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 421 |
+
"vision_tower.transformer.layers.13.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 422 |
+
"vision_tower.transformer.layers.13.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 423 |
+
"vision_tower.transformer.layers.13.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 424 |
+
"vision_tower.transformer.layers.13.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 425 |
+
"vision_tower.transformer.layers.13.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 426 |
+
"vision_tower.transformer.layers.13.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 427 |
+
"vision_tower.transformer.layers.13.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 428 |
+
"vision_tower.transformer.layers.13.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 429 |
+
"vision_tower.transformer.layers.13.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 430 |
+
"vision_tower.transformer.layers.14.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 431 |
+
"vision_tower.transformer.layers.14.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 432 |
+
"vision_tower.transformer.layers.14.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 433 |
+
"vision_tower.transformer.layers.14.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 434 |
+
"vision_tower.transformer.layers.14.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 435 |
+
"vision_tower.transformer.layers.14.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 436 |
+
"vision_tower.transformer.layers.14.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 437 |
+
"vision_tower.transformer.layers.14.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 438 |
+
"vision_tower.transformer.layers.14.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 439 |
+
"vision_tower.transformer.layers.15.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 440 |
+
"vision_tower.transformer.layers.15.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 441 |
+
"vision_tower.transformer.layers.15.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 442 |
+
"vision_tower.transformer.layers.15.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 443 |
+
"vision_tower.transformer.layers.15.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 444 |
+
"vision_tower.transformer.layers.15.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 445 |
+
"vision_tower.transformer.layers.15.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 446 |
+
"vision_tower.transformer.layers.15.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 447 |
+
"vision_tower.transformer.layers.15.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 448 |
+
"vision_tower.transformer.layers.16.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 449 |
+
"vision_tower.transformer.layers.16.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 450 |
+
"vision_tower.transformer.layers.16.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 451 |
+
"vision_tower.transformer.layers.16.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 452 |
+
"vision_tower.transformer.layers.16.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 453 |
+
"vision_tower.transformer.layers.16.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 454 |
+
"vision_tower.transformer.layers.16.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 455 |
+
"vision_tower.transformer.layers.16.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 456 |
+
"vision_tower.transformer.layers.16.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 457 |
+
"vision_tower.transformer.layers.17.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 458 |
+
"vision_tower.transformer.layers.17.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 459 |
+
"vision_tower.transformer.layers.17.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 460 |
+
"vision_tower.transformer.layers.17.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 461 |
+
"vision_tower.transformer.layers.17.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 462 |
+
"vision_tower.transformer.layers.17.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 463 |
+
"vision_tower.transformer.layers.17.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 464 |
+
"vision_tower.transformer.layers.17.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 465 |
+
"vision_tower.transformer.layers.17.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 466 |
+
"vision_tower.transformer.layers.18.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 467 |
+
"vision_tower.transformer.layers.18.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 468 |
+
"vision_tower.transformer.layers.18.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 469 |
+
"vision_tower.transformer.layers.18.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 470 |
+
"vision_tower.transformer.layers.18.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 471 |
+
"vision_tower.transformer.layers.18.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 472 |
+
"vision_tower.transformer.layers.18.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 473 |
+
"vision_tower.transformer.layers.18.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 474 |
+
"vision_tower.transformer.layers.18.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 475 |
+
"vision_tower.transformer.layers.19.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 476 |
+
"vision_tower.transformer.layers.19.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 477 |
+
"vision_tower.transformer.layers.19.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 478 |
+
"vision_tower.transformer.layers.19.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 479 |
+
"vision_tower.transformer.layers.19.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 480 |
+
"vision_tower.transformer.layers.19.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 481 |
+
"vision_tower.transformer.layers.19.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 482 |
+
"vision_tower.transformer.layers.19.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 483 |
+
"vision_tower.transformer.layers.19.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 484 |
+
"vision_tower.transformer.layers.2.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 485 |
+
"vision_tower.transformer.layers.2.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 486 |
+
"vision_tower.transformer.layers.2.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 487 |
+
"vision_tower.transformer.layers.2.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 488 |
+
"vision_tower.transformer.layers.2.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 489 |
+
"vision_tower.transformer.layers.2.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 490 |
+
"vision_tower.transformer.layers.2.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 491 |
+
"vision_tower.transformer.layers.2.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 492 |
+
"vision_tower.transformer.layers.2.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 493 |
+
"vision_tower.transformer.layers.20.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 494 |
+
"vision_tower.transformer.layers.20.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 495 |
+
"vision_tower.transformer.layers.20.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 496 |
+
"vision_tower.transformer.layers.20.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 497 |
+
"vision_tower.transformer.layers.20.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 498 |
+
"vision_tower.transformer.layers.20.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 499 |
+
"vision_tower.transformer.layers.20.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 500 |
+
"vision_tower.transformer.layers.20.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 501 |
+
"vision_tower.transformer.layers.20.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 502 |
+
"vision_tower.transformer.layers.21.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 503 |
+
"vision_tower.transformer.layers.21.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 504 |
+
"vision_tower.transformer.layers.21.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 505 |
+
"vision_tower.transformer.layers.21.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 506 |
+
"vision_tower.transformer.layers.21.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 507 |
+
"vision_tower.transformer.layers.21.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 508 |
+
"vision_tower.transformer.layers.21.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 509 |
+
"vision_tower.transformer.layers.21.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 510 |
+
"vision_tower.transformer.layers.21.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 511 |
+
"vision_tower.transformer.layers.22.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 512 |
+
"vision_tower.transformer.layers.22.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 513 |
+
"vision_tower.transformer.layers.22.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 514 |
+
"vision_tower.transformer.layers.22.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 515 |
+
"vision_tower.transformer.layers.22.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 516 |
+
"vision_tower.transformer.layers.22.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 517 |
+
"vision_tower.transformer.layers.22.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 518 |
+
"vision_tower.transformer.layers.22.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 519 |
+
"vision_tower.transformer.layers.22.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 520 |
+
"vision_tower.transformer.layers.23.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 521 |
+
"vision_tower.transformer.layers.23.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 522 |
+
"vision_tower.transformer.layers.23.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 523 |
+
"vision_tower.transformer.layers.23.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 524 |
+
"vision_tower.transformer.layers.23.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 525 |
+
"vision_tower.transformer.layers.23.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 526 |
+
"vision_tower.transformer.layers.23.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 527 |
+
"vision_tower.transformer.layers.23.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 528 |
+
"vision_tower.transformer.layers.23.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 529 |
+
"vision_tower.transformer.layers.3.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 530 |
+
"vision_tower.transformer.layers.3.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 531 |
+
"vision_tower.transformer.layers.3.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 532 |
+
"vision_tower.transformer.layers.3.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 533 |
+
"vision_tower.transformer.layers.3.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 534 |
+
"vision_tower.transformer.layers.3.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 535 |
+
"vision_tower.transformer.layers.3.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 536 |
+
"vision_tower.transformer.layers.3.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 537 |
+
"vision_tower.transformer.layers.3.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 538 |
+
"vision_tower.transformer.layers.4.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 539 |
+
"vision_tower.transformer.layers.4.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 540 |
+
"vision_tower.transformer.layers.4.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 541 |
+
"vision_tower.transformer.layers.4.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 542 |
+
"vision_tower.transformer.layers.4.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 543 |
+
"vision_tower.transformer.layers.4.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 544 |
+
"vision_tower.transformer.layers.4.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 545 |
+
"vision_tower.transformer.layers.4.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 546 |
+
"vision_tower.transformer.layers.4.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 547 |
+
"vision_tower.transformer.layers.5.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 548 |
+
"vision_tower.transformer.layers.5.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 549 |
+
"vision_tower.transformer.layers.5.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 550 |
+
"vision_tower.transformer.layers.5.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 551 |
+
"vision_tower.transformer.layers.5.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 552 |
+
"vision_tower.transformer.layers.5.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 553 |
+
"vision_tower.transformer.layers.5.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 554 |
+
"vision_tower.transformer.layers.5.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 555 |
+
"vision_tower.transformer.layers.5.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 556 |
+
"vision_tower.transformer.layers.6.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 557 |
+
"vision_tower.transformer.layers.6.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 558 |
+
"vision_tower.transformer.layers.6.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 559 |
+
"vision_tower.transformer.layers.6.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 560 |
+
"vision_tower.transformer.layers.6.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 561 |
+
"vision_tower.transformer.layers.6.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 562 |
+
"vision_tower.transformer.layers.6.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 563 |
+
"vision_tower.transformer.layers.6.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 564 |
+
"vision_tower.transformer.layers.6.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 565 |
+
"vision_tower.transformer.layers.7.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 566 |
+
"vision_tower.transformer.layers.7.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 567 |
+
"vision_tower.transformer.layers.7.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 568 |
+
"vision_tower.transformer.layers.7.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 569 |
+
"vision_tower.transformer.layers.7.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 570 |
+
"vision_tower.transformer.layers.7.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 571 |
+
"vision_tower.transformer.layers.7.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 572 |
+
"vision_tower.transformer.layers.7.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 573 |
+
"vision_tower.transformer.layers.7.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 574 |
+
"vision_tower.transformer.layers.8.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 575 |
+
"vision_tower.transformer.layers.8.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 576 |
+
"vision_tower.transformer.layers.8.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 577 |
+
"vision_tower.transformer.layers.8.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 578 |
+
"vision_tower.transformer.layers.8.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 579 |
+
"vision_tower.transformer.layers.8.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 580 |
+
"vision_tower.transformer.layers.8.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 581 |
+
"vision_tower.transformer.layers.8.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 582 |
+
"vision_tower.transformer.layers.8.ffn_norm.weight": "model-00001-of-00010.safetensors",
|
| 583 |
+
"vision_tower.transformer.layers.9.attention.k_proj.weight": "model-00001-of-00010.safetensors",
|
| 584 |
+
"vision_tower.transformer.layers.9.attention.o_proj.weight": "model-00001-of-00010.safetensors",
|
| 585 |
+
"vision_tower.transformer.layers.9.attention.q_proj.weight": "model-00001-of-00010.safetensors",
|
| 586 |
+
"vision_tower.transformer.layers.9.attention.v_proj.weight": "model-00001-of-00010.safetensors",
|
| 587 |
+
"vision_tower.transformer.layers.9.attention_norm.weight": "model-00001-of-00010.safetensors",
|
| 588 |
+
"vision_tower.transformer.layers.9.feed_forward.down_proj.weight": "model-00001-of-00010.safetensors",
|
| 589 |
+
"vision_tower.transformer.layers.9.feed_forward.gate_proj.weight": "model-00001-of-00010.safetensors",
|
| 590 |
+
"vision_tower.transformer.layers.9.feed_forward.up_proj.weight": "model-00001-of-00010.safetensors",
|
| 591 |
+
"vision_tower.transformer.layers.9.ffn_norm.weight": "model-00001-of-00010.safetensors"
|
| 592 |
+
}
|
| 593 |
+
}
|
prompts.py
ADDED
|
@@ -0,0 +1,253 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""
|
| 2 |
+
Ready-to-use prompt templates for sui-1-24b summarization model.
|
| 3 |
+
|
| 4 |
+
Usage:
|
| 5 |
+
from prompts import format_prompt, format_partial_prompt, format_merge_prompt
|
| 6 |
+
|
| 7 |
+
# Single-pass summarization
|
| 8 |
+
prompt = format_prompt(
|
| 9 |
+
text=tagged_text,
|
| 10 |
+
word_count=500,
|
| 11 |
+
number_of_xml_tags=10,
|
| 12 |
+
language="English"
|
| 13 |
+
)
|
| 14 |
+
|
| 15 |
+
# Iterative approach for long documents
|
| 16 |
+
partial_prompt = format_partial_prompt(text=chunk, ...)
|
| 17 |
+
merge_prompt = format_merge_prompt(text=partial_summaries, ...)
|
| 18 |
+
"""
|
| 19 |
+
|
| 20 |
+
# =============================================================================
|
| 21 |
+
# Single-pass summarization prompt
|
| 22 |
+
# =============================================================================
|
| 23 |
+
|
| 24 |
+
PROMPT_SUMMARY = """You are a professional summarizer, following all given instructions with the utmost care.
|
| 25 |
+
|
| 26 |
+
<text>
|
| 27 |
+
{text}
|
| 28 |
+
</text>
|
| 29 |
+
|
| 30 |
+
# Output Format
|
| 31 |
+
The output must be in JSON format with the following structure:
|
| 32 |
+
1. A "structure" string containing your thoughts about the content and structure of the summary
|
| 33 |
+
2. An "xml_tags" list containing the XML tag identifiers from the tagged text (e.g., "<a1b2c3d4>")
|
| 34 |
+
3. A "summary" string containing the actual summary with inline XML tag references
|
| 35 |
+
|
| 36 |
+
# Instructions
|
| 37 |
+
1. Start by thinking about and explaining the structure and content of your summary. Select {number_of_xml_tags} XML tags from the tagged text that capture the most significant data and facts. Ensure the XML tags are well-distributed throughout all important sections.
|
| 38 |
+
2. Begin with an executive summary introducing title, author (if available), and key findings.
|
| 39 |
+
3. Structure the summary in coherent paragraphs. Every paragraph should contain at least one XML tag reference.
|
| 40 |
+
4. Reference XML tags inline in square brackets (e.g., [<a1b2c3d4>]) immediately after the statement they support.
|
| 41 |
+
5. Each XML tag must appear exactly once in the summary.
|
| 42 |
+
6. Avoid a concluding paragraph that merely restates points. Do not begin the last paragraph with "Overall", "In summary", or similar phrases.
|
| 43 |
+
7. Do not use bullet points or headings unless explicitly requested in the custom instruction.
|
| 44 |
+
8. If the text lacks meaningful content, return a refusal message.
|
| 45 |
+
{custom_instruction_section}
|
| 46 |
+
Parameters:
|
| 47 |
+
- Word count (excl. XML tags): {word_count}
|
| 48 |
+
- Number of XML tags: {number_of_xml_tags}
|
| 49 |
+
- Language: {language}
|
| 50 |
+
"""
|
| 51 |
+
|
| 52 |
+
# =============================================================================
|
| 53 |
+
# Partial summarization prompt (for chunks of long documents)
|
| 54 |
+
# =============================================================================
|
| 55 |
+
|
| 56 |
+
PROMPT_SUMMARY_PARTIAL = """You are a professional summarizer, following all given instructions with the utmost care.
|
| 57 |
+
|
| 58 |
+
This is a section of a larger document. Create a partial summary that will later be combined with other sections.
|
| 59 |
+
|
| 60 |
+
<text>
|
| 61 |
+
{text}
|
| 62 |
+
</text>
|
| 63 |
+
|
| 64 |
+
# Output Format
|
| 65 |
+
The output must be in JSON format with the following structure:
|
| 66 |
+
1. A "structure" string containing your thoughts about the content and structure of the summary
|
| 67 |
+
2. An "xml_tags" list containing the XML tag identifiers from the tagged text (e.g., "<a1b2c3d4>")
|
| 68 |
+
3. A "summary" string containing the actual summary with inline XML tag references
|
| 69 |
+
|
| 70 |
+
# Instructions
|
| 71 |
+
1. Start by thinking about and explaining the structure and content of your summary. Select {number_of_xml_tags} XML tags from the tagged text that capture the most significant data and facts. Ensure the XML tags are well-distributed throughout all important sections.
|
| 72 |
+
2. Begin with a brief introduction of the section's main topics (no executive summary for partial summaries).
|
| 73 |
+
3. Structure the summary in coherent paragraphs. Every paragraph should contain at least one XML tag reference.
|
| 74 |
+
4. Reference XML tags inline in square brackets (e.g., [<a1b2c3d4>]) immediately after the statement they support.
|
| 75 |
+
5. Each XML tag must appear exactly once in the summary.
|
| 76 |
+
6. Avoid a concluding paragraph that merely restates points.
|
| 77 |
+
7. The summary should be 300-600 words long (without the XML tags).
|
| 78 |
+
8. Only include title/author if explicitly mentioned in this section.
|
| 79 |
+
{custom_instruction_section}
|
| 80 |
+
Parameters:
|
| 81 |
+
- Word count (excl. XML tags): {word_count}
|
| 82 |
+
- Number of XML tags: {number_of_xml_tags}
|
| 83 |
+
- Language: {language}
|
| 84 |
+
"""
|
| 85 |
+
|
| 86 |
+
# =============================================================================
|
| 87 |
+
# Merge prompt (for combining partial summaries)
|
| 88 |
+
# =============================================================================
|
| 89 |
+
|
| 90 |
+
PROMPT_SUMMARY_PARTIAL_LAST = """You are a professional summarizer, following all given instructions with the utmost care.
|
| 91 |
+
|
| 92 |
+
You are given partial summaries from a larger document. Combine them into a coherent final summary.
|
| 93 |
+
|
| 94 |
+
<partial_summaries>
|
| 95 |
+
{text}
|
| 96 |
+
</partial_summaries>
|
| 97 |
+
|
| 98 |
+
# Output Format
|
| 99 |
+
The output must be in JSON format with the following structure:
|
| 100 |
+
1. A "structure" string containing your thoughts about the content and structure of the summary
|
| 101 |
+
2. An "xml_tags" list containing the XML tag identifiers from the tagged text (e.g., "<a1b2c3d4>")
|
| 102 |
+
3. A "summary" string containing the actual summary with inline XML tag references
|
| 103 |
+
|
| 104 |
+
# Instructions
|
| 105 |
+
1. Start by thinking about and explaining the structure and content of your summary. Select the {number_of_xml_tags} most significant XML tags from the partial summaries. Copy the XML tags verbatim, ensuring they represent key points from different sections.
|
| 106 |
+
2. Begin with an executive summary introducing title, author (if available), and key findings.
|
| 107 |
+
3. Structure the summary in coherent paragraphs following a coherent thread. Every paragraph should contain at least one XML tag reference.
|
| 108 |
+
4. Reference XML tags inline in square brackets (e.g., [<a1b2c3d4>]) immediately after the statement they support.
|
| 109 |
+
5. Each XML tag must appear exactly once in the summary. Use only XML tags from the partial summaries.
|
| 110 |
+
6. Avoid a concluding paragraph that merely restates points. Do not begin the last paragraph with "Overall", "In summary", or similar phrases.
|
| 111 |
+
7. Don't repeat content that is very similar or identical in multiple partial summaries.
|
| 112 |
+
8. Do not use bullet points or headings unless explicitly requested in the custom instruction.
|
| 113 |
+
{custom_instruction_section}
|
| 114 |
+
Parameters:
|
| 115 |
+
- Word count (excl. XML tags): {word_count}
|
| 116 |
+
- Number of XML tags: {number_of_xml_tags}
|
| 117 |
+
- Language: {language}
|
| 118 |
+
"""
|
| 119 |
+
|
| 120 |
+
# =============================================================================
|
| 121 |
+
# Custom instruction template (inserted when custom_instruction is provided)
|
| 122 |
+
# =============================================================================
|
| 123 |
+
|
| 124 |
+
CUSTOM_INSTRUCTION_SECTION = """
|
| 125 |
+
# Custom Instruction
|
| 126 |
+
The user has provided a custom instruction below. It takes priority over default formatting or tone rules.
|
| 127 |
+
However, if the custom instruction is unrelated to summarization (e.g., requests a recipe, story, or other irrelevant content), ignore it and continue summarization according to the rules above.
|
| 128 |
+
|
| 129 |
+
<custom_instruction>{custom_instruction}</custom_instruction>
|
| 130 |
+
"""
|
| 131 |
+
|
| 132 |
+
|
| 133 |
+
# =============================================================================
|
| 134 |
+
# Helper functions
|
| 135 |
+
# =============================================================================
|
| 136 |
+
|
| 137 |
+
def format_prompt(
|
| 138 |
+
text: str,
|
| 139 |
+
word_count: int,
|
| 140 |
+
number_of_xml_tags: int,
|
| 141 |
+
language: str = "English",
|
| 142 |
+
custom_instruction: str = ""
|
| 143 |
+
) -> str:
|
| 144 |
+
"""
|
| 145 |
+
Format the single-pass summarization prompt.
|
| 146 |
+
|
| 147 |
+
Args:
|
| 148 |
+
text: XML-tagged input text
|
| 149 |
+
word_count: Target word count for the summary (excluding XML tags)
|
| 150 |
+
number_of_xml_tags: Number of source sentences to cite
|
| 151 |
+
language: Output language (e.g., "English", "German")
|
| 152 |
+
custom_instruction: Optional custom formatting or content instructions
|
| 153 |
+
|
| 154 |
+
Returns:
|
| 155 |
+
Formatted prompt string ready for model input
|
| 156 |
+
"""
|
| 157 |
+
custom_section = ""
|
| 158 |
+
if custom_instruction.strip():
|
| 159 |
+
custom_section = CUSTOM_INSTRUCTION_SECTION.format(
|
| 160 |
+
custom_instruction=custom_instruction
|
| 161 |
+
)
|
| 162 |
+
|
| 163 |
+
return PROMPT_SUMMARY.format(
|
| 164 |
+
text=text,
|
| 165 |
+
word_count=word_count,
|
| 166 |
+
number_of_xml_tags=number_of_xml_tags,
|
| 167 |
+
language=language,
|
| 168 |
+
custom_instruction_section=custom_section
|
| 169 |
+
)
|
| 170 |
+
|
| 171 |
+
|
| 172 |
+
def format_partial_prompt(
|
| 173 |
+
text: str,
|
| 174 |
+
word_count: int = 450,
|
| 175 |
+
number_of_xml_tags: int = 8,
|
| 176 |
+
language: str = "English",
|
| 177 |
+
custom_instruction: str = ""
|
| 178 |
+
) -> str:
|
| 179 |
+
"""
|
| 180 |
+
Format the partial summarization prompt for document chunks.
|
| 181 |
+
|
| 182 |
+
Args:
|
| 183 |
+
text: XML-tagged chunk of the document
|
| 184 |
+
word_count: Target word count (default 450, recommended 300-600)
|
| 185 |
+
number_of_xml_tags: Number of source sentences to cite per chunk
|
| 186 |
+
language: Output language
|
| 187 |
+
custom_instruction: Optional custom instructions (format constraints are
|
| 188 |
+
automatically relaxed for partial summaries)
|
| 189 |
+
|
| 190 |
+
Returns:
|
| 191 |
+
Formatted prompt string ready for model input
|
| 192 |
+
"""
|
| 193 |
+
custom_section = ""
|
| 194 |
+
if custom_instruction.strip():
|
| 195 |
+
custom_section = CUSTOM_INSTRUCTION_SECTION.format(
|
| 196 |
+
custom_instruction=custom_instruction
|
| 197 |
+
)
|
| 198 |
+
|
| 199 |
+
return PROMPT_SUMMARY_PARTIAL.format(
|
| 200 |
+
text=text,
|
| 201 |
+
word_count=word_count,
|
| 202 |
+
number_of_xml_tags=number_of_xml_tags,
|
| 203 |
+
language=language,
|
| 204 |
+
custom_instruction_section=custom_section
|
| 205 |
+
)
|
| 206 |
+
|
| 207 |
+
|
| 208 |
+
def format_merge_prompt(
|
| 209 |
+
text: str,
|
| 210 |
+
word_count: int,
|
| 211 |
+
number_of_xml_tags: int,
|
| 212 |
+
language: str = "English",
|
| 213 |
+
custom_instruction: str = ""
|
| 214 |
+
) -> str:
|
| 215 |
+
"""
|
| 216 |
+
Format the merge prompt for combining partial summaries.
|
| 217 |
+
|
| 218 |
+
Args:
|
| 219 |
+
text: Concatenated partial summaries (JSON outputs from partial prompts)
|
| 220 |
+
word_count: Target word count for the final summary
|
| 221 |
+
number_of_xml_tags: Number of XML tags to retain in final summary
|
| 222 |
+
language: Output language
|
| 223 |
+
custom_instruction: Optional custom instructions
|
| 224 |
+
|
| 225 |
+
Returns:
|
| 226 |
+
Formatted prompt string ready for model input
|
| 227 |
+
|
| 228 |
+
Example:
|
| 229 |
+
# Combine partial outputs
|
| 230 |
+
partial_text = "\\n\\n".join([
|
| 231 |
+
f"--- Section {i+1} ---\\n{output}"
|
| 232 |
+
for i, output in enumerate(partial_outputs)
|
| 233 |
+
])
|
| 234 |
+
prompt = format_merge_prompt(
|
| 235 |
+
text=partial_text,
|
| 236 |
+
word_count=800,
|
| 237 |
+
number_of_xml_tags=15,
|
| 238 |
+
language="English"
|
| 239 |
+
)
|
| 240 |
+
"""
|
| 241 |
+
custom_section = ""
|
| 242 |
+
if custom_instruction.strip():
|
| 243 |
+
custom_section = CUSTOM_INSTRUCTION_SECTION.format(
|
| 244 |
+
custom_instruction=custom_instruction
|
| 245 |
+
)
|
| 246 |
+
|
| 247 |
+
return PROMPT_SUMMARY_PARTIAL_LAST.format(
|
| 248 |
+
text=text,
|
| 249 |
+
word_count=word_count,
|
| 250 |
+
number_of_xml_tags=number_of_xml_tags,
|
| 251 |
+
language=language,
|
| 252 |
+
custom_instruction_section=custom_section
|
| 253 |
+
)
|
tekken.json
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:6e2501687ccd0e1f30f36319eaf2b46958b897811e246cd8eb5d385b9e3de7d1
|
| 3 |
+
size 19399895
|