hivetrace 1.3.11__py3-none-any.whl → 1.3.13__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,18 @@ 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 hasattr(files_response, "success") and not files_response.success:
111
+ return files_response
112
+ elif isinstance(files_response, dict) and not files_response.get("success", True):
113
+ return files_response
114
+
111
115
  blocked = await self._get_blocking_status(
112
116
  f"/user_prompt_analysis/{analysis_id}/check_blocking"
113
117
  )
@@ -125,14 +129,18 @@ class AsyncHivetraceSDK(BaseHivetraceSDK):
125
129
  application_id, message, additional_parameters
126
130
  )
127
131
  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
- )
132
+
134
133
  analysis_id = self._extract_analysis_id(process_response)
135
134
  if analysis_id:
135
+ if files:
136
+ files_response = await self._send_files(
137
+ f"/llm_response_analysis/{analysis_id}/attach_files", files
138
+ )
139
+ if hasattr(files_response, "success") and not files_response.success:
140
+ return files_response
141
+ elif isinstance(files_response, dict) and not files_response.get("success", True):
142
+ return files_response
143
+
136
144
  blocked = await self._get_blocking_status(
137
145
  f"/llm_response_analysis/{analysis_id}/check_blocking"
138
146
  )
hivetrace/client/base.py CHANGED
@@ -128,6 +128,10 @@ class BaseHivetraceSDK(ABC):
128
128
  request_id = response.get("request_id")
129
129
  if request_id:
130
130
  return str(request_id)
131
+ elif hasattr(response, "request_id"):
132
+ request_id = getattr(response, "request_id", None)
133
+ if request_id:
134
+ return str(request_id)
131
135
  except Exception:
132
136
  return None
133
137
  return None
@@ -115,14 +115,18 @@ 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 hasattr(files_response, "success") and not files_response.success:
126
+ return files_response
127
+ elif isinstance(files_response, dict) and not files_response.get("success", True):
128
+ return files_response
129
+
126
130
  blocked = self._get_blocking_status(
127
131
  f"/user_prompt_analysis/{analysis_id}/check_blocking"
128
132
  )
@@ -140,14 +144,18 @@ class SyncHivetraceSDK(BaseHivetraceSDK):
140
144
  application_id, message, additional_parameters
141
145
  )
142
146
  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
- )
147
+
149
148
  analysis_id = self._extract_analysis_id(process_response)
150
149
  if analysis_id:
150
+ if files:
151
+ files_response = self._send_files(
152
+ f"/llm_response_analysis/{analysis_id}/attach_files", files
153
+ )
154
+ if hasattr(files_response, "success") and not files_response.success:
155
+ return files_response
156
+ elif isinstance(files_response, dict) and not files_response.get("success", True):
157
+ return files_response
158
+
151
159
  blocked = self._get_blocking_status(
152
160
  f"/llm_response_analysis/{analysis_id}/check_blocking"
153
161
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hivetrace
3
- Version: 1.3.11
3
+ Version: 1.3.13
4
4
  Summary: Hivetrace SDK for monitoring LLM applications
5
5
  Home-page: http://hivetrace.ai
6
6
  Author: Raft
@@ -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=7Ix53BHNr6MVfA5_ox4RhSKOzuETmZjuRqEE4JRfZVk,7881
26
- hivetrace/client/sync_client.py,sha256=J3nKDVfVtfYL3NjlMtj5l7EpZKXupJnI1bpHy-tWgyE,6347
24
+ hivetrace/client/async_client.py,sha256=i5k11Lx9azdY1ZKnfY1iEOf039wi8c3OwKh_RDHT_Ms,6962
25
+ hivetrace/client/base.py,sha256=FuhOZh_at02DNAj2v5UobIF_NQIEKH0NqeeZMT6LLWU,8072
26
+ hivetrace/client/sync_client.py,sha256=mfUGhfW195jbo6qAtavF7mQrQIU1WNuI7Swfs87DyA4,6791
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.11.dist-info/licenses/LICENSE,sha256=8d3g3prbWPDLQ5AV0dtyWfYTj5QPl8MJ_wlr2l8pjEU,11333
42
- hivetrace-1.3.11.dist-info/METADATA,sha256=gmvQMgJOAIvNhJw7G9Qij0bytGY-UQph9r3Hk_r7_VE,28054
43
- hivetrace-1.3.11.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
44
- hivetrace-1.3.11.dist-info/top_level.txt,sha256=F6mZCzZ5CSftMc-M0NeOYWbwyTzjybR72P4qSBMyZZM,10
45
- hivetrace-1.3.11.dist-info/RECORD,,
41
+ hivetrace-1.3.13.dist-info/licenses/LICENSE,sha256=8d3g3prbWPDLQ5AV0dtyWfYTj5QPl8MJ_wlr2l8pjEU,11333
42
+ hivetrace-1.3.13.dist-info/METADATA,sha256=M06F9I2Aa8P0_8HcIBtuW8iiKcQWtE_fd3j8G5NfwvU,28054
43
+ hivetrace-1.3.13.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
44
+ hivetrace-1.3.13.dist-info/top_level.txt,sha256=F6mZCzZ5CSftMc-M0NeOYWbwyTzjybR72P4qSBMyZZM,10
45
+ hivetrace-1.3.13.dist-info/RECORD,,