kalibr 1.2.10__tar.gz → 1.3.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.
Files changed (66) hide show
  1. {kalibr-1.2.10 → kalibr-1.3.0}/PKG-INFO +11 -2
  2. {kalibr-1.2.10 → kalibr-1.3.0}/README.md +10 -1
  3. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/router.py +19 -0
  4. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr.egg-info/PKG-INFO +11 -2
  5. {kalibr-1.2.10 → kalibr-1.3.0}/pyproject.toml +1 -1
  6. {kalibr-1.2.10 → kalibr-1.3.0}/LICENSE +0 -0
  7. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/__init__.py +0 -0
  8. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/__main__.py +0 -0
  9. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/capsule_middleware.py +0 -0
  10. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/cli/__init__.py +0 -0
  11. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/cli/capsule_cmd.py +0 -0
  12. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/cli/deploy_cmd.py +0 -0
  13. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/cli/main.py +0 -0
  14. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/cli/run.py +0 -0
  15. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/cli/serve.py +0 -0
  16. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/client.py +0 -0
  17. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/collector.py +0 -0
  18. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/context.py +0 -0
  19. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/cost_adapter.py +0 -0
  20. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/decorators.py +0 -0
  21. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/instrumentation/__init__.py +0 -0
  22. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/instrumentation/anthropic_instr.py +0 -0
  23. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/instrumentation/base.py +0 -0
  24. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/instrumentation/google_instr.py +0 -0
  25. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/instrumentation/openai_instr.py +0 -0
  26. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/instrumentation/registry.py +0 -0
  27. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/intelligence.py +0 -0
  28. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/kalibr.py +0 -0
  29. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/kalibr_app.py +0 -0
  30. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/middleware/__init__.py +0 -0
  31. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/middleware/auto_tracer.py +0 -0
  32. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/models.py +0 -0
  33. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/pricing.py +0 -0
  34. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/redaction.py +0 -0
  35. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/schemas.py +0 -0
  36. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/simple_tracer.py +0 -0
  37. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/tokens.py +0 -0
  38. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/trace_capsule.py +0 -0
  39. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/trace_models.py +0 -0
  40. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/tracer.py +0 -0
  41. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/types.py +0 -0
  42. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr/utils.py +0 -0
  43. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr.egg-info/SOURCES.txt +0 -0
  44. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr.egg-info/dependency_links.txt +0 -0
  45. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr.egg-info/entry_points.txt +0 -0
  46. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr.egg-info/requires.txt +0 -0
  47. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr.egg-info/top_level.txt +0 -0
  48. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_crewai/__init__.py +0 -0
  49. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_crewai/callbacks.py +0 -0
  50. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_crewai/instrumentor.py +0 -0
  51. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_langchain/__init__.py +0 -0
  52. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_langchain/async_callback.py +0 -0
  53. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_langchain/callback.py +0 -0
  54. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_langchain/chat_model.py +0 -0
  55. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_openai_agents/__init__.py +0 -0
  56. {kalibr-1.2.10 → kalibr-1.3.0}/kalibr_openai_agents/processor.py +0 -0
  57. {kalibr-1.2.10 → kalibr-1.3.0}/setup.cfg +0 -0
  58. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_capsule_builder.py +0 -0
  59. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_cost_adapter.py +0 -0
  60. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_http_client_leak.py +0 -0
  61. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_instrumentation.py +0 -0
  62. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_intelligence.py +0 -0
  63. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_langchain_routing.py +0 -0
  64. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_pricing.py +0 -0
  65. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_router.py +0 -0
  66. {kalibr-1.2.10 → kalibr-1.3.0}/tests/test_thread_safety.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: kalibr
3
- Version: 1.2.10
3
+ Version: 1.3.0
4
4
  Summary: Adaptive routing for AI agents. Learns which models work best and routes automatically.
5
5
  Author-email: Kalibr Team <support@kalibr.systems>
6
6
  License: Apache-2.0
@@ -78,6 +78,15 @@ Adaptive routing for AI agents. Kalibr learns which models work best for your ta
78
78
  pip install kalibr
79
79
  ```
80
80
 
81
+ ## Setup
82
+
83
+ Get your credentials from [dashboard.kalibr.systems/settings](https://dashboard.kalibr.systems/settings), then:
84
+ ```bash
85
+ export KALIBR_API_KEY=your-api-key
86
+ export KALIBR_TENANT_ID=your-tenant-id
87
+ export OPENAI_API_KEY=sk-... # or ANTHROPIC_API_KEY for Claude models
88
+ ```
89
+
81
90
  ## Quick Start
82
91
  ```python
83
92
  from kalibr import Router
@@ -282,6 +291,6 @@ Apache-2.0
282
291
 
283
292
  ## Links
284
293
 
285
- - [Docs](https://kalibr.dev/docs)
294
+ - [Docs](https://kalibr.systems/docs)
286
295
  - [Dashboard](https://dashboard.kalibr.systems)
287
296
  - [GitHub](https://github.com/kalibr-ai/kalibr-sdk-python)
@@ -11,6 +11,15 @@ Adaptive routing for AI agents. Kalibr learns which models work best for your ta
11
11
  pip install kalibr
12
12
  ```
13
13
 
14
+ ## Setup
15
+
16
+ Get your credentials from [dashboard.kalibr.systems/settings](https://dashboard.kalibr.systems/settings), then:
17
+ ```bash
18
+ export KALIBR_API_KEY=your-api-key
19
+ export KALIBR_TENANT_ID=your-tenant-id
20
+ export OPENAI_API_KEY=sk-... # or ANTHROPIC_API_KEY for Claude models
21
+ ```
22
+
14
23
  ## Quick Start
15
24
  ```python
16
25
  from kalibr import Router
@@ -215,6 +224,6 @@ Apache-2.0
215
224
 
216
225
  ## Links
217
226
 
218
- - [Docs](https://kalibr.dev/docs)
227
+ - [Docs](https://kalibr.systems/docs)
219
228
  - [Dashboard](https://dashboard.kalibr.systems)
220
229
  - [GitHub](https://github.com/kalibr-ai/kalibr-sdk-python)
@@ -112,6 +112,25 @@ class Router:
112
112
  auto_register: If True, register paths on init
113
113
  """
114
114
  self.goal = goal
115
+
116
+ # Validate required environment variables
117
+ api_key = os.environ.get('KALIBR_API_KEY')
118
+ tenant_id = os.environ.get('KALIBR_TENANT_ID')
119
+
120
+ if not api_key:
121
+ raise ValueError(
122
+ "KALIBR_API_KEY environment variable not set.\n"
123
+ "Get your API key from: https://dashboard.kalibr.systems/settings\n"
124
+ "Then run: export KALIBR_API_KEY=your-key-here"
125
+ )
126
+
127
+ if not tenant_id:
128
+ raise ValueError(
129
+ "KALIBR_TENANT_ID environment variable not set.\n"
130
+ "Find your Tenant ID at: https://dashboard.kalibr.systems/settings\n"
131
+ "Then run: export KALIBR_TENANT_ID=your-tenant-id"
132
+ )
133
+
115
134
  self.success_when = success_when
116
135
  self.exploration_rate = exploration_rate
117
136
  self._last_trace_id: Optional[str] = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: kalibr
3
- Version: 1.2.10
3
+ Version: 1.3.0
4
4
  Summary: Adaptive routing for AI agents. Learns which models work best and routes automatically.
5
5
  Author-email: Kalibr Team <support@kalibr.systems>
6
6
  License: Apache-2.0
@@ -78,6 +78,15 @@ Adaptive routing for AI agents. Kalibr learns which models work best for your ta
78
78
  pip install kalibr
79
79
  ```
80
80
 
81
+ ## Setup
82
+
83
+ Get your credentials from [dashboard.kalibr.systems/settings](https://dashboard.kalibr.systems/settings), then:
84
+ ```bash
85
+ export KALIBR_API_KEY=your-api-key
86
+ export KALIBR_TENANT_ID=your-tenant-id
87
+ export OPENAI_API_KEY=sk-... # or ANTHROPIC_API_KEY for Claude models
88
+ ```
89
+
81
90
  ## Quick Start
82
91
  ```python
83
92
  from kalibr import Router
@@ -282,6 +291,6 @@ Apache-2.0
282
291
 
283
292
  ## Links
284
293
 
285
- - [Docs](https://kalibr.dev/docs)
294
+ - [Docs](https://kalibr.systems/docs)
286
295
  - [Dashboard](https://dashboard.kalibr.systems)
287
296
  - [GitHub](https://github.com/kalibr-ai/kalibr-sdk-python)
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "kalibr"
7
- version = "1.2.10"
7
+ version = "1.3.0"
8
8
  description = "Adaptive routing for AI agents. Learns which models work best and routes automatically."
9
9
  authors = [{name = "Kalibr Team", email = "support@kalibr.systems"}]
10
10
  readme = "README.md"
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