agentreplay 0.1.2__py3-none-any.whl → 0.1.3__py3-none-any.whl

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.
@@ -1,33 +1,37 @@
1
- agentreplay/__init__.py,sha256=7KhEebDDeaS1ltm6UivGPvI4MlIc9v6C7dKPhZE6JPM,2366
1
+ agentreplay/__init__.py,sha256=5QRUMnltxcX40qzL_qMdfjsI5K2QZyO-3wnBFeH4dfU,5558
2
2
  agentreplay/batching.py,sha256=SKfN_g1R9_BJakK_r8i69nITa3MGPKUOGLlfJBfQ_6E,10630
3
3
  agentreplay/bootstrap.py,sha256=sPEvapnFxaIAwpf-K62fyahiFuyFKvPK0B6zoZu7ysk,7156
4
4
  agentreplay/circuit_breaker.py,sha256=B_gnDv7lqr3ER-sDS7hkp7fz9pIeaDU4MUOTQ6eXSWg,10567
5
5
  agentreplay/client.py,sha256=_PdfIiNmwdp_wAdoihmBuNrKJhyZjf-GYZzWJTsrYAY,56642
6
6
  agentreplay/config.py,sha256=Rg5DbfphxIWHVrEIJCsedytgfUNGK8B3baTmwArCxwc,7152
7
- agentreplay/context.py,sha256=qgON3d5jvh1U0qdAAACeexHUuBAu6Z1MMOkBPYyrFck,4933
7
+ agentreplay/context.py,sha256=32ziidDdKItaa2IPtHdZfnUqG00kIroYr65bpifu88M,8901
8
+ agentreplay/decorators.py,sha256=ivOHQVnPjaJf-vPUBUAcoL_ydfnZLGByr2tMmzeadTs,17410
8
9
  agentreplay/env_config.py,sha256=FMUj3QNMc0Rl3-FxxPcN1j6Iyopd2EtesI8RZGFlrfI,12054
9
10
  agentreplay/env_init.py,sha256=u_ljQEedEnt8tp42SBZldSW7sCznQ4YBwtzteXH8BEw,4590
10
11
  agentreplay/exceptions.py,sha256=bitPpI-VO34OtMU3eAIqDc1dSCHYSUwzxL3MsIE8NuI,2681
11
12
  agentreplay/genai.py,sha256=4BZz8v_nJyUm7D5_BzF0kUXYTPSY85x5hHUtCkiDbTQ,22383
12
13
  agentreplay/genai_conventions.py,sha256=dh_yvJhXI6Py4cWQ7T2Nf5GpaLd5v7lPuenhQnhvi6k,19624
13
- agentreplay/install_pth.py,sha256=NjtVCCmv4yO2594-dn1oeL1vyFyKL9hLAToxv6pPesk,4633
14
+ agentreplay/install_pth.py,sha256=p0ilw5m1zNfHUAiE-Mr6YIiAS36h-PszEacPXO4vWus,4762
14
15
  agentreplay/langchain_tracer.py,sha256=9L9rzrCBIEXnXqHNrc-r1ZNX4mDnWzgiUojDJFmH254,12349
15
16
  agentreplay/models.py,sha256=yoI23FYNM5yXFof3kobPLW1K3aWng70wugroM4vlrHk,4073
16
17
  agentreplay/otel_bridge.py,sha256=F9cuSlwAdDEEK8Nqtz9YTIG_eL53AshoU2KD8CIOgU4,9206
17
18
  agentreplay/patch.py,sha256=x_DuIyGavQ7NvmGWXdplDqGkwXaO7Dr0tVUOYfeiVF4,9419
19
+ agentreplay/privacy.py,sha256=D7dz4pU8HoY7ifCsxE1EqOzMMYjn1x3yt6ChKz_56bg,13447
18
20
  agentreplay/propagation.py,sha256=ubeh_jrOWTFmwGWVnoo8tJ3iPKvO0WGjuD65USeMpLg,10766
19
21
  agentreplay/py.typed,sha256=E1lmZ1r_LJQ_GR6uGaKL63Zd32ZqtqSwQDYYSZtKkRE,188
20
22
  agentreplay/retry.py,sha256=cUNzlOJaJYiQCL77ybsrtGg-SZGSfdaZm_fF9D4wOoY,5558
21
23
  agentreplay/sampling.py,sha256=kmnzMCyyld8_X-7xBZQTaTPqjj-Kkwc7NFwhdZZLQkw,9132
24
+ agentreplay/sdk.py,sha256=3eLxeW1UH8PzInnxaQyggcV66gnQdv4Uq06Pxb5_pWw,18806
22
25
  agentreplay/session.py,sha256=oS_z7ADS3ZmQUIF18KHhVZVewlSdKj5hL0wdPLq3xko,5647
23
26
  agentreplay/sitecustomize.py,sha256=dJfBnQktxvLT32K6wvKaolegabAIs7_sQNeS1C7am9o,3454
24
27
  agentreplay/span.py,sha256=yCX-mUjKHKTS98Do58WiD54joefEjiiGHTpEQWWboBc,9919
25
28
  agentreplay/unified.py,sha256=tNRKa22kzGPuJ7DFTmP4zdPIUD6VKRUCwK2GbtCj7Y8,14827
29
+ agentreplay/wrappers.py,sha256=ilQZF3AMjJ7bpvLKqHjvhyTz2xSrUUpICcKu4SQZAT0,19191
26
30
  agentreplay/auto_instrument/__init__.py,sha256=DBisDdlEadveofjf2zWhOGg_-kFCnTUePFT6i8l8jFI,8381
27
31
  agentreplay/auto_instrument/openai.py,sha256=VwWah80J3OpCSLW9th92zQ3yo-kngDHyRcE29GtXpes,17390
28
- agentreplay-0.1.2.dist-info/licenses/LICENSE,sha256=azMd5i70GEpRajD37zaPPg_Q1a4XC-FXc2EJJFHKBNU,10789
29
- agentreplay-0.1.2.dist-info/METADATA,sha256=L_qlu_3d7v30baz--YMawcyH3WOYLCDt8uayqOwgaKQ,10691
30
- agentreplay-0.1.2.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
31
- agentreplay-0.1.2.dist-info/entry_points.txt,sha256=otUD6ffRUlIf3mqoxrZUNdSEjuR0r6oKff-Z-c92CK8,69
32
- agentreplay-0.1.2.dist-info/top_level.txt,sha256=7Q1r7CGelbo4mAYhxlcUGSbWYEpBgA9tmCdUefDonDM,12
33
- agentreplay-0.1.2.dist-info/RECORD,,
32
+ agentreplay-0.1.3.dist-info/licenses/LICENSE,sha256=azMd5i70GEpRajD37zaPPg_Q1a4XC-FXc2EJJFHKBNU,10789
33
+ agentreplay-0.1.3.dist-info/METADATA,sha256=W8Jd27wjvqLwCAsGjhLGSAJyqUNYY-4wNZbNDwxWpRo,31532
34
+ agentreplay-0.1.3.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
35
+ agentreplay-0.1.3.dist-info/entry_points.txt,sha256=otUD6ffRUlIf3mqoxrZUNdSEjuR0r6oKff-Z-c92CK8,69
36
+ agentreplay-0.1.3.dist-info/top_level.txt,sha256=7Q1r7CGelbo4mAYhxlcUGSbWYEpBgA9tmCdUefDonDM,12
37
+ agentreplay-0.1.3.dist-info/RECORD,,
@@ -1,285 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: agentreplay
3
- Version: 0.1.2
4
- Summary: Agentreplay is a high-performance observability and tracing platform for LLM agents and AI apps, combining semantic search, specialized evals (RAGAS, G-Eval, toxicity), and Git-like versioning of prompts and responses.
5
- Author-email: Sushanth <sushanth@agentreplay.dev>
6
- License: Apache-2.0
7
- Project-URL: Homepage, https://agentreplay.dev
8
- Project-URL: Documentation, https://docs.agentreplay.dev
9
- Project-URL: Repository, https://github.com/agentreplay/agentreplay
10
- Project-URL: Issues, https://github.com/agentreplay/agentreplay/issues
11
- Project-URL: Changelog, https://github.com/agentreplay/agentreplay/blob/main/CHANGELOG.md
12
- Keywords: llm,agents,tracing,observability,ai,opentelemetry,ragas,evaluation,prompts,semantic-search
13
- Classifier: Development Status :: 4 - Beta
14
- Classifier: Intended Audience :: Developers
15
- Classifier: License :: OSI Approved :: Apache Software License
16
- Classifier: Programming Language :: Python :: 3
17
- Classifier: Programming Language :: Python :: 3.8
18
- Classifier: Programming Language :: Python :: 3.9
19
- Classifier: Programming Language :: Python :: 3.10
20
- Classifier: Programming Language :: Python :: 3.11
21
- Classifier: Programming Language :: Python :: 3.12
22
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
23
- Classifier: Topic :: System :: Monitoring
24
- Requires-Python: >=3.8
25
- Description-Content-Type: text/markdown
26
- License-File: LICENSE
27
- Requires-Dist: pydantic>=2.0.0
28
- Requires-Dist: opentelemetry-api>=1.20.0
29
- Requires-Dist: opentelemetry-sdk>=1.20.0
30
- Requires-Dist: opentelemetry-exporter-otlp-proto-grpc>=1.20.0
31
- Requires-Dist: opentelemetry-instrumentation>=0.41b0
32
- Requires-Dist: opentelemetry-instrumentation-openai>=0.48.0
33
- Requires-Dist: httpx>=0.24.0
34
- Provides-Extra: dev
35
- Requires-Dist: pytest>=7.0.0; extra == "dev"
36
- Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
37
- Requires-Dist: black>=23.0.0; extra == "dev"
38
- Requires-Dist: mypy>=1.0.0; extra == "dev"
39
- Requires-Dist: ruff>=0.1.0; extra == "dev"
40
- Provides-Extra: langchain
41
- Requires-Dist: langchain>=0.3.0; extra == "langchain"
42
- Requires-Dist: langchain-openai>=0.2.0; extra == "langchain"
43
- Provides-Extra: langgraph
44
- Requires-Dist: langgraph>=0.2.0; extra == "langgraph"
45
- Requires-Dist: langchain>=0.3.0; extra == "langgraph"
46
- Provides-Extra: llamaindex
47
- Requires-Dist: llama-index>=0.11.0; extra == "llamaindex"
48
- Requires-Dist: llama-index-core>=0.11.0; extra == "llamaindex"
49
- Provides-Extra: llamaindex-workflows
50
- Requires-Dist: llama-index>=0.11.0; extra == "llamaindex-workflows"
51
- Requires-Dist: llama-index-workflows>=0.2.0; extra == "llamaindex-workflows"
52
- Provides-Extra: openai-agents
53
- Requires-Dist: openai-agents>=0.5.0; extra == "openai-agents"
54
- Provides-Extra: autogen
55
- Requires-Dist: autogen-agentchat>=0.4.0; extra == "autogen"
56
- Requires-Dist: autogen-core>=0.4.0; extra == "autogen"
57
- Provides-Extra: semantic-kernel
58
- Requires-Dist: semantic-kernel>=1.0.0; extra == "semantic-kernel"
59
- Provides-Extra: crewai
60
- Requires-Dist: crewai>=0.1.0; extra == "crewai"
61
- Provides-Extra: smolagents
62
- Requires-Dist: smolagents>=1.0.0; extra == "smolagents"
63
- Provides-Extra: pydantic-ai
64
- Requires-Dist: pydantic-ai>=1.0.0; extra == "pydantic-ai"
65
- Provides-Extra: strands
66
- Requires-Dist: strands-sdk>=1.0.0; extra == "strands"
67
- Provides-Extra: google-adk
68
- Requires-Dist: google-adk>=1.0.0; extra == "google-adk"
69
- Provides-Extra: all-frameworks
70
- Requires-Dist: langchain>=0.3.0; extra == "all-frameworks"
71
- Requires-Dist: langchain-openai>=0.2.0; extra == "all-frameworks"
72
- Requires-Dist: langgraph>=0.2.0; extra == "all-frameworks"
73
- Requires-Dist: llama-index>=0.11.0; extra == "all-frameworks"
74
- Requires-Dist: openai-agents>=0.5.0; extra == "all-frameworks"
75
- Requires-Dist: autogen-agentchat>=0.4.0; extra == "all-frameworks"
76
- Requires-Dist: semantic-kernel>=1.0.0; extra == "all-frameworks"
77
- Requires-Dist: crewai>=0.1.0; extra == "all-frameworks"
78
- Requires-Dist: smolagents>=1.0.0; extra == "all-frameworks"
79
- Requires-Dist: pydantic-ai>=1.0.0; extra == "all-frameworks"
80
- Provides-Extra: all
81
- Requires-Dist: langchain>=0.3.0; extra == "all"
82
- Requires-Dist: langchain-openai>=0.2.0; extra == "all"
83
- Requires-Dist: langgraph>=0.2.0; extra == "all"
84
- Requires-Dist: llama-index>=0.11.0; extra == "all"
85
- Requires-Dist: openai-agents>=0.5.0; extra == "all"
86
- Requires-Dist: autogen-agentchat>=0.4.0; extra == "all"
87
- Requires-Dist: semantic-kernel>=1.0.0; extra == "all"
88
- Requires-Dist: crewai>=0.1.0; extra == "all"
89
- Requires-Dist: smolagents>=1.0.0; extra == "all"
90
- Requires-Dist: pydantic-ai>=1.0.0; extra == "all"
91
- Requires-Dist: pytest>=7.0.0; extra == "all"
92
- Requires-Dist: pytest-asyncio>=0.21.0; extra == "all"
93
- Dynamic: license-file
94
-
95
- # Agent Replay Python SDK
96
-
97
- Python SDK for Agent Replay - A purpose-built agent trace engine for LLM agents.
98
-
99
- ## Installation
100
-
101
- ```bash
102
- pip install agentreplay
103
- ```
104
-
105
- ### With Framework Integrations
106
-
107
- ```bash
108
- # Install specific framework integrations
109
- pip install agentreplay[langchain] # LangChain / LangGraph
110
- pip install agentreplay[llamaindex] # LlamaIndex
111
- pip install agentreplay[openai-agents] # OpenAI Agents SDK
112
- pip install agentreplay[autogen] # Microsoft AutoGen
113
- pip install agentreplay[semantic-kernel] # Semantic Kernel
114
- pip install agentreplay[crewai] # CrewAI
115
- pip install agentreplay[smolagents] # Hugging Face smolagents
116
- pip install agentreplay[pydantic-ai] # PydanticAI
117
- pip install agentreplay[strands] # AWS Strands Agents
118
- pip install agentreplay[google-adk] # Google ADK
119
-
120
- # Or install all framework integrations at once
121
- pip install agentreplay[all-frameworks]
122
-
123
- # For development (includes all frameworks + dev tools)
124
- pip install agentreplay[all]
125
- ```
126
-
127
- ## Quick Start
128
-
129
- ```python
130
- from agentreplay import AgentreplayClient, SpanType
131
-
132
- # Initialize client
133
- client = AgentreplayClient(
134
- url="http://localhost:47100",
135
- tenant_id=1,
136
- project_id=0
137
- )
138
-
139
- # Log a trace
140
- with client.trace(span_type=SpanType.ROOT) as root:
141
- # Planning step
142
- with root.child(SpanType.PLANNING) as planning:
143
- planning.set_token_count(50)
144
- planning.set_confidence(0.95)
145
-
146
- # Tool call
147
- with root.child(SpanType.TOOL_CALL) as tool:
148
- tool.set_token_count(20)
149
- tool.set_duration_ms(150)
150
-
151
- # Final response
152
- with root.child(SpanType.RESPONSE) as response:
153
- response.set_token_count(80)
154
- response.set_confidence(0.94)
155
-
156
- # Query traces
157
- edges = client.query_temporal_range(
158
- start_timestamp_us=start_time,
159
- end_timestamp_us=end_time
160
- )
161
-
162
- # Get causal relationships
163
- children = client.get_children(edge_id)
164
- ancestors = client.get_ancestors(edge_id)
165
- ```
166
-
167
- ## Framework Integrations
168
-
169
- Agent Replay provides seamless integrations for all major AI agent frameworks:
170
-
171
- ### Supported Frameworks
172
-
173
- | Framework | Install | Documentation |
174
- |-----------|---------|---------------|
175
- | **LangChain / LangGraph** | `pip install agentreplay[langchain]` | Chains, agents, workflows |
176
- | **LlamaIndex** | `pip install agentreplay[llamaindex]` | Query engines, agents, workflows |
177
- | **OpenAI Agents SDK** | `pip install agentreplay[openai-agents]` | Agent wrappers, sessions |
178
- | **Microsoft AutoGen** | `pip install agentreplay[autogen]` | Multi-agent conversations |
179
- | **Semantic Kernel** | `pip install agentreplay[semantic-kernel]` | Kernel functions, planners |
180
- | **CrewAI** | `pip install agentreplay[crewai]` | Crews, tasks, collaboration |
181
- | **Hugging Face smolagents** | `pip install agentreplay[smolagents]` | Code agents, tool calling |
182
- | **PydanticAI** | `pip install agentreplay[pydantic-ai]` | Type-safe agents |
183
- | **Strands Agents** | `pip install agentreplay[strands]` | AWS agents, multi-provider |
184
- | **Google ADK** | `pip install agentreplay[google-adk]` | Gemini agents |
185
-
186
- ### Quick Integration Examples
187
-
188
- #### LangChain
189
-
190
- ```python
191
- from agentreplay.integrations.langchain import Agent ReplayCallbackHandler
192
- from langchain.chains import LLMChain
193
-
194
- callback = Agent ReplayCallbackHandler(
195
- url="http://localhost:8080",
196
- tenant_id=1
197
- )
198
-
199
- chain = LLMChain(llm=llm, callbacks=[callback])
200
- result = chain.run("What is the weather?")
201
- ```
202
-
203
- #### LlamaIndex
204
-
205
- ```python
206
- from agentreplay.integrations.llamaindex import create_callback_manager
207
- from llama_index.core import VectorStoreIndex
208
-
209
- callback_manager = create_callback_manager(
210
- agentreplay_url="http://localhost:8080",
211
- tenant_id=1
212
- )
213
-
214
- index = VectorStoreIndex.from_documents(
215
- documents,
216
- callback_manager=callback_manager
217
- )
218
- ```
219
-
220
- #### OpenAI Agents SDK
221
-
222
- ```python
223
- from agentreplay.integrations.openai_agents import Agent ReplayAgentWrapper
224
- from openai_agents import Agent
225
-
226
- agent = Agent(name="assistant", instructions="You are helpful")
227
- wrapped = Agent ReplayAgentWrapper(
228
- agent=agent,
229
- agentreplay_url="http://localhost:8080",
230
- tenant_id=1
231
- )
232
-
233
- session = wrapped.create_session()
234
- response = wrapped.run(session, "Hello!")
235
- ```
236
-
237
- #### PydanticAI
238
-
239
- ```python
240
- from agentreplay.integrations.pydantic_ai import wrap_pydantic_ai_agent
241
- from pydantic_ai import Agent
242
-
243
- agent = Agent("openai:gpt-4")
244
- agent = wrap_pydantic_ai_agent(
245
- agent,
246
- agentreplay_url="http://localhost:8080",
247
- tenant_id=1
248
- )
249
-
250
- result = agent.run_sync("Process this request")
251
- ```
252
-
253
- **📚 For detailed integration guides and examples, see [INTEGRATIONS.md](INTEGRATIONS.md)**
254
-
255
- ## Features
256
-
257
- ### Core SDK
258
- - **Low-level API**: Direct control over edge creation and querying
259
- - **Context Managers**: Pythonic span tracking with automatic parent-child relationships
260
- - **Async Support**: Full async/await support for high-performance applications
261
- - **Type Safety**: Full type hints and Pydantic models
262
- - **Causal Queries**: Navigate agent reasoning graphs
263
- - **Semantic Search**: Find similar traces using vector embeddings
264
-
265
- ### Framework Integrations (New in v2.0!)
266
- - **10+ Framework Support**: LangChain, LlamaIndex, OpenAI Agents, AutoGen, and more
267
- - **Automatic Tracking**: LLM calls, token usage, costs, and execution timing
268
- - **OpenTelemetry GenAI**: Full semantic conventions support
269
- - **Production Ready**: Async/sync, error resilience, connection pooling
270
- - **Zero Code Changes**: Wrap existing agents with minimal modifications
271
-
272
- ## Documentation
273
-
274
- - **Quick Start**: See above and [examples/](examples/)
275
- - **Framework Integrations**: [INTEGRATIONS.md](INTEGRATIONS.md)
276
- - **Full API Documentation**: https://docs.agentreplay.dev/python-sdk
277
- - **Examples**:
278
- - [LangChain/LangGraph](examples/integrations/langchain_langgraph_example.py)
279
- - [LlamaIndex](examples/integrations/llamaindex_example.py)
280
- - [OpenAI Agents](examples/integrations/openai_agents_example.py)
281
- - [All Frameworks Quickstart](examples/integrations/all_frameworks_quickstart.py)
282
-
283
- ## License
284
-
285
- Apache License 2.0 - Copyright 2025 Sushanth (https://github.com/sushanthpy)