letta-client 1.0.0a9__py3-none-any.whl → 1.0.0a11__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.
Potentially problematic release.
This version of letta-client might be problematic. Click here for more details.
- letta_client/_client.py +5 -1
- letta_client/_streaming.py +40 -2
- letta_client/_version.py +1 -1
- letta_client/resources/agents/agents.py +396 -396
- letta_client/resources/agents/blocks.py +198 -190
- letta_client/resources/agents/files.py +10 -13
- letta_client/resources/agents/folders.py +10 -13
- letta_client/resources/agents/messages.py +380 -370
- letta_client/resources/agents/tools.py +10 -13
- letta_client/resources/archives.py +111 -113
- letta_client/resources/batches/batches.py +10 -12
- letta_client/resources/batches/messages.py +11 -14
- letta_client/resources/blocks/blocks.py +238 -222
- letta_client/resources/folders/agents.py +10 -13
- letta_client/resources/folders/files.py +9 -12
- letta_client/resources/folders/folders.py +143 -145
- letta_client/resources/groups/groups.py +141 -141
- letta_client/resources/groups/messages.py +198 -198
- letta_client/resources/identities/blocks.py +7 -7
- letta_client/resources/identities/identities.py +151 -153
- letta_client/resources/runs/runs.py +11 -13
- letta_client/resources/tags.py +10 -13
- letta_client/resources/tools.py +802 -204
- letta_client/types/__init__.py +14 -7
- letta_client/types/{agent_update_params.py → agent_modify_params.py} +2 -2
- letta_client/types/agent_state.py +6 -3
- letta_client/types/agents/__init__.py +5 -3
- letta_client/types/agents/block.py +6 -3
- letta_client/types/agents/{block_update_params.py → block_modify_params.py} +8 -5
- letta_client/types/agents/file_list_response.py +14 -3
- letta_client/types/agents/folder_list_response.py +7 -3
- letta_client/types/agents/letta_streaming_response.py +70 -0
- letta_client/types/agents/{message_update_params.py → message_modify_params.py} +2 -2
- letta_client/types/agents/{message_update_response.py → message_modify_response.py} +2 -2
- letta_client/types/agents/tool_list_response.py +10 -0
- letta_client/types/archive_list_response.py +10 -0
- letta_client/types/{archive_update_params.py → archive_modify_params.py} +2 -2
- letta_client/types/batch_list_response.py +10 -0
- letta_client/types/batches/__init__.py +1 -0
- letta_client/types/batches/message_list_response.py +12 -0
- letta_client/types/block_create_params.py +6 -3
- letta_client/types/{block_update_params.py → block_modify_params.py} +8 -5
- letta_client/types/block_response.py +63 -0
- letta_client/types/create_block_param.py +6 -3
- letta_client/types/folder_list_response.py +10 -0
- letta_client/types/{folder_update_params.py → folder_modify_params.py} +2 -2
- letta_client/types/folders/agent_list_response.py +2 -1
- letta_client/types/folders/file_list_response.py +7 -4
- letta_client/types/{group_update_params.py → group_modify_params.py} +2 -2
- letta_client/types/groups/__init__.py +2 -2
- letta_client/types/groups/{message_update_params.py → message_modify_params.py} +2 -2
- letta_client/types/groups/{message_update_response.py → message_modify_response.py} +2 -2
- letta_client/types/identity_list_response.py +10 -0
- letta_client/types/{identity_update_params.py → identity_modify_params.py} +2 -2
- letta_client/types/run_list_response.py +10 -0
- letta_client/types/tag_list_response.py +2 -1
- letta_client/types/tool.py +106 -2
- letta_client/types/tool_list_response.py +10 -0
- letta_client/types/{tool_update_params.py → tool_modify_params.py} +2 -2
- {letta_client-1.0.0a9.dist-info → letta_client-1.0.0a11.dist-info}/METADATA +1 -1
- {letta_client-1.0.0a9.dist-info → letta_client-1.0.0a11.dist-info}/RECORD +63 -53
- {letta_client-1.0.0a9.dist-info → letta_client-1.0.0a11.dist-info}/WHEEL +0 -0
- {letta_client-1.0.0a9.dist-info → letta_client-1.0.0a11.dist-info}/licenses/LICENSE +0 -0
letta_client/_client.py
CHANGED
|
@@ -64,7 +64,7 @@ __all__ = [
|
|
|
64
64
|
]
|
|
65
65
|
|
|
66
66
|
ENVIRONMENTS: Dict[str, str] = {
|
|
67
|
-
"cloud": "https://
|
|
67
|
+
"cloud": "https://api.letta.com",
|
|
68
68
|
"local": "http://localhost:8283",
|
|
69
69
|
}
|
|
70
70
|
|
|
@@ -164,6 +164,8 @@ class Letta(SyncAPIClient):
|
|
|
164
164
|
_strict_response_validation=_strict_response_validation,
|
|
165
165
|
)
|
|
166
166
|
|
|
167
|
+
self._default_stream_cls = Stream
|
|
168
|
+
|
|
167
169
|
self.archives = archives.ArchivesResource(self)
|
|
168
170
|
self.tools = tools.ToolsResource(self)
|
|
169
171
|
self.folders = folders.FoldersResource(self)
|
|
@@ -401,6 +403,8 @@ class AsyncLetta(AsyncAPIClient):
|
|
|
401
403
|
_strict_response_validation=_strict_response_validation,
|
|
402
404
|
)
|
|
403
405
|
|
|
406
|
+
self._default_stream_cls = AsyncStream
|
|
407
|
+
|
|
404
408
|
self.archives = archives.AsyncArchivesResource(self)
|
|
405
409
|
self.tools = tools.AsyncToolsResource(self)
|
|
406
410
|
self.folders = folders.AsyncFoldersResource(self)
|
letta_client/_streaming.py
CHANGED
|
@@ -55,7 +55,26 @@ class Stream(Generic[_T]):
|
|
|
55
55
|
iterator = self._iter_events()
|
|
56
56
|
|
|
57
57
|
for sse in iterator:
|
|
58
|
-
|
|
58
|
+
if sse.data.startswith("[DONE]"):
|
|
59
|
+
break
|
|
60
|
+
|
|
61
|
+
if sse.event == "error":
|
|
62
|
+
body = sse.data
|
|
63
|
+
|
|
64
|
+
try:
|
|
65
|
+
body = sse.json()
|
|
66
|
+
err_msg = f"{body}"
|
|
67
|
+
except Exception:
|
|
68
|
+
err_msg = sse.data or f"Error code: {response.status_code}"
|
|
69
|
+
|
|
70
|
+
raise self._client._make_status_error(
|
|
71
|
+
err_msg,
|
|
72
|
+
body=body,
|
|
73
|
+
response=self.response,
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
if sse.event is None:
|
|
77
|
+
yield process_data(data=sse.json(), cast_to=cast_to, response=response)
|
|
59
78
|
|
|
60
79
|
# Ensure the entire stream is consumed
|
|
61
80
|
for _sse in iterator:
|
|
@@ -119,7 +138,26 @@ class AsyncStream(Generic[_T]):
|
|
|
119
138
|
iterator = self._iter_events()
|
|
120
139
|
|
|
121
140
|
async for sse in iterator:
|
|
122
|
-
|
|
141
|
+
if sse.data.startswith("[DONE]"):
|
|
142
|
+
break
|
|
143
|
+
|
|
144
|
+
if sse.event == "error":
|
|
145
|
+
body = sse.data
|
|
146
|
+
|
|
147
|
+
try:
|
|
148
|
+
body = sse.json()
|
|
149
|
+
err_msg = f"{body}"
|
|
150
|
+
except Exception:
|
|
151
|
+
err_msg = sse.data or f"Error code: {response.status_code}"
|
|
152
|
+
|
|
153
|
+
raise self._client._make_status_error(
|
|
154
|
+
err_msg,
|
|
155
|
+
body=body,
|
|
156
|
+
response=self.response,
|
|
157
|
+
)
|
|
158
|
+
|
|
159
|
+
if sse.event is None:
|
|
160
|
+
yield process_data(data=sse.json(), cast_to=cast_to, response=response)
|
|
123
161
|
|
|
124
162
|
# Ensure the entire stream is consumed
|
|
125
163
|
async for _sse in iterator:
|
letta_client/_version.py
CHANGED