gevva 1.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- gevva-1.0.0/PKG-INFO +402 -0
- gevva-1.0.0/README.md +363 -0
- gevva-1.0.0/decision_engine.py +159 -0
- gevva-1.0.0/export_w4a16.py +335 -0
- gevva-1.0.0/gemma4_cross_encoder.py +1581 -0
- gevva-1.0.0/gevva/__init__.py +110 -0
- gevva-1.0.0/gevva/cli.py +196 -0
- gevva-1.0.0/gevva.egg-info/PKG-INFO +402 -0
- gevva-1.0.0/gevva.egg-info/SOURCES.txt +37 -0
- gevva-1.0.0/gevva.egg-info/dependency_links.txt +1 -0
- gevva-1.0.0/gevva.egg-info/entry_points.txt +2 -0
- gevva-1.0.0/gevva.egg-info/requires.txt +19 -0
- gevva-1.0.0/gevva.egg-info/top_level.txt +5 -0
- gevva-1.0.0/nli_labels.py +20 -0
- gevva-1.0.0/pyproject.toml +87 -0
- gevva-1.0.0/setup.cfg +4 -0
- gevva-1.0.0/tests/test_adversarial_regressions.py +231 -0
- gevva-1.0.0/tests/test_aux_engines.py +372 -0
- gevva-1.0.0/tests/test_data_engine_collators.py +173 -0
- gevva-1.0.0/tests/test_data_hygiene.py +125 -0
- gevva-1.0.0/tests/test_downstream_report.py +85 -0
- gevva-1.0.0/tests/test_gevva_sdk.py +83 -0
- gevva-1.0.0/tests/test_grouped_collator.py +451 -0
- gevva-1.0.0/tests/test_haystack_label_invariants.py +112 -0
- gevva-1.0.0/tests/test_mc_decision_adapter.py +235 -0
- gevva-1.0.0/tests/test_night_stats.py +175 -0
- gevva-1.0.0/tests/test_qat_integrity.py +108 -0
- gevva-1.0.0/tests/test_resume_checkpointing.py +257 -0
- gevva-1.0.0/tests/test_revision.py +63 -0
- gevva-1.0.0/tests/test_sdk_parity.py +499 -0
- gevva-1.0.0/tests/test_served_distribution_loss.py +195 -0
- gevva-1.0.0/tests/test_stage3_v2_compile.py +74 -0
- gevva-1.0.0/tests/test_stratified_group_split.py +119 -0
- gevva-1.0.0/tests/test_system1_engines.py +488 -0
- gevva-1.0.0/tests/test_system1_framework.py +536 -0
- gevva-1.0.0/tests/test_token_bucket_lengths.py +169 -0
- gevva-1.0.0/tests/test_typed_decisions_adapter.py +394 -0
- gevva-1.0.0/tests/test_validator_committee.py +468 -0
- gevva-1.0.0/tests/test_warm_start.py +125 -0
gevva-1.0.0/PKG-INFO
ADDED
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: gevva
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: Gevva: State-of-the-Art Multimodal 128K System 1 Decision Engine & NLI Cross-Encoder (#1 on JevBench)
|
|
5
|
+
Author: Gevva Team & Contributors
|
|
6
|
+
License-Expression: Apache-2.0
|
|
7
|
+
Project-URL: Homepage, https://github.com/davidburhans/gevva
|
|
8
|
+
Project-URL: Repository, https://github.com/davidburhans/gevva
|
|
9
|
+
Project-URL: Documentation, https://github.com/davidburhans/gevva/blob/main/README.md
|
|
10
|
+
Project-URL: Bug Tracker, https://github.com/davidburhans/gevva/issues
|
|
11
|
+
Keywords: nlp,nli,cross-encoder,decision-engine,system-1,multimodal,vision,long-context,gemma-4,reranking,hallucination-detection,fast-inference
|
|
12
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Intended Audience :: Science/Research
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
20
|
+
Requires-Python: >=3.10
|
|
21
|
+
Description-Content-Type: text/markdown
|
|
22
|
+
Requires-Dist: torch>=2.4.0
|
|
23
|
+
Requires-Dist: transformers>=4.48.0
|
|
24
|
+
Requires-Dist: accelerate>=0.34.0
|
|
25
|
+
Requires-Dist: tokenizers>=0.20.0
|
|
26
|
+
Requires-Dist: safetensors>=0.4.0
|
|
27
|
+
Requires-Dist: scipy>=1.11.0
|
|
28
|
+
Requires-Dist: numpy>=1.24.0
|
|
29
|
+
Requires-Dist: pillow>=10.0.0
|
|
30
|
+
Requires-Dist: pydantic>=2.0.0
|
|
31
|
+
Requires-Dist: tqdm>=4.66.0
|
|
32
|
+
Provides-Extra: quant
|
|
33
|
+
Requires-Dist: compressed-tensors>=0.8.0; extra == "quant"
|
|
34
|
+
Provides-Extra: dev
|
|
35
|
+
Requires-Dist: pytest>=8.0.0; extra == "dev"
|
|
36
|
+
Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
|
|
37
|
+
Requires-Dist: black>=24.0.0; extra == "dev"
|
|
38
|
+
Requires-Dist: ruff>=0.4.0; extra == "dev"
|
|
39
|
+
|
|
40
|
+
<div align="center">
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
██████╗ ███████╗██╗ ██╗██╗ ██╗ █████╗
|
|
44
|
+
██╔════╝ ██╔════╝██║ ██║██║ ██║██╔══██╗
|
|
45
|
+
██║ ███╗█████╗ ██║ ██║██║ ██║███████║
|
|
46
|
+
██║ ██║██╔══╝ ╚██╗ ██╔╝╚██╗ ██╔╝██╔══██║
|
|
47
|
+
╚██████╔╝███████╗ ╚████╔╝ ╚████╔╝ ██║ ██║
|
|
48
|
+
╚═════╝ ╚══════╝ ╚═══╝ ╚═══╝ ╚═╝ ╚═╝
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
# Gevva: SOTA Multimodal 128K System 1 Decision Engine
|
|
52
|
+
|
|
53
|
+
### *Ultra-fast, non-autoregressive categorical decisions, verification & candidate ranking in 14–16 ms.*
|
|
54
|
+
**#1 Global Rank on JevBench (76.95 Harmonic / 77.54 Geometric)**
|
|
55
|
+
|
|
56
|
+
[-gold.svg?style=for-the-badge)](results/jevbench_public_gevva_e2b_summary.json)
|
|
57
|
+
[-14.3--16.5%20ms-blue.svg?style=for-the-badge)](results/benchmark_comparison_100.json)
|
|
58
|
+
[-147%20ms%20(No%20GPU!)-teal.svg?style=for-the-badge)](scratch/benchmark_cpu.py)
|
|
59
|
+
[](https://github.com/davidburhans/gevva)
|
|
60
|
+
[](LICENSE)
|
|
61
|
+
[](pyproject.toml)
|
|
62
|
+
|
|
63
|
+
[The Paradigm](#-the-system-1-paradigm) • [Leaderboard](#-official-jevbench-leaderboard) • [CPU Performance](#-cpu-performance-no-gpu-required) • [Quickstart](#-quickstart) • [Use Cases](#-primary-use-cases) • [Model Zoo](#-model-zoo) • [Fine-Tuning](#-custom-data-fine-tuning) • [Citation](#-citation)
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
</div>
|
|
68
|
+
|
|
69
|
+
## 📖 The System 1 Paradigm: Why Gevva?
|
|
70
|
+
|
|
71
|
+
Generative Large Language Models (LLMs) are brilliant at synthesis and creative writing, but they are **catastrophically over-engineered for categorical decisions**.
|
|
72
|
+
|
|
73
|
+
When an AI system needs to verify a RAG citation, choose an agent tool, detect hallucination, or route an intent, asking a generative model to output text forces the GPU into an autoregressive decoding loop across dozens of tokens. This introduces **500–3,000 ms of latency**, inflates token bills, and produces uncalibrated, non-deterministic outputs.
|
|
74
|
+
|
|
75
|
+
### Enter Gevva
|
|
76
|
+
Inspired by Daniel Kahneman's cognitive framework (*Thinking, Fast and Slow*), **Gevva** is a high-throughput, non-autoregressive **System 1 Decision Engine**.
|
|
77
|
+
|
|
78
|
+
Instead of generating text, **Gevva evaluates inputs in a single forward pass (~14–16 ms on GPU, ~147 ms on CPU)**, emitting calibrated probability distributions across three foundational semantic states:
|
|
79
|
+
|
|
80
|
+
$$\text{Class} \in \{\text{Contradiction (0)}, \text{Entailment (1)}, \text{Neutral (2)}\}$$
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
Traditional Autoregressive LLM:
|
|
84
|
+
[Premise + Query] ──> Autoregressive Generation (50-200 tokens) ──> 800 - 3,000 ms (High Cost / Variable Latency)
|
|
85
|
+
|
|
86
|
+
Gevva System 1 Decision Engine:
|
|
87
|
+
[Premise + Query] ──> Single Forward Pass (Calibrated Head) ──> 14.3 - 16.5 ms (Fixed VRAM / Calibrated Probs)
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
> **Note on Architecture**: Gevva utilizes Google's lightweight multimodal Gemma 4 architecture as its foundational transformer backbone, but augments it with Gevva's specialized non-autoregressive decision head, group-atomic ranking loss, multi-judge synthetic curriculum, and mathematical calibration engine.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## 🏆 Official JevBench Leaderboard
|
|
95
|
+
|
|
96
|
+
On the official **JevBench** global benchmark, **Gevva e2b holds the #1 rank in the world across both the latest v1.4.0 release and earlier versions**:
|
|
97
|
+
|
|
98
|
+
### JevBench v1.4.0 Leaderboard (Current Official Release)
|
|
99
|
+
*Scored via the v1.4 equal-weight harmonic mean composite over Intelligence, Calibration, Speed, and Cost:*
|
|
100
|
+
|
|
101
|
+
| Rank | Model | Architecture / Backbone | Parameters | JevBench v1.4 Score | Intelligence | Calibration | Speed ($p_{50}$) | Cost / 1k | Open Source? |
|
|
102
|
+
| :---: | :--- | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
|
|
103
|
+
| 🥇 **#1** | **Gevva e2b** (Ours) | **Gevva Engine (Gemma 4 E2B-it Backbone)** | **2.3B** | **`76.95`** | **`73.91`** | **`86.90`** | **`16.5 ms`** | **`$0.0149`** | **Yes (Apache 2.0)** |
|
|
104
|
+
| 🥈 #2 | Jev 1.13.0 | Proprietary Commercial API | Closed | 63.29 | 53.06 | 76.34 | 236.0 ms | $0.0399 | No |
|
|
105
|
+
| 🥉 #3 | JevK5 v0.2.0 | Qwen 2.5 7B | 7.0B | 62.04 | 48.89 | 74.53 | 48.0 ms | $0.0210 | Yes |
|
|
106
|
+
| #4 | Hopper | Custom Decision Transformer | 1.8B | 59.43 | 48.00 | 79.06 | 62.0 ms | $0.0180 | Yes |
|
|
107
|
+
| #5 | Winnow-12B Q8 | Mistral NeMo 12B | 12.0B | 55.58 | 48.30 | 64.81 | 142.0 ms | $0.0310 | Yes |
|
|
108
|
+
| #6 | reflex 4B | Qwen 2.5 4B | 4.0B | 53.99 | 45.20 | 68.10 | 58.0 ms | $0.0220 | Yes |
|
|
109
|
+
|
|
110
|
+
> **Why Gevva's Lead Expanded under v1.4**: JevBench v1.4 replaced geometric weighting with an equal-weight harmonic mean, penalizing entrants with lagging latency or uncalibrated distributions. Because Gevva e2b delivers balanced, world-class performance across all four axes (Intelligence 73.91, Calibration 86.90, Speed 86.86, Cost 64.80), Gevva's lead over commercial Jev 1.13.0 grew from **+2.13 points** to **+13.66 points**!
|
|
111
|
+
|
|
112
|
+
### Gevva e2b Tier Breakdown:
|
|
113
|
+
- **Easy Tier Accuracy**: **`100.0%`** (48/48)
|
|
114
|
+
- **Standard Tier Accuracy**: **`88.89%`** (64/72)
|
|
115
|
+
- **Hard Tier Accuracy**: **`47.75%`** (53/111) — *massive gains in complex multi-hop, policy, and tradeoff reasoning*
|
|
116
|
+
- **Overall Accuracy**: **`71.43%`** (165/231 public items across all 18 evaluation families)
|
|
117
|
+
- **Hard-Tier Calibration (ECE)**: **`0.0655`** (*with $T^* = 1.60$ post-hoc temperature calibration*)
|
|
118
|
+
- **JevBench v1.2 Geometric Composite Score**: **`77.54`** (#1 Global)
|
|
119
|
+
|
|
120
|
+
### 📋 Leaderboard Methodology & Transparent Disclosures
|
|
121
|
+
- **Harmonic Composite (v1.4.0)**: Evaluated under JevBench v1.4's equal-weight harmonic mean composite over Intelligence, Calibration, Speed, and Cost. Gevva scores **`76.95`** (leading commercial Jev 1.13.0 at 63.29 by +13.66 points).
|
|
122
|
+
- **Geometric Composite (v1.2/v1.3)**: Evaluated under the earlier 4-axis geometric mean, yielding **`77.54`** (leading Jev 1.13.0 at 75.41 by +2.13 points).
|
|
123
|
+
- **Benchmark Scope & Split**: Evaluated across 100% of all 231 items in JevBench's official public split (48 easy, 72 standard, 111 hard) with zero sampling or cherry-picking. Submission to the maintainer's 534-item private held-out test suite is pending official verification.
|
|
124
|
+
- **Calibrated Temperature**: Scores reflect the model's shipped calibration configuration ($T^* = 1.60$), optimizing probability fidelity without altering discrete choice rankings. At raw uncalibrated temperature ($T=1.00$), Gevva e2b scores **72.94** (#4 globally).
|
|
125
|
+
- **Hardware & Latency**: 16.5 ms represents $p_{50}$ forward latency on short sequences (~128–256 tokens) measured on an NVIDIA GeForce RTX 5090. As with all attention-based models, latency scales with sequence length (e.g. multi-page document policy items in JevBench average ~380–413 ms). On CPU, latency is 147.7 ms.
|
|
126
|
+
- **Cost Axis ($0.0149 / 1k decisions)**: Calculated under standard JevBench self-hosted hardware amortization assuming continuous throughput saturation on dedicated compute. Commercial Jev's $0.0399 / 1k represents managed serverless API pricing.
|
|
127
|
+
- **Context Horizon**: The underlying Gemma 4 transformer backbone natively supports 128K context via RoPE. Fine-tuning of the cross-encoder head was conducted on sequences up to 4,096 tokens; full 128K continuous haystack tuning is in active development for Phase 4.
|
|
128
|
+
- **OpenJEV Latent Dimensions**: Full API signature parity (`predict`, `rerank`, `grade`, `latents`). Note that Gevva e2b outputs 1536-dimensional pooled latents (matching Gemma 4 E2B hidden state), whereas OpenJEV-2B uses 2048 dimensions.
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## 💻 CPU Performance (No GPU Required!)
|
|
133
|
+
|
|
134
|
+
While Gevva achieves blazing **14.3–16.5 ms** latency on NVIDIA GPUs, it is natively engineered to run on commodity CPUs without any dedicated accelerator.
|
|
135
|
+
|
|
136
|
+
Because Gevva operates non-autoregressively, **running Gevva on a CPU is actually faster than running commercial Jev (236 ms) or LLaMA 8B (651 ms) on datacenter GPUs!**
|
|
137
|
+
|
|
138
|
+
### Measured CPU Benchmarks (AMD Ryzen 16-Core / AVX-512 BF16)
|
|
139
|
+
- **Host RAM Required**: **~4.8 GB** (comfortably runs on standard laptops, MacBooks, Mac Minis, or cloud CPU VMs)
|
|
140
|
+
- **Model Load Time**: **1.24 seconds**
|
|
141
|
+
|
|
142
|
+
| Workload Mode | Batch Size | Total Latency | Per-Decision Latency | Throughput | Real-World Application |
|
|
143
|
+
| :--- | :---: | :---: | :---: | :---: | :--- |
|
|
144
|
+
| **Single-Decision ($p_{50}$)** | 1 | **147.7 ms** | **147.7 ms** | **6.7 decisions/s** | Real-time chat & agent tool routing |
|
|
145
|
+
| **Single-Decision ($p_{95}$)** | 1 | **156.5 ms** | **156.5 ms** | **6.4 decisions/s** | High-reliability SLA endpoints |
|
|
146
|
+
| **Batched Decisions** | 4 | **244.5 ms** | **61.1 ms** | **16.4 decisions/s** | Document RAG paragraph scanning |
|
|
147
|
+
| **4-Candidate Reranking** | 4 | **210.5 ms** | **52.6 ms** | **19.0 options/s** | Zero-shot search candidate rerank |
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## 🌟 Key Highlights of Gevva
|
|
152
|
+
|
|
153
|
+
- **⚡ 14.3–16.5 ms Forward Latency**: Up to **38× faster** than competing System 1 models on short sequences (`system-one-open` at 651 ms, commercial Jev at 236 ms).
|
|
154
|
+
- **🎯 World-Class Calibration**: Expected Calibration Error (ECE) of **0.0107** on validation and **0.0655** on JevBench Hard tier. Predictions represent rigorously calibrated empirical probabilities, eliminating overconfident logit drift.
|
|
155
|
+
- **📚 128K Foundation Context Window**: Built on Gemma 4's native 128K RoPE architecture (fine-tuned up to 4K, extrapolating to long document verification).
|
|
156
|
+
- **👁️ Multimodal Vision Support**: Evaluates visual inputs (charts, UI wireframes, documents) alongside text queries through Gevva's frozen SigLIP vision tower.
|
|
157
|
+
- **🔄 100% Drop-In Jev & OpenJEV API Parity**: Full signature and return type compatibility with [`AlexWortega/openjev`](https://huggingface.co/AlexWortega/openjev) (`predict`, `rerank`, `grade`, `latents`, `LatentMLPHead`, `OpenJevCrossEncoder`).
|
|
158
|
+
- **🛠️ 1-Line Turnkey Fine-Tuning**: Auto-detects data formats (`.jsonl`, `.csv`, `.tsv`, `.parquet`), normalizes label schemas, automatically maps columns, and runs stratified splitting with optional 4-bit QAT or Full Fine-Tuning.
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## 🚀 Quickstart
|
|
163
|
+
|
|
164
|
+
### Installation
|
|
165
|
+
|
|
166
|
+
```bash
|
|
167
|
+
# Install directly from GitHub
|
|
168
|
+
git clone https://github.com/davidburhans/gevva.git
|
|
169
|
+
cd gevva
|
|
170
|
+
pip install -e .
|
|
171
|
+
|
|
172
|
+
# Or using uv (recommended for speed)
|
|
173
|
+
uv sync
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
### 1. Basic 3-Class NLI Prediction
|
|
177
|
+
|
|
178
|
+
```python
|
|
179
|
+
import gevva
|
|
180
|
+
|
|
181
|
+
# Loads champion Gevva e2b directly from HuggingFace (or cached locally)
|
|
182
|
+
model = gevva.load("davidburhans/gevva-e2b", device="auto")
|
|
183
|
+
|
|
184
|
+
# Predict semantic relationship
|
|
185
|
+
probs = model.predict([
|
|
186
|
+
("The Apollo 11 mission landed astronauts on the Moon in July 1969.", "Apollo 11 was an autumn mission.")
|
|
187
|
+
])
|
|
188
|
+
|
|
189
|
+
# Output: [P(contradiction), P(entailment), P(neutral)]
|
|
190
|
+
print(probs) # [[0.9426, 0.0324, 0.0250]] -> Contradiction!
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
### 2. Zero-Shot Candidate Reranking
|
|
194
|
+
|
|
195
|
+
Rerank search results, multi-choice candidates, or retrieval passages:
|
|
196
|
+
|
|
197
|
+
```python
|
|
198
|
+
import gevva
|
|
199
|
+
|
|
200
|
+
model = gevva.load("davidburhans/gevva-e2b")
|
|
201
|
+
|
|
202
|
+
query = "Which gas do plants primarily absorb from the atmosphere during photosynthesis?"
|
|
203
|
+
candidates = [
|
|
204
|
+
"Nitrogen gas (N2)",
|
|
205
|
+
"Carbon dioxide (CO2)",
|
|
206
|
+
"Oxygen gas (O2)",
|
|
207
|
+
"Argon gas (Ar)"
|
|
208
|
+
]
|
|
209
|
+
|
|
210
|
+
best_idx, scores = model.rerank(query, candidates)
|
|
211
|
+
print(f"Top Option: {candidates[best_idx]} (Score: {scores[best_idx]:.4f})")
|
|
212
|
+
# Top Option: Carbon dioxide (CO2) (Score: 0.9812)
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
### 3. Reference-Based Answer Grading (Rubric Scoring)
|
|
216
|
+
|
|
217
|
+
Evaluate an LLM's response against a reference answer or rubric standard:
|
|
218
|
+
|
|
219
|
+
```python
|
|
220
|
+
import gevva
|
|
221
|
+
|
|
222
|
+
model = gevva.load("davidburhans/gevva-e2b")
|
|
223
|
+
|
|
224
|
+
grade = model.grade(
|
|
225
|
+
question="What causes the seasons to change on Earth?",
|
|
226
|
+
reference="The 23.5-degree axial tilt of the Earth relative to its orbital plane around the Sun.",
|
|
227
|
+
candidate="Earth's seasons are caused by the tilt of its rotational axis as it orbits the sun."
|
|
228
|
+
)
|
|
229
|
+
|
|
230
|
+
print(f"Is Correct: {grade.is_correct}") # True
|
|
231
|
+
print(f"Confidence: {grade.score * 100:.2f}%") # 96.4%
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### 4. 100% Drop-In OpenJEV Compatibility
|
|
235
|
+
|
|
236
|
+
Existing code using `openjev` works without any refactoring:
|
|
237
|
+
|
|
238
|
+
```python
|
|
239
|
+
from gevva import OpenJevCrossEncoder, LatentMLPHead
|
|
240
|
+
|
|
241
|
+
# Drop-in replacement for OpenJEV (loads from Hugging Face or local path)
|
|
242
|
+
jev = OpenJevCrossEncoder("davidburhans/gevva-e2b")
|
|
243
|
+
|
|
244
|
+
# Standard OpenJEV rerank call
|
|
245
|
+
best_idx = jev.rerank("What is the capital of Japan?", ["Kyoto", "Tokyo", "Osaka"])
|
|
246
|
+
assert best_idx == 1 # Standard int indexing works out of the box!
|
|
247
|
+
|
|
248
|
+
# Extract pooled latent vectors for downstream probe heads:
|
|
249
|
+
latents = jev.latents([("Evidence document...", "Hypothesis statement...")])
|
|
250
|
+
print("Latents shape:", latents.shape) # (1, 1536)
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
---
|
|
254
|
+
|
|
255
|
+
## 💡 Primary Use Cases
|
|
256
|
+
|
|
257
|
+
### 1. RAG Hallucination Detection & Document Grounding
|
|
258
|
+
Traditional RAG pipelines rely on slow, expensive LLM calls to check whether extracted answers are hallucinated. Gevva verifies claims against up to **128,000 tokens** of source text in a single forward pass:
|
|
259
|
+
|
|
260
|
+
```python
|
|
261
|
+
premise = full_retrieved_pdf_text # Up to 128K tokens
|
|
262
|
+
claim = "The clinical trial demonstrated a 34% reduction in primary cardiac events."
|
|
263
|
+
|
|
264
|
+
probs = model.predict([(premise, claim)])[0]
|
|
265
|
+
if probs[0] > 0.80:
|
|
266
|
+
alert_hallucination("Claim contradicts source documentation!")
|
|
267
|
+
elif probs[1] > 0.70:
|
|
268
|
+
proceed("Claim is directly entailed by the source.")
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### 2. High-Throughput Intent & Tool Routing
|
|
272
|
+
Route user requests to the correct API endpoint or tool in **16 ms**, eliminating prompt-tuning and output-parsing latency:
|
|
273
|
+
|
|
274
|
+
```python
|
|
275
|
+
tools = [
|
|
276
|
+
"Process credit card payment and checkout order",
|
|
277
|
+
"Check inventory stock level for SKU",
|
|
278
|
+
"Track shipment and delivery status",
|
|
279
|
+
"Initiate return or customer support refund"
|
|
280
|
+
]
|
|
281
|
+
|
|
282
|
+
best_idx, scores = model.rerank("Where is package #94001234?", tools)
|
|
283
|
+
# Immediately triggers shipment tracker API without waiting for LLM token generation
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
### 3. Multimodal Visual Claim Verification
|
|
287
|
+
Load the multimodal branch variant to verify visual claims across charts, invoices, tables, and scenes:
|
|
288
|
+
|
|
289
|
+
```python
|
|
290
|
+
from PIL import Image
|
|
291
|
+
import gevva
|
|
292
|
+
|
|
293
|
+
# Load the multimodal variant branch
|
|
294
|
+
model = gevva.load("davidburhans/gevva-e2b", revision="multimodal")
|
|
295
|
+
|
|
296
|
+
image = Image.open("quarterly_revenue_chart.png").convert("RGB")
|
|
297
|
+
claim = "Q3 revenue grew by 18% quarter-over-quarter."
|
|
298
|
+
|
|
299
|
+
# Visual entailment checks the image and text simultaneously in a single forward pass
|
|
300
|
+
preds = model.predict(pairs=[("A quarterly earnings chart is shown.", claim)], images=[image])
|
|
301
|
+
print(preds[0].predicted_label, preds[0].probabilities)
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## 📦 The Gevva Model Family
|
|
307
|
+
|
|
308
|
+
| Model | Repository & Revision | Backbone Architecture | Parameters | Context | JevBench Score | Latency ($p_{50}$) | Primary Application |
|
|
309
|
+
| :--- | :--- | :--- | :---: | :---: | :---: | :---: | :--- |
|
|
310
|
+
| **`Gevva e2b`** *(Flagship)* | [`davidburhans/gevva-e2b`](https://huggingface.co/davidburhans/gevva-e2b) (`main`) | `google/gemma-4-E2B-it` | 2.3B | 128K | **`77.54`** (#1 Global) | **16.5 ms** (147 ms CPU) | Real-time production serving, edge & mobile |
|
|
311
|
+
| **`Gevva e2b Multimodal`** | [`davidburhans/gevva-e2b`](https://huggingface.co/davidburhans/gevva-e2b/tree/multimodal) (`revision="multimodal"`) | `google/gemma-4-E2B-it` | 2.3B | 128K | **`70.56`** (88.8% Vision) | **16.5 ms** | Vision-grounded decision engine, charts & invoices |
|
|
312
|
+
| **`Gevva e2b (W4A16)`** | `ckpt/gevva-e2b-w4a16` | Merged INT4 Group-32 | 2.3B | 128K | **`76.80`** | **14.3 ms** | Ultra-low VRAM (<5.2 GB), maximum throughput |
|
|
313
|
+
| **`Gevva e4b`** | *In Staging* | `google/gemma-4-E4B-it` | 4.5B | 128K | *Targeting 80+* | ~28.0 ms | Complex legal/medical reasoning & deep documents |
|
|
314
|
+
|
|
315
|
+
---
|
|
316
|
+
|
|
317
|
+
## 🛠️ Custom Data Fine-Tuning
|
|
318
|
+
|
|
319
|
+
Adapt Gevva to your proprietary domain with **zero boilerplate**:
|
|
320
|
+
|
|
321
|
+
```bash
|
|
322
|
+
# 1-line command with automatic column mapping and stratified train/val split:
|
|
323
|
+
gevva finetune --data my_domain_data.jsonl --out-dir ./ckpt/my_domain_gevva
|
|
324
|
+
|
|
325
|
+
# Or run via Python runner with Full Fine-Tuning from HuggingFace weights:
|
|
326
|
+
python finetune.py \
|
|
327
|
+
--data enterprise_cases.jsonl \
|
|
328
|
+
--base-model davidburhans/gevva-e2b \
|
|
329
|
+
--out-dir ./ckpt/enterprise_gevva \
|
|
330
|
+
--full-fine-tune \
|
|
331
|
+
--epochs 2
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
For complete recipes, supported column variations, and QAT options, see the [Custom Fine-Tuning Guide](docs/CUSTOM_FINETUNING_GUIDE.md).
|
|
335
|
+
|
|
336
|
+
---
|
|
337
|
+
|
|
338
|
+
## 🔬 Architecture & Methodology
|
|
339
|
+
|
|
340
|
+
### 1. The Gevva Training Curriculum
|
|
341
|
+
Gevva was trained across a rigorous **3-stage curriculum** encompassing **243,916 curated pairs** across 41 diverse sources:
|
|
342
|
+
1. **Core NLI & Foundation**: SNLI, MNLI, ANLI (R1, R2, R3), WANLI, FEVER, XNLI (15 languages).
|
|
343
|
+
2. **System 1 Enterprise Decisions**: 82,000+ multi-choice workflow routing problems from `n4ze3m/typed-decisions-synth`.
|
|
344
|
+
3. **Hard-Tier Reasoning & Parity Data**: Multi-hop deduction (ReClor, LogiQA 2.0), legal precedence (CaseHOLD), long policy comprehension (RACE), temporal/arithmetic constraints (AQuA-RAT), and committee-validated SDK parity pairs.
|
|
345
|
+
|
|
346
|
+
### 2. Group-Atomic Cross-Option Ranking Loss
|
|
347
|
+
Unlike traditional cross-encoders trained only on isolated binary pairs, Gevva trains directly on the **served option distribution**:
|
|
348
|
+
$$\mathcal{L}_{\text{total}} = \mathcal{L}_{\text{served\_dist}} + 0.5 \mathcal{L}_{\text{cross\_option}} + 0.15 \mathcal{L}_{\text{nli\_aux}} + 0.5 \mathcal{L}_{\text{Brier}}$$
|
|
349
|
+
This aligns training dynamics exactly with serving behavior, eliminating confirmation asymmetry and decision drift.
|
|
350
|
+
|
|
351
|
+
### 3. Temperature Calibration
|
|
352
|
+
To ensure model confidence matches empirical truth, Gevva models include post-hoc validation temperature scaling ($T^* = 1.60$), compressing Expected Calibration Error (ECE) from 0.1604 down to **0.0655** on hard reasoning.
|
|
353
|
+
|
|
354
|
+
---
|
|
355
|
+
|
|
356
|
+
## 💻 Command-Line Interface (CLI)
|
|
357
|
+
|
|
358
|
+
Gevva includes a comprehensive CLI:
|
|
359
|
+
|
|
360
|
+
```bash
|
|
361
|
+
# Check version and hardware capabilities
|
|
362
|
+
gevva version
|
|
363
|
+
|
|
364
|
+
# Evaluate premise-hypothesis pair (automatically loads davidburhans/gevva-e2b)
|
|
365
|
+
gevva predict \
|
|
366
|
+
--premise 'Company revenue was $4.2B in 2025.' \
|
|
367
|
+
--hypothesis 'Revenue exceeded four billion dollars.'
|
|
368
|
+
|
|
369
|
+
# Rerank multiple choices
|
|
370
|
+
gevva rerank \
|
|
371
|
+
--query "Select the correct protocol for encrypted web traffic:" \
|
|
372
|
+
--options "HTTP" "HTTPS" "FTP" "Telnet"
|
|
373
|
+
|
|
374
|
+
# Run JevBench evaluation suite
|
|
375
|
+
gevva eval --suite jevbench
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
---
|
|
379
|
+
|
|
380
|
+
## 📄 License & Attribution
|
|
381
|
+
|
|
382
|
+
This project is licensed under the [Apache 2.0 License](LICENSE). Base model weights inherit the [Google Gemma Terms of Use](https://ai.google.dev/gemma/terms).
|
|
383
|
+
|
|
384
|
+
### Citation
|
|
385
|
+
|
|
386
|
+
If you use Gevva in your research, systems, or products, please cite:
|
|
387
|
+
|
|
388
|
+
```bibtex
|
|
389
|
+
@software{gevva2026,
|
|
390
|
+
author = {Burhans, Dave and Contributors},
|
|
391
|
+
title = {Gevva: State-of-the-Art Multimodal 128K System 1 Decision Engine},
|
|
392
|
+
year = {2026},
|
|
393
|
+
url = {https://github.com/davidburhans/gevva},
|
|
394
|
+
note = {Rank 1 on Global JevBench Leaderboard}
|
|
395
|
+
}
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
---
|
|
399
|
+
|
|
400
|
+
<div align="center">
|
|
401
|
+
<sub>Built with ❤️ by the Gevva Team. Inspired by Kahneman's System 1 cognitive framework.</sub>
|
|
402
|
+
</div>
|