logitgate 0.2.1__tar.gz → 0.2.2__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.
Files changed (46) hide show
  1. {logitgate-0.2.1 → logitgate-0.2.2}/PKG-INFO +20 -14
  2. {logitgate-0.2.1 → logitgate-0.2.2}/README.md +19 -13
  3. {logitgate-0.2.1 → logitgate-0.2.2}/pyproject.toml +1 -1
  4. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/__init__.py +1 -1
  5. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate.egg-info/PKG-INFO +20 -14
  6. {logitgate-0.2.1 → logitgate-0.2.2}/LICENSE +0 -0
  7. {logitgate-0.2.1 → logitgate-0.2.2}/setup.cfg +0 -0
  8. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/backends/__init__.py +0 -0
  9. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/backends/base.py +0 -0
  10. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/backends/dory_pytorch.py +0 -0
  11. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/backends/llamacpp.py +0 -0
  12. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/backends/ollama.py +0 -0
  13. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/backends/openai_compat.py +0 -0
  14. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/backends/recurrent.py +0 -0
  15. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/cascade.py +0 -0
  16. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/cli.py +0 -0
  17. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/config.py +0 -0
  18. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/debiasing/__init__.py +0 -0
  19. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/debiasing/inversion.py +0 -0
  20. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/debiasing/permutation.py +0 -0
  21. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/debiasing/softmax.py +0 -0
  22. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/exceptions.py +0 -0
  23. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/gates/__init__.py +0 -0
  24. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/gates/ast_gate.py +0 -0
  25. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/gates/base.py +0 -0
  26. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/gates/judge_gate.py +0 -0
  27. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/gates/logit_gate.py +0 -0
  28. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/integrations/__init__.py +0 -0
  29. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/integrations/deepeval.py +0 -0
  30. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/integrations/langgraph.py +0 -0
  31. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/integrations/pytest_plugin.py +0 -0
  32. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/models.py +0 -0
  33. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/py.typed +0 -0
  34. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate/snapshot.py +0 -0
  35. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate.egg-info/SOURCES.txt +0 -0
  36. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate.egg-info/dependency_links.txt +0 -0
  37. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate.egg-info/entry_points.txt +0 -0
  38. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate.egg-info/requires.txt +0 -0
  39. {logitgate-0.2.1 → logitgate-0.2.2}/src/logitgate.egg-info/top_level.txt +0 -0
  40. {logitgate-0.2.1 → logitgate-0.2.2}/tests/test_ast_gate.py +0 -0
  41. {logitgate-0.2.1 → logitgate-0.2.2}/tests/test_backends_and_cli.py +0 -0
  42. {logitgate-0.2.1 → logitgate-0.2.2}/tests/test_cascade.py +0 -0
  43. {logitgate-0.2.1 → logitgate-0.2.2}/tests/test_debiasing_math.py +0 -0
  44. {logitgate-0.2.1 → logitgate-0.2.2}/tests/test_integrations.py +0 -0
  45. {logitgate-0.2.1 → logitgate-0.2.2}/tests/test_logit_gate.py +0 -0
  46. {logitgate-0.2.1 → logitgate-0.2.2}/tests/test_usability_and_validation.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: logitgate
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Fast, calibrated first-token logit evaluation and 3-layer cascaded routing for LLMs.
5
5
  Author-email: Jason Bradley <jasonbdly@gmail.com>
6
6
  License: Apache-2.0
@@ -75,18 +75,24 @@ When evaluating whether an LLM output satisfies a rubric, traditional frameworks
75
75
 
76
76
  `LogitGate` uses a **3-layer cascaded pipeline**:
77
77
 
78
- ```mermaid
79
- flowchart TD
80
- artifact["Candidate Artifact"] --> L0["Layer 0: ASTGate / ContractGate"]
81
-
82
- L0 -->|"Syntax / Schema Failure"| F0["FAIL: 0 LLM calls (sub-0.1ms)"]
83
- L0 -->|"Passed"| L1["Layer 1: LogitGate"]
84
-
85
- L1 -->|"P >= pass_threshold (>= 0.85)"| P1["PASS: 0 CoT tokens (~40–110ms)"]
86
- L1 -->|"P <= fail_threshold (<= 0.20)"| F1["FAIL: 0 CoT tokens (~40–110ms)"]
87
- L1 -->|"0.20 < P < 0.85 (Ambiguous)"| L2["Layer 2: JudgeGate"]
88
-
89
- L2 -->|"Escalated Critique"| R2["Actionable Diagnostic Report"]
78
+ ```
79
+ Candidate Artifact
80
+ │
81
+ ▼
82
+ ┌──────────────────────────────────────┐
83
+ │ Layer 0: ASTGate / ContractGate ├──► [FAIL: syntax/schema, <0.1ms]
84
+ └──────────────────┬───────────────────┘
85
+ │ Passed
86
+ ▼
87
+ ┌──────────────────────────────────────┐
88
+ │ Layer 1: LogitGate ├──► [PASS: P >= 0.85, ~40–110ms]
89
+ └──────────────────┬───────────────────┤
90
+ │ Ambiguous └──► [FAIL: P <= 0.20, ~40–110ms]
91
+ │ (0.20 < P < 0.85)
92
+ ▼
93
+ ┌──────────────────────────────────────┐
94
+ │ Layer 2: JudgeGate ├──► [Actionable Diagnostic Report]
95
+ └──────────────────────────────────────┘
90
96
  ```
91
97
 
92
98
  1. **Layer 0 (`ASTGate` / `ContractGate`)**: Deterministic checks in **<0.1 ms** on CPU (Python AST syntax, JSON/Pydantic schemas, regex patterns, acyclic DAG topology). Failures reject immediately with zero LLM overhead.
@@ -336,7 +342,7 @@ If you use LogitGate in your research or production systems, please cite it as f
336
342
  author = {Jason Bradley},
337
343
  title = {LogitGate: Calibrated First-Token Logit Evaluation and Cascaded Routing for LLMs},
338
344
  year = {2026},
339
- version = {0.2.1},
345
+ version = {0.2.2},
340
346
  url = {https://github.com/jasonbdly/LogitGate},
341
347
  license = {Apache-2.0}
342
348
  }
@@ -20,18 +20,24 @@ When evaluating whether an LLM output satisfies a rubric, traditional frameworks
20
20
 
21
21
  `LogitGate` uses a **3-layer cascaded pipeline**:
22
22
 
23
- ```mermaid
24
- flowchart TD
25
- artifact["Candidate Artifact"] --> L0["Layer 0: ASTGate / ContractGate"]
26
-
27
- L0 -->|"Syntax / Schema Failure"| F0["FAIL: 0 LLM calls (sub-0.1ms)"]
28
- L0 -->|"Passed"| L1["Layer 1: LogitGate"]
29
-
30
- L1 -->|"P >= pass_threshold (>= 0.85)"| P1["PASS: 0 CoT tokens (~40–110ms)"]
31
- L1 -->|"P <= fail_threshold (<= 0.20)"| F1["FAIL: 0 CoT tokens (~40–110ms)"]
32
- L1 -->|"0.20 < P < 0.85 (Ambiguous)"| L2["Layer 2: JudgeGate"]
33
-
34
- L2 -->|"Escalated Critique"| R2["Actionable Diagnostic Report"]
23
+ ```
24
+ Candidate Artifact
25
+ │
26
+ ▼
27
+ ┌──────────────────────────────────────┐
28
+ │ Layer 0: ASTGate / ContractGate ├──► [FAIL: syntax/schema, <0.1ms]
29
+ └──────────────────┬───────────────────┘
30
+ │ Passed
31
+ ▼
32
+ ┌──────────────────────────────────────┐
33
+ │ Layer 1: LogitGate ├──► [PASS: P >= 0.85, ~40–110ms]
34
+ └──────────────────┬───────────────────┤
35
+ │ Ambiguous └──► [FAIL: P <= 0.20, ~40–110ms]
36
+ │ (0.20 < P < 0.85)
37
+ ▼
38
+ ┌──────────────────────────────────────┐
39
+ │ Layer 2: JudgeGate ├──► [Actionable Diagnostic Report]
40
+ └──────────────────────────────────────┘
35
41
  ```
36
42
 
37
43
  1. **Layer 0 (`ASTGate` / `ContractGate`)**: Deterministic checks in **<0.1 ms** on CPU (Python AST syntax, JSON/Pydantic schemas, regex patterns, acyclic DAG topology). Failures reject immediately with zero LLM overhead.
@@ -281,7 +287,7 @@ If you use LogitGate in your research or production systems, please cite it as f
281
287
  author = {Jason Bradley},
282
288
  title = {LogitGate: Calibrated First-Token Logit Evaluation and Cascaded Routing for LLMs},
283
289
  year = {2026},
284
- version = {0.2.1},
290
+ version = {0.2.2},
285
291
  url = {https://github.com/jasonbdly/LogitGate},
286
292
  license = {Apache-2.0}
287
293
  }
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "logitgate"
7
- version = "0.2.1"
7
+ version = "0.2.2"
8
8
  description = "Fast, calibrated first-token logit evaluation and 3-layer cascaded routing for LLMs."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -59,7 +59,7 @@ from logitgate.models import (
59
59
  )
60
60
  from logitgate.snapshot import VerdictSnapshot
61
61
 
62
- __version__ = "0.2.1"
62
+ __version__ = "0.2.2"
63
63
 
64
64
  __all__ = [
65
65
  "KNOWN_MODEL_TEMPERATURES",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: logitgate
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary: Fast, calibrated first-token logit evaluation and 3-layer cascaded routing for LLMs.
5
5
  Author-email: Jason Bradley <jasonbdly@gmail.com>
6
6
  License: Apache-2.0
@@ -75,18 +75,24 @@ When evaluating whether an LLM output satisfies a rubric, traditional frameworks
75
75
 
76
76
  `LogitGate` uses a **3-layer cascaded pipeline**:
77
77
 
78
- ```mermaid
79
- flowchart TD
80
- artifact["Candidate Artifact"] --> L0["Layer 0: ASTGate / ContractGate"]
81
-
82
- L0 -->|"Syntax / Schema Failure"| F0["FAIL: 0 LLM calls (sub-0.1ms)"]
83
- L0 -->|"Passed"| L1["Layer 1: LogitGate"]
84
-
85
- L1 -->|"P >= pass_threshold (>= 0.85)"| P1["PASS: 0 CoT tokens (~40–110ms)"]
86
- L1 -->|"P <= fail_threshold (<= 0.20)"| F1["FAIL: 0 CoT tokens (~40–110ms)"]
87
- L1 -->|"0.20 < P < 0.85 (Ambiguous)"| L2["Layer 2: JudgeGate"]
88
-
89
- L2 -->|"Escalated Critique"| R2["Actionable Diagnostic Report"]
78
+ ```
79
+ Candidate Artifact
80
+ │
81
+ ▼
82
+ ┌──────────────────────────────────────┐
83
+ │ Layer 0: ASTGate / ContractGate ├──► [FAIL: syntax/schema, <0.1ms]
84
+ └──────────────────┬───────────────────┘
85
+ │ Passed
86
+ ▼
87
+ ┌──────────────────────────────────────┐
88
+ │ Layer 1: LogitGate ├──► [PASS: P >= 0.85, ~40–110ms]
89
+ └──────────────────┬───────────────────┤
90
+ │ Ambiguous └──► [FAIL: P <= 0.20, ~40–110ms]
91
+ │ (0.20 < P < 0.85)
92
+ ▼
93
+ ┌──────────────────────────────────────┐
94
+ │ Layer 2: JudgeGate ├──► [Actionable Diagnostic Report]
95
+ └──────────────────────────────────────┘
90
96
  ```
91
97
 
92
98
  1. **Layer 0 (`ASTGate` / `ContractGate`)**: Deterministic checks in **<0.1 ms** on CPU (Python AST syntax, JSON/Pydantic schemas, regex patterns, acyclic DAG topology). Failures reject immediately with zero LLM overhead.
@@ -336,7 +342,7 @@ If you use LogitGate in your research or production systems, please cite it as f
336
342
  author = {Jason Bradley},
337
343
  title = {LogitGate: Calibrated First-Token Logit Evaluation and Cascaded Routing for LLMs},
338
344
  year = {2026},
339
- version = {0.2.1},
345
+ version = {0.2.2},
340
346
  url = {https://github.com/jasonbdly/LogitGate},
341
347
  license = {Apache-2.0}
342
348
  }
File without changes
File without changes