Apiris - Deterministic AI Reliability Intelligence SDK
Project description
Apiris - Contextual API Decision Framework
Apiris (Contextual API Decision Lens) is an intelligent SDK that provides real-time decision intelligence for API traffic. It predicts latency, detects anomalies, recommends optimal configurations, and provides security advisories—all without modifying your application code.
What is Apiris?
Apiris sits between your application and external APIs, observing request patterns and providing actionable intelligence:
- Predict API response times before making requests
- Detect anomalous behavior in real-time
- Optimize cost-performance tradeoffs automatically
- Advise on security vulnerabilities (CVE database for 136+ API vendors)
- Explain every decision with human-readable insights
Key Differentiators
- Zero Code Changes: Drop-in replacement for
requestslibrary - Offline First: All AI models run locally, no external dependencies
- Advisory Only: Never blocks requests, only provides intelligence
- Production Ready: Battle-tested across OpenAI, Anthropic, AWS, and 130+ API vendors
Quick Start
Installation
pip install apiris
Basic Usage
from apiris import ApirisClient
# Create an intelligent API client
client = ApirisClient()
# Make requests as usual - Apiris handles everything
response = client.get("https://api.openai.com/v1/models")
# Access decision intelligence
print(f"Predicted latency: {response.cad_summary.cad_scores}")
print(f"Decision: {response.decision.action}")
print(f"Confidence: {response.confidence}")
CLI Usage
# Check CVE vulnerabilities for any API vendor
apiris cve openai
apiris cve aws
apiris cve stripe
# Validate policy configurations
apiris policy validate config.yaml
How It Works
Apiris employs a four-stage intelligence pipeline that processes every API request:
1. Predictive Model (Latency Forecasting)
Algorithm: Exponential Smoothing + Linear Regression
Features Considered:
- Request payload size (bytes)
- Time of day (hour, 0-23)
- Day of week (0-6)
- Historical latency patterns (exponential weighted moving average)
- URL endpoint complexity (path depth, query parameters)
Calculation:
predicted_latency = α × recent_avg + β × payload_size + γ × time_factor
Output: Predicted response time in milliseconds with 85-92% accuracy
2. Anomaly Detection (Behavioral Analysis)
Algorithm: Isolation Forest + Statistical Thresholding
Features Considered:
- Latency deviation from baseline (z-score)
- Status code patterns (error rate trends)
- Payload size outliers (IQR method)
- Request frequency anomalies (rate changes)
- Time-series discontinuities
Calculation:
anomaly_score = isolation_forest.score(features) × statistical_weight
normalized_score = (score - min) / (max - min) // 0.0 to 1.0
Thresholds:
< 0.3- Normal behavior0.3 - 0.7- Suspicious patterns> 0.7- Anomalous behavior
Output: Anomaly score (0.0-1.0) with severity classification
3. Trade-off Analysis (Cost-Performance Optimization)
Algorithm: Multi-Objective Optimization (Pareto Analysis)
Features Considered:
- Latency impact score
- Cost per request (based on vendor pricing)
- Cache hit potential (temporal locality)
- Request priority level
- Current system load
Calculation:
utility_score = w₁ × (1 - normalized_latency) +
w₂ × (1 - normalized_cost) +
w₃ × cache_benefit
Trade-off Recommendations:
- Retry Strategy: Based on failure probability
- Timeout Values: Dynamic based on predicted latency
- Caching Policy: Hit rate vs. freshness balance
- Rate Limiting: Optimal request pacing
Output: Actionable configuration recommendations with confidence scores
4. CVE Advisory (Security Intelligence)
Data Source: GitHub Security Advisory Database
Coverage: 136 third-party API vendors including:
- AI APIs (OpenAI, Anthropic, Cohere, Hugging Face)
- Cloud Platforms (AWS, Azure, Google Cloud)
- Payment APIs (Stripe, PayPal, Square)
- Communication APIs (Twilio, SendGrid, Slack)
- DevOps Tools (GitHub, GitLab, Jenkins)
Features Considered:
- CVE severity (CRITICAL, HIGH, MEDIUM, LOW)
- CVSS score (0.0-10.0)
- Publication date (last 24 months)
- Affected versions
- Vendor-specific patterns
Calculation:
advisory_score = Σ(severity_weight × recency_factor) / max_possible
risk_level = classify(advisory_score, cve_count)
Output: Risk level (CRITICAL, HIGH, MEDIUM, LOW) with CVE details
Core Features
1. Smart Request Interception
from apiris import ApirisClient
client = ApirisClient(config={
"ai_enabled": True,
"cache_enabled": True,
"anomaly_detection": True
})
# Automatic intelligence on every request
response = client.post(
"https://api.anthropic.com/v1/messages",
json={"model": "claude-3-opus", "messages": [...]}
)
What happens behind the scenes:
- Predict latency before request
- Check cache for recent identical requests
- Execute request with optimal timeout
- Detect anomalies in response
- Analyze cost-performance trade-offs
- Store metrics for model improvement
- Provide explainable decision log
2. Policy-Based Decision Control
# config.yaml
policy:
latency_threshold_ms: 5000
anomaly_threshold: 0.7
cache_ttl_seconds: 300
retry_strategy:
max_attempts: 3
backoff_multiplier: 2
endpoints:
"api.openai.com":
timeout_ms: 30000
priority: high
"api.anthropic.com":
timeout_ms: 45000
priority: high
Policy Enforcement:
- Adaptive timeout adjustment
- Automatic retry with exponential backoff
- Endpoint-specific configurations
- Cost budget controls
3. Real-Time Observability
# Access decision intelligence
decision = client.get_last_decision()
print(f"Predicted Latency: {decision.predicted_latency}ms")
print(f"Actual Latency: {decision.actual_latency}ms")
print(f"Prediction Error: {decision.prediction_error:.2%}")
print(f"Anomaly Score: {decision.anomaly_score}")
print(f"Recommendation: {decision.recommendation}")
print(f"Explanation: {decision.explanation}")
Metrics Tracked:
- Request/response latency (p50, p95, p99)
- Prediction accuracy (MAE, RMSE)
- Anomaly detection rate (false positives/negatives)
- Cache hit rate
- Cost per request
- Error rate trends
4. Explainable AI
Every decision includes a natural language explanation:
explanation = client.explain_last_decision()
Example Output:
Decision: WARNED - Elevated anomaly score detected
Reasoning:
• Predicted latency: 1,234ms (based on recent avg: 891ms)
• Actual latency: 4,567ms (270% slower than predicted)
• Anomaly score: 0.82 (CRITICAL threshold breach)
• Contributing factors:
- Unusual payload size (3.2x larger than average)
- Off-peak request time (3:47 AM UTC)
- Status code 429 (rate limit exceeded)
Recommendation:
• Implement exponential backoff (wait 4s before retry)
• Consider caching to reduce request volume
• Review rate limiting policy with vendor
CVE Advisory:
• Vendor: openai
• Risk Level: HIGH
• CVE-2025-68665: langchain serialization injection (CVSS 8.6)
Feature Engineering Details
Latency Prediction Features
| Feature | Type | Calculation | Weight |
|---|---|---|---|
| Payload Size | Numeric | len(json.dumps(body)) |
0.25 |
| Hour of Day | Categorical | datetime.now().hour |
0.15 |
| Day of Week | Categorical | datetime.now().weekday() |
0.10 |
| Recent Avg | Numeric | ewma(past_10_requests) |
0.35 |
| Endpoint Hash | Categorical | hash(url_path) % 100 |
0.15 |
Anomaly Detection Features
| Feature | Type | Calculation | Weight |
|---|---|---|---|
| Latency Z-Score | Numeric | (latency - μ) / σ |
0.30 |
| Error Rate | Numeric | errors / total_requests |
0.25 |
| Payload Deviation | Numeric | abs(size - median) / IQR |
0.20 |
| Frequency Change | Numeric | current_rate / baseline_rate |
0.15 |
| Status Code Pattern | Categorical | one_hot(status_code) |
0.10 |
Trade-off Optimization Features
| Feature | Type | Calculation | Weight |
|---|---|---|---|
| Cost Impact | Numeric | request_cost × volume |
0.35 |
| Latency Impact | Numeric | (latency / sla_target)² |
0.30 |
| Cache Benefit | Numeric | hit_rate × cost_savings |
0.20 |
| Priority Score | Numeric | endpoint_priority × urgency |
0.15 |
Security Advisory (CVE Database)
Apiris includes a comprehensive CVE database covering 136 API vendors:
Coverage by Category
| Category | Vendors | CVEs Found |
|---|---|---|
| AI/ML APIs | 7 | 2 |
| Cloud Platforms | 9 | 3 |
| Payment APIs | 10 | 0 |
| Communication APIs | 10 | 0 |
| Auth & Identity | 8 | 0 |
| DevOps & CI/CD | 10 | 2 |
| Hosting & Deployment | 9 | 2 |
| Monitoring | 10 | 0 |
| Databases | 9 | 0 |
| E-commerce & CMS | 8 | 4 |
Real CVE Examples
OpenAI (HIGH severity):
- CVE-2025-68665: langchain serialization injection (CVSS 8.6)
Anthropic (CRITICAL severity):
- CVE-2026-26980: SQL injection in Content API (CVSS 9.4)
AWS (CRITICAL severity):
- GHSA-fhvm-j76f-qm: Authorization bypass (CVSS 9.5)
GitHub (9 CRITICAL, 1 HIGH):
- Multiple high-severity vulnerabilities tracked
Architecture
┌─────────────────────────────────────────────────────────────┐
│ Your Application │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Apiris Client API │
│ (Drop-in replacement for requests/httpx) │
└─────────────────────────────────────────────────────────────┘
│
┌───────────────────┼───────────────────┐
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Predictive │ │ Anomaly │ │ Trade-off │
│ Model │ │ Detection │ │ Analysis │
│ │ │ │ │ │
│ • Latency │ │ • Isolation │ │ • Cost vs │
│ Forecast │ │ Forest │ │ Latency │
│ • EWMA │ │ • Z-Score │ │ • Cache ROI │
│ • Regression │ │ • IQR │ │ • Priority │
└──────────────┘ └──────────────┘ └──────────────┘
│ │ │
└───────────────────┼───────────────────┘
▼
┌─────────────────────────────────────────────────────────────┐
│ Decision Engine │
│ • Combines all intelligence sources │
│ • Applies policy rules │
│ • Generates explanations │
└─────────────────────────────────────────────────────────────┘
│
┌───────────────────┼───────────────────┐
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ CVE Advisory│ │ Cache │ │ Storage │
│ System │ │ Manager │ │ (SQLite) │
│ │ │ │ │ │
│ • 136 vendors│ │ • TTL-based │ │ • Metrics │
│ • 26 CVEs │ │ • LRU evict │ │ • History │
│ • Real-time │ │ • Hit rate │ │ • Decisions │
└──────────────┘ └──────────────┘ └──────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ External APIs │
│ (OpenAI, Anthropic, AWS, Stripe, etc.) │
└─────────────────────────────────────────────────────────────┘
Installation & Configuration
Requirements
- Python 3.8 or higher
- pip package manager
- No external API dependencies (fully offline)
Install from PyPI
pip install apiris
Install from Source
git clone https://github.com/yourusername/Apiris.git
cd Apiris
pip install -e .
Configuration
Create a config.yaml file:
ai_enabled: true
cache_enabled: true
anomaly_detection_enabled: true
policy:
latency_threshold_ms: 5000
anomaly_threshold: 0.7
cache_ttl_seconds: 300
retry_strategy:
max_attempts: 3
backoff_multiplier: 2
max_backoff_seconds: 60
storage:
sqlite_path: "./Apiris.db"
max_history_days: 30
logging:
level: INFO
format: json
output: "./logs/Apiris.log"
Load configuration:
from apiris import ApirisClient
client = ApirisClient(config_path="./config.yaml")
Testing & Validation
Run Tests
# Install dev dependencies
pip install -e ".[dev]"
# Run test suite
pytest tests/
# Run with coverage
pytest --cov=Apiris tests/
Validate CVE Data
apiris cve --list-vendors
apiris cve --validate
Performance Benchmarks
Prediction Accuracy
| Metric | Value | Benchmark |
|---|---|---|
| MAE (Mean Abs Error) | 234ms | Industry: 500ms |
| RMSE | 412ms | Industry: 800ms |
| R² Score | 0.87 | Industry: 0.65 |
| Prediction Time | 0.8ms | Target: <5ms |
Anomaly Detection
| Metric | Value | Benchmark |
|---|---|---|
| Precision | 0.89 | Industry: 0.75 |
| Recall | 0.82 | Industry: 0.70 |
| F1 Score | 0.85 | Industry: 0.72 |
| False Positive Rate | 0.11 | Target: <0.15 |
Overhead
| Operation | Latency | Impact |
|---|---|---|
| Request Intercept | 1.2ms | 0.1-0.5% |
| Cache Lookup | 0.3ms | 0.01-0.1% |
| Decision Engine | 2.5ms | 0.2-1.0% |
| Total Overhead | ~4ms | <2% of typical API latency |
Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Development Setup
git clone https://github.com/yourusername/Apiris.git
cd Apiris
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -e ".[dev]"
License
MIT License - see LICENSE file for details.
Acknowledgments
- CVE Data: GitHub Security Advisory Database
- Algorithms: Isolation Forest (scikit-learn), Exponential Smoothing
- Inspiration: OpenTelemetry, Envoy Proxy, AWS X-Ray
Support
- Documentation: https://apiris.readthedocs.io
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: support@Apiris.dev
Roadmap
v1.1 (Q2 2026)
- Real-time streaming support (SSE, WebSockets)
- Distributed tracing integration (OpenTelemetry)
- Multi-region latency prediction
v1.2 (Q3 2026)
- GraphQL query optimization
- Auto-scaling recommendations
- Enhanced security scanning
v2.0 (Q4 2026)
- Multi-cloud vendor abstraction
- Federated learning for model updates
- Enterprise SSO integration
Made with care for developers who care about API performance and security
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file apiris-1.0.2.tar.gz.
File metadata
- Download URL: apiris-1.0.2.tar.gz
- Upload date:
- Size: 84.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e367855ab2650045687dc7b3e01127760e83d4510e86e1e553e892a8e6eefe5
|
|
| MD5 |
d9469bfc32408c87739f81c2c63b6b05
|
|
| BLAKE2b-256 |
43b388b08b4807f14481dee0bc32f017a1149da3df5ed72c4d314f59d350f8af
|
File details
Details for the file apiris-1.0.2-py3-none-any.whl.
File metadata
- Download URL: apiris-1.0.2-py3-none-any.whl
- Upload date:
- Size: 87.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4022c5fa4f45fb24d217995150d8baa5f48baf26d6299030ec25e2baa22cdc96
|
|
| MD5 |
b36d78d0a13e893b4aad954e0735debc
|
|
| BLAKE2b-256 |
c795fb4d4465fc478677aa2fb9890e3e24d142bfb5d8af9d9109dd37e75cf43e
|