continuous-intelligence-layer 0.2.0__tar.gz → 0.2.1__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.
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/PACKAGE_README.md +6 -6
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/PKG-INFO +7 -7
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/init.py +18 -10
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/pyproject.toml +1 -1
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/.gitignore +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/LICENSE +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/__init__.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/_core/__init__.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/_core/exporter.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/_core/graph_exporter.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/_core/span_data.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/_core/utils.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/anthropic/__init__.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/anthropic/init.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/crewai/__init__.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/crewai/init.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/langgraph/__init__.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/langgraph/init.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/openai/__init__.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/continuous_intelligence_layer/openai/init.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/graph_builder/__init__.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/graph_builder/builder.py +0 -0
- {continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/graph_builder/models.py +0 -0
{continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/PACKAGE_README.md
RENAMED
|
@@ -4,7 +4,7 @@ A zero-infrastructure, OpenTelemetry-based observability and validation
|
|
|
4
4
|
layer for agentic AI systems — LangGraph/LangChain, CrewAI, and direct
|
|
5
5
|
OpenAI/Anthropic SDK agents. Instrument your agent with one function call
|
|
6
6
|
and get automatic execution tracing, LLM-judged input/output/tool
|
|
7
|
-
evaluations, and root-cause analysis, sent to your
|
|
7
|
+
evaluations, and root-cause analysis, sent to your Continuous Intelligence Layer API.
|
|
8
8
|
|
|
9
9
|
## Install
|
|
10
10
|
|
|
@@ -27,9 +27,9 @@ framework/LLM-provider libraries are already importable in your process.
|
|
|
27
27
|
from continuous_intelligence_layer import init
|
|
28
28
|
|
|
29
29
|
ctx = init(
|
|
30
|
-
api_key="ao_...", # from your
|
|
30
|
+
api_key="ao_...", # from your Continuous Intelligence Layer project
|
|
31
31
|
service_name="my-agent", # groups traces into a project
|
|
32
|
-
base_url="https://your-
|
|
32
|
+
base_url="https://your-cia-api", # your Continuous Intelligence Layer API's base URL
|
|
33
33
|
evaluation_api_key="sk-...", # LLM key used to run evaluations/RCA
|
|
34
34
|
)
|
|
35
35
|
|
|
@@ -48,9 +48,9 @@ changes at all.
|
|
|
48
48
|
|
|
49
49
|
| Parameter | Default | Description |
|
|
50
50
|
|---|---|---|
|
|
51
|
-
| `api_key` | *required* |
|
|
51
|
+
| `api_key` | *required* | Continuous Intelligence Layer project API key |
|
|
52
52
|
| `service_name` | `"continuous-intelligence-layer"` | Project name traces are grouped under |
|
|
53
|
-
| `base_url` | `"http://localhost:8080"` | Your
|
|
53
|
+
| `base_url` | `"http://localhost:8080"` | Your Continuous Intelligence Layer API base URL |
|
|
54
54
|
| `evaluation_api_key` | `""` | LLM API key used to run automatic evaluations/RCA (required if `run_evaluations=True`) |
|
|
55
55
|
| `evaluation_provider` | `"openai"` | Provider for the evaluator/RCA LLM |
|
|
56
56
|
| `run_evaluations` | `True` | Run Input/Output/Tool evaluators + RCA automatically after each trace |
|
|
@@ -63,7 +63,7 @@ changes at all.
|
|
|
63
63
|
Every node gets free deterministic checks (status/latency/output-shape) by
|
|
64
64
|
default. To also opt specific nodes into LLM judgment, write a `CIA.yaml`
|
|
65
65
|
next to your agent's entry script — `init()` reads and sends it to your
|
|
66
|
-
|
|
66
|
+
Continuous Intelligence Layer project automatically:
|
|
67
67
|
|
|
68
68
|
```yaml
|
|
69
69
|
project: my-agent
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: continuous-intelligence-layer
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: Multi-Agent Intelligent Validation & RCA Framework
|
|
5
5
|
Project-URL: Homepage, https://github.com/Jugal-lachhwani/Multi_agent_intelligence_layer
|
|
6
6
|
Project-URL: Repository, https://github.com/Jugal-lachhwani/Multi_agent_intelligence_layer
|
|
@@ -43,7 +43,7 @@ A zero-infrastructure, OpenTelemetry-based observability and validation
|
|
|
43
43
|
layer for agentic AI systems — LangGraph/LangChain, CrewAI, and direct
|
|
44
44
|
OpenAI/Anthropic SDK agents. Instrument your agent with one function call
|
|
45
45
|
and get automatic execution tracing, LLM-judged input/output/tool
|
|
46
|
-
evaluations, and root-cause analysis, sent to your
|
|
46
|
+
evaluations, and root-cause analysis, sent to your Continuous Intelligence Layer API.
|
|
47
47
|
|
|
48
48
|
## Install
|
|
49
49
|
|
|
@@ -66,9 +66,9 @@ framework/LLM-provider libraries are already importable in your process.
|
|
|
66
66
|
from continuous_intelligence_layer import init
|
|
67
67
|
|
|
68
68
|
ctx = init(
|
|
69
|
-
api_key="ao_...", # from your
|
|
69
|
+
api_key="ao_...", # from your Continuous Intelligence Layer project
|
|
70
70
|
service_name="my-agent", # groups traces into a project
|
|
71
|
-
base_url="https://your-
|
|
71
|
+
base_url="https://your-cia-api", # your Continuous Intelligence Layer API's base URL
|
|
72
72
|
evaluation_api_key="sk-...", # LLM key used to run evaluations/RCA
|
|
73
73
|
)
|
|
74
74
|
|
|
@@ -87,9 +87,9 @@ changes at all.
|
|
|
87
87
|
|
|
88
88
|
| Parameter | Default | Description |
|
|
89
89
|
|---|---|---|
|
|
90
|
-
| `api_key` | *required* |
|
|
90
|
+
| `api_key` | *required* | Continuous Intelligence Layer project API key |
|
|
91
91
|
| `service_name` | `"continuous-intelligence-layer"` | Project name traces are grouped under |
|
|
92
|
-
| `base_url` | `"http://localhost:8080"` | Your
|
|
92
|
+
| `base_url` | `"http://localhost:8080"` | Your Continuous Intelligence Layer API base URL |
|
|
93
93
|
| `evaluation_api_key` | `""` | LLM API key used to run automatic evaluations/RCA (required if `run_evaluations=True`) |
|
|
94
94
|
| `evaluation_provider` | `"openai"` | Provider for the evaluator/RCA LLM |
|
|
95
95
|
| `run_evaluations` | `True` | Run Input/Output/Tool evaluators + RCA automatically after each trace |
|
|
@@ -102,7 +102,7 @@ changes at all.
|
|
|
102
102
|
Every node gets free deterministic checks (status/latency/output-shape) by
|
|
103
103
|
default. To also opt specific nodes into LLM judgment, write a `CIA.yaml`
|
|
104
104
|
next to your agent's entry script — `init()` reads and sends it to your
|
|
105
|
-
|
|
105
|
+
Continuous Intelligence Layer project automatically:
|
|
106
106
|
|
|
107
107
|
```yaml
|
|
108
108
|
project: my-agent
|
|
@@ -4,12 +4,14 @@ init.py
|
|
|
4
4
|
The single public entry point for every supported agent framework.
|
|
5
5
|
|
|
6
6
|
from continuous_intelligence_layer import init
|
|
7
|
-
init(api_key="..."
|
|
7
|
+
init(api_key="...")
|
|
8
8
|
|
|
9
9
|
That's all the user needs to write for LangGraph/LangChain, CrewAI, OpenAI,
|
|
10
10
|
and Anthropic agents — OpenLLMetry/Traceloop auto-instruments whatever
|
|
11
11
|
supported library is already importable in the process, no per-framework
|
|
12
|
-
subpackage or instrumentor selection required.
|
|
12
|
+
subpackage or instrumentor selection required. evaluation_api_key is
|
|
13
|
+
optional -- pass your own LLM key to use it for evaluations/RCA, or omit it
|
|
14
|
+
to use the project owner's default evaluation key.
|
|
13
15
|
|
|
14
16
|
How it works (internals)
|
|
15
17
|
------------------------
|
|
@@ -126,6 +128,10 @@ def init(
|
|
|
126
128
|
run_evaluations :
|
|
127
129
|
If True (the default), evaluations and RCA run automatically on the
|
|
128
130
|
backend right after the trace finishes ingesting.
|
|
131
|
+
evaluation_api_key :
|
|
132
|
+
Optional LLM API key (OpenAI, Anthropic, or Gemini) used to run
|
|
133
|
+
evaluations and RCA on your traces. Omit it to use the project
|
|
134
|
+
owner's default evaluation key instead of your own.
|
|
129
135
|
cia_config_path :
|
|
130
136
|
Path to this project's CIA.yaml-equivalent config file. Defaults to
|
|
131
137
|
looking for ``CIA.yaml``/``cia.yaml`` next to the current working
|
|
@@ -162,12 +168,10 @@ def init(
|
|
|
162
168
|
|
|
163
169
|
if not api_key:
|
|
164
170
|
raise ValueError("API Key is not provided. An API Key is required to initialize the SDK.")
|
|
165
|
-
if
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
"evaluations and RCA on your traces. We never use our own key for your work."
|
|
170
|
-
)
|
|
171
|
+
# evaluation_api_key is optional: if omitted, the server falls back to
|
|
172
|
+
# the project owner's own default evaluation key (see
|
|
173
|
+
# server/api/default_eval_config.py) so you can try evaluations/RCA
|
|
174
|
+
# without supplying your own LLM key.
|
|
171
175
|
|
|
172
176
|
# ── Step 1: Local CIA.yaml, if present ──────────────────────────────────
|
|
173
177
|
cia_config = _load_local_cia_config(cia_config_path)
|
|
@@ -179,8 +183,9 @@ def init(
|
|
|
179
183
|
"execution_id": execution_id,
|
|
180
184
|
"evaluation_provider": evaluation_provider,
|
|
181
185
|
"evaluation_model": evaluation_model,
|
|
182
|
-
"evaluation_api_key": evaluation_api_key,
|
|
183
186
|
}
|
|
187
|
+
if evaluation_api_key:
|
|
188
|
+
sync_payload["evaluation_api_key"] = evaluation_api_key
|
|
184
189
|
if cia_config is not None:
|
|
185
190
|
sync_payload["cia_config"] = cia_config
|
|
186
191
|
res = requests.post(
|
|
@@ -191,7 +196,10 @@ def init(
|
|
|
191
196
|
if res.status_code == 401:
|
|
192
197
|
raise ValueError("API Key is not valid.")
|
|
193
198
|
res.raise_for_status()
|
|
194
|
-
|
|
199
|
+
res_json = res.json()
|
|
200
|
+
project_id = res_json["id"]
|
|
201
|
+
for warning in res_json.get("config_warnings", []):
|
|
202
|
+
print(f"[continuous-intelligence-layer] ⚠️ {warning}")
|
|
195
203
|
except requests.exceptions.RequestException as e:
|
|
196
204
|
raise ValueError(f"Failed to verify API key with backend: {e}")
|
|
197
205
|
|
|
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
|
{continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/graph_builder/builder.py
RENAMED
|
File without changes
|
{continuous_intelligence_layer-0.2.0 → continuous_intelligence_layer-0.2.1}/graph_builder/models.py
RENAMED
|
File without changes
|