hivetrace 1.3.10__py3-none-any.whl → 1.3.12__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.
@@ -100,14 +100,16 @@ class AsyncHivetraceSDK(BaseHivetraceSDK):
100
100
  application_id, message, additional_parameters
101
101
  )
102
102
  process_response = await self._send_request("/process_request/", payload)
103
- if files:
104
- analysis_id = self._extract_analysis_id(process_response)
105
- if analysis_id:
106
- await self._send_files(
107
- f"/user_prompt_analysis/{analysis_id}/attach_files", files
108
- )
103
+
109
104
  analysis_id = self._extract_analysis_id(process_response)
110
105
  if analysis_id:
106
+ if files:
107
+ files_response = await self._send_files(
108
+ f"/user_prompt_analysis/{analysis_id}/attach_files", files
109
+ )
110
+ if isinstance(files_response, dict) and not files_response.get("success", True):
111
+ return files_response
112
+
111
113
  blocked = await self._get_blocking_status(
112
114
  f"/user_prompt_analysis/{analysis_id}/check_blocking"
113
115
  )
@@ -125,14 +127,16 @@ class AsyncHivetraceSDK(BaseHivetraceSDK):
125
127
  application_id, message, additional_parameters
126
128
  )
127
129
  process_response = await self._send_request("/process_response/", payload)
128
- if files:
129
- analysis_id = self._extract_analysis_id(process_response)
130
- if analysis_id:
131
- await self._send_files(
132
- f"/llm_response_analysis/{analysis_id}/attach_files", files
133
- )
130
+
134
131
  analysis_id = self._extract_analysis_id(process_response)
135
132
  if analysis_id:
133
+ if files:
134
+ files_response = await self._send_files(
135
+ f"/llm_response_analysis/{analysis_id}/attach_files", files
136
+ )
137
+ if isinstance(files_response, dict) and not files_response.get("success", True):
138
+ return files_response
139
+
136
140
  blocked = await self._get_blocking_status(
137
141
  f"/llm_response_analysis/{analysis_id}/check_blocking"
138
142
  )
hivetrace/client/base.py CHANGED
@@ -125,9 +125,9 @@ class BaseHivetraceSDK(ABC):
125
125
  """Extracts analysis id from API response if present."""
126
126
  try:
127
127
  if isinstance(response, dict):
128
- monitoring_result = response.get("monitoring_result", {})
129
- analysis_id = monitoring_result.get("id")
130
- return str(analysis_id) if analysis_id is not None else None
128
+ request_id = response.get("request_id")
129
+ if request_id:
130
+ return str(request_id)
131
131
  except Exception:
132
132
  return None
133
133
  return None
@@ -115,14 +115,16 @@ class SyncHivetraceSDK(BaseHivetraceSDK):
115
115
  application_id, message, additional_parameters
116
116
  )
117
117
  process_response = self._send_request("/process_request/", payload)
118
- if files:
119
- analysis_id = self._extract_analysis_id(process_response)
120
- if analysis_id:
121
- self._send_files(
122
- f"/user_prompt_analysis/{analysis_id}/attach_files", files
123
- )
118
+
124
119
  analysis_id = self._extract_analysis_id(process_response)
125
120
  if analysis_id:
121
+ if files:
122
+ files_response = self._send_files(
123
+ f"/user_prompt_analysis/{analysis_id}/attach_files", files
124
+ )
125
+ if isinstance(files_response, dict) and not files_response.get("success", True):
126
+ return files_response
127
+
126
128
  blocked = self._get_blocking_status(
127
129
  f"/user_prompt_analysis/{analysis_id}/check_blocking"
128
130
  )
@@ -140,14 +142,16 @@ class SyncHivetraceSDK(BaseHivetraceSDK):
140
142
  application_id, message, additional_parameters
141
143
  )
142
144
  process_response = self._send_request("/process_response/", payload)
143
- if files:
144
- analysis_id = self._extract_analysis_id(process_response)
145
- if analysis_id:
146
- self._send_files(
147
- f"/llm_response_analysis/{analysis_id}/attach_files", files
148
- )
145
+
149
146
  analysis_id = self._extract_analysis_id(process_response)
150
147
  if analysis_id:
148
+ if files:
149
+ files_response = self._send_files(
150
+ f"/llm_response_analysis/{analysis_id}/attach_files", files
151
+ )
152
+ if isinstance(files_response, dict) and not files_response.get("success", True):
153
+ return files_response
154
+
151
155
  blocked = self._get_blocking_status(
152
156
  f"/llm_response_analysis/{analysis_id}/check_blocking"
153
157
  )
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: hivetrace
3
- Version: 1.3.10
3
+ Version: 1.3.12
4
4
  Summary: Hivetrace SDK for monitoring LLM applications
5
5
  Home-page: http://hivetrace.ai
6
6
  Author: Raft
@@ -10,32 +10,44 @@ Classifier: License :: OSI Approved :: Apache Software License
10
10
  Requires-Python: >=3.8
11
11
  Description-Content-Type: text/markdown
12
12
  License-File: LICENSE
13
- Requires-Dist: httpx >=0.28.1
14
- Requires-Dist: pydantic >=2.11.7
15
- Requires-Dist: python-dotenv >=1.0.1
16
- Provides-Extra: all
17
- Requires-Dist: crewai >=0.95.0 ; extra == 'all'
18
- Requires-Dist: httpx >=0.28.1 ; extra == 'all'
19
- Requires-Dist: langchain-community ==0.3.18 ; extra == 'all'
20
- Requires-Dist: langchain-openai ==0.2.5 ; extra == 'all'
21
- Requires-Dist: langchain ==0.3.19 ; extra == 'all'
22
- Requires-Dist: langchain-experimental ==0.3.4 ; extra == 'all'
23
- Requires-Dist: openai-agents >=0.1.0 ; extra == 'all'
24
- Requires-Dist: pydantic >=2.11.7 ; extra == 'all'
25
- Requires-Dist: python-dotenv >=1.0.1 ; extra == 'all'
13
+ Requires-Dist: httpx>=0.28.1
14
+ Requires-Dist: python-dotenv>=1.0.1
15
+ Requires-Dist: pydantic>=2.11.7
26
16
  Provides-Extra: base
27
- Requires-Dist: httpx >=0.28.1 ; extra == 'base'
28
- Requires-Dist: pydantic >=2.11.7 ; extra == 'base'
29
- Requires-Dist: python-dotenv >=1.0.1 ; extra == 'base'
30
- Provides-Extra: crewai
31
- Requires-Dist: crewai >=0.95.0 ; extra == 'crewai'
17
+ Requires-Dist: httpx>=0.28.1; extra == "base"
18
+ Requires-Dist: python-dotenv>=1.0.1; extra == "base"
19
+ Requires-Dist: pydantic>=2.11.7; extra == "base"
32
20
  Provides-Extra: langchain
33
- Requires-Dist: langchain-community ==0.3.18 ; extra == 'langchain'
34
- Requires-Dist: langchain-openai ==0.2.5 ; extra == 'langchain'
35
- Requires-Dist: langchain ==0.3.19 ; extra == 'langchain'
36
- Requires-Dist: langchain-experimental ==0.3.4 ; extra == 'langchain'
37
- Provides-Extra: openai_agents
38
- Requires-Dist: openai-agents >=0.1.0 ; extra == 'openai_agents'
21
+ Requires-Dist: langchain-openai==0.2.5; extra == "langchain"
22
+ Requires-Dist: langchain-community==0.3.18; extra == "langchain"
23
+ Requires-Dist: langchain==0.3.19; extra == "langchain"
24
+ Requires-Dist: langchain_experimental==0.3.4; extra == "langchain"
25
+ Provides-Extra: crewai
26
+ Requires-Dist: crewai>=0.95.0; extra == "crewai"
27
+ Provides-Extra: openai-agents
28
+ Requires-Dist: openai-agents>=0.1.0; extra == "openai-agents"
29
+ Provides-Extra: all
30
+ Requires-Dist: httpx>=0.28.1; extra == "all"
31
+ Requires-Dist: python-dotenv>=1.0.1; extra == "all"
32
+ Requires-Dist: pydantic>=2.11.7; extra == "all"
33
+ Requires-Dist: langchain-openai==0.2.5; extra == "all"
34
+ Requires-Dist: langchain-community==0.3.18; extra == "all"
35
+ Requires-Dist: langchain==0.3.19; extra == "all"
36
+ Requires-Dist: langchain_experimental==0.3.4; extra == "all"
37
+ Requires-Dist: crewai>=0.95.0; extra == "all"
38
+ Requires-Dist: openai-agents>=0.1.0; extra == "all"
39
+ Dynamic: author
40
+ Dynamic: author-email
41
+ Dynamic: classifier
42
+ Dynamic: description
43
+ Dynamic: description-content-type
44
+ Dynamic: home-page
45
+ Dynamic: keywords
46
+ Dynamic: license-file
47
+ Dynamic: provides-extra
48
+ Dynamic: requires-dist
49
+ Dynamic: requires-python
50
+ Dynamic: summary
39
51
 
40
52
  # Hivetrace SDK
41
53
 
@@ -21,9 +21,9 @@ hivetrace/adapters/openai_agents/tracing.py,sha256=aOmJV2PT77x0bKZHXy46GRsExFmGw
21
21
  hivetrace/adapters/utils/__init__.py,sha256=AkdJzecQlhT3hHFOIO5zWbAIEXvbgH_5vmzlPViedt0,142
22
22
  hivetrace/adapters/utils/logging.py,sha256=UxCMFvlpP6vJfzRwMYhhJIi7RTWdgVK2sWtCeEB67_w,1126
23
23
  hivetrace/client/__init__.py,sha256=Daz_KxOMzGSBKUpv48tTooGZrmzk0wzDq8QUTHuBZBU,313
24
- hivetrace/client/async_client.py,sha256=9uvimxP-Q7vY-bbZW5RiTEYQd8_uP3wyqR3s92kPGUs,6518
25
- hivetrace/client/base.py,sha256=JSVL60S7jaGNCovkTP9MPZGzSPPe7FcgMJne0QKCs1U,7960
26
- hivetrace/client/sync_client.py,sha256=J3nKDVfVtfYL3NjlMtj5l7EpZKXupJnI1bpHy-tWgyE,6347
24
+ hivetrace/client/async_client.py,sha256=dHWqrE_8kNd1A3WBeKVV6xjVyasaSJBe9807WbZLj6w,6702
25
+ hivetrace/client/base.py,sha256=7Ix53BHNr6MVfA5_ox4RhSKOzuETmZjuRqEE4JRfZVk,7881
26
+ hivetrace/client/sync_client.py,sha256=cfDqvAERDIXeCl4JaOubmV_-VN19ZCkoI7TP-4glBtQ,6531
27
27
  hivetrace/errors/__init__.py,sha256=3Sqr2Pz4NwE_u8CgTzVbzoNj-B52cwzdsHINnpWO3Yg,1006
28
28
  hivetrace/errors/api.py,sha256=ThIoH8akPWuSqF6bqnex5f25p8ZBnRFsz2IrcivAHgc,1029
29
29
  hivetrace/errors/base.py,sha256=_2o8TbvlPzJEzKGl4T3u1XbTAJgP5fO19T6XQSfH3pI,686
@@ -38,8 +38,8 @@ hivetrace/models/responses.py,sha256=U06Gc4ZU2WmaPxjy1Dg5BtTDad6MOBURiDPTeLyDtcE
38
38
  hivetrace/utils/__init__.py,sha256=BNYbeSuUbrZL7RradjE_OFAxam3L6eexbL2IMfjImv0,747
39
39
  hivetrace/utils/error_helpers.py,sha256=egVQpENputLR8exNpV1cui2LSHqbf8pI6SHRbLdxOX8,2661
40
40
  hivetrace/utils/uuid_generator.py,sha256=W4i2tUSyClNKNgm4O-bk_Qkkmw3cWIuf29DjwXftx0c,344
41
- hivetrace-1.3.10.dist-info/LICENSE,sha256=8d3g3prbWPDLQ5AV0dtyWfYTj5QPl8MJ_wlr2l8pjEU,11333
42
- hivetrace-1.3.10.dist-info/METADATA,sha256=CUFNyNu4jhK756r403Hp5--Xe72iyhft5SL5Kfjbozs,27832
43
- hivetrace-1.3.10.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
44
- hivetrace-1.3.10.dist-info/top_level.txt,sha256=F6mZCzZ5CSftMc-M0NeOYWbwyTzjybR72P4qSBMyZZM,10
45
- hivetrace-1.3.10.dist-info/RECORD,,
41
+ hivetrace-1.3.12.dist-info/licenses/LICENSE,sha256=8d3g3prbWPDLQ5AV0dtyWfYTj5QPl8MJ_wlr2l8pjEU,11333
42
+ hivetrace-1.3.12.dist-info/METADATA,sha256=cifocLT419pqykRhagvfBxdRYrC9z86Bfj5DmiCZISY,28054
43
+ hivetrace-1.3.12.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
44
+ hivetrace-1.3.12.dist-info/top_level.txt,sha256=F6mZCzZ5CSftMc-M0NeOYWbwyTzjybR72P4qSBMyZZM,10
45
+ hivetrace-1.3.12.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.42.0)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5