gateforge-sdk 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.
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/PKG-INFO +2 -2
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/__init__.py +15 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/pyproject.toml +2 -2
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/.env.example +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/.gitignore +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/.pypirc.example +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/INSTALL.md +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/LICENSE +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/MANIFEST.in +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/PUBLISHING.md +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/PUBLISH_NOW.md +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/README.md +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/ab/__init__.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/ab/engine.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/client.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/config.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/context.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/features/__init__.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/guardrails/__init__.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/guardrails/engine.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/metrics.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/options.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/pii.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/pricing.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/prompt.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/providers/__init__.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/providers/anthropic.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/providers/gemini.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/providers/openai.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/response.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/tracing.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/wrappers/__init__.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/wrappers/anthropic.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/wrappers/gemini.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/gateforge/wrappers/openai.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/tests/__init__.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/tests/test_metrics.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/tests/test_pii.py +0 -0
- {gateforge_sdk-0.2.1 → gateforge_sdk-0.2.2}/tests/test_providers.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gateforge-sdk
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: Privacy-first LLMOps SDK — Automatic PII masking, cost tracking, and prompt management for LLM applications
|
|
5
5
|
Project-URL: Homepage, https://gateforge.dev
|
|
6
6
|
Project-URL: Documentation, https://gateforge.dev/docs
|
|
@@ -22,7 +22,7 @@ Classifier: Topic :: Security
|
|
|
22
22
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
23
23
|
Requires-Python: >=3.10
|
|
24
24
|
Requires-Dist: httpx>=0.27.0
|
|
25
|
-
Requires-Dist: pii-firewall[langdetect,presidio]
|
|
25
|
+
Requires-Dist: pii-firewall[langdetect,presidio,transformers]
|
|
26
26
|
Provides-Extra: all
|
|
27
27
|
Requires-Dist: anthropic>=0.40.0; extra == 'all'
|
|
28
28
|
Requires-Dist: google-genai>=1.0.0; extra == 'all'
|
|
@@ -2,6 +2,21 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
__version__ = "0.2.0"
|
|
4
4
|
|
|
5
|
+
# Auto-install spaCy model if missing (required for PII detection)
|
|
6
|
+
def _ensure_spacy_model():
|
|
7
|
+
"""Ensure en_core_web_sm is available. Download if missing."""
|
|
8
|
+
try:
|
|
9
|
+
import spacy
|
|
10
|
+
spacy.load("en_core_web_sm")
|
|
11
|
+
except OSError:
|
|
12
|
+
import subprocess
|
|
13
|
+
import sys
|
|
14
|
+
print("[gateforge] Downloading spaCy model 'en_core_web_sm' (required for PII detection)...")
|
|
15
|
+
subprocess.check_call([sys.executable, "-m", "spacy", "download", "en_core_web_sm"])
|
|
16
|
+
print("[gateforge] Model installed successfully.")
|
|
17
|
+
|
|
18
|
+
_ensure_spacy_model()
|
|
19
|
+
|
|
5
20
|
from gateforge.client import GatforgeClient
|
|
6
21
|
from gateforge.context import trace
|
|
7
22
|
from gateforge.features import FeatureFlags
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "gateforge-sdk"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.2"
|
|
8
8
|
description = "Privacy-first LLMOps SDK — Automatic PII masking, cost tracking, and prompt management for LLM applications"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { text = "MIT" }
|
|
@@ -25,7 +25,7 @@ classifiers = [
|
|
|
25
25
|
"Topic :: Security",
|
|
26
26
|
]
|
|
27
27
|
dependencies = [
|
|
28
|
-
"pii-firewall[presidio,langdetect]",
|
|
28
|
+
"pii-firewall[presidio,langdetect,transformers]",
|
|
29
29
|
"httpx>=0.27.0",
|
|
30
30
|
]
|
|
31
31
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|