letta-client 0.1.17__py3-none-any.whl → 0.1.21__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.

Files changed (107) hide show
  1. letta_client/__init__.py +44 -116
  2. letta_client/agents/__init__.py +18 -42
  3. letta_client/agents/archival_memory/client.py +6 -6
  4. letta_client/agents/client.py +28 -18
  5. letta_client/agents/context/client.py +6 -4
  6. letta_client/agents/core_memory/client.py +152 -227
  7. letta_client/agents/memory_variables/__init__.py +2 -2
  8. letta_client/agents/memory_variables/client.py +15 -15
  9. letta_client/agents/memory_variables/types/__init__.py +2 -2
  10. letta_client/agents/memory_variables/types/{memory_variables_get_response.py → memory_variables_list_response.py} +1 -1
  11. letta_client/agents/messages/__init__.py +2 -22
  12. letta_client/agents/messages/client.py +39 -40
  13. letta_client/agents/messages/types/__init__.py +3 -21
  14. letta_client/agents/messages/types/letta_streaming_response.py +16 -139
  15. letta_client/agents/messages/types/message_update_content.py +6 -0
  16. letta_client/agents/messages/types/messages_list_response.py +2 -2
  17. letta_client/agents/sources/client.py +266 -5
  18. letta_client/agents/tools/client.py +25 -27
  19. letta_client/agents/types/__init__.py +15 -25
  20. letta_client/agents/types/agents_search_request_search_item.py +10 -78
  21. letta_client/agents/types/{agents_search_request_search_item_order_by.py → agents_search_request_search_item_direction.py} +7 -6
  22. letta_client/agents/types/agents_search_request_search_item_direction_direction.py +5 -0
  23. letta_client/agents/types/agents_search_request_search_item_direction_value.py +5 -0
  24. letta_client/agents/types/{agents_search_request_search_item_name.py → agents_search_request_search_item_one.py} +5 -4
  25. letta_client/agents/types/agents_search_request_search_item_one_operator.py +5 -0
  26. letta_client/agents/types/{agents_search_request_search_item_tags.py → agents_search_request_search_item_two.py} +2 -1
  27. letta_client/agents/types/{agents_search_request_search_item_version.py → agents_search_request_search_item_zero.py} +3 -2
  28. letta_client/blocks/client.py +45 -166
  29. letta_client/client.py +3 -3
  30. letta_client/core/client_wrapper.py +1 -1
  31. letta_client/jobs/client.py +4 -4
  32. letta_client/providers/client.py +10 -10
  33. letta_client/runs/client.py +44 -30
  34. letta_client/sources/client.py +12 -288
  35. letta_client/sources/files/client.py +6 -6
  36. letta_client/tag/client.py +6 -6
  37. letta_client/tools/client.py +69 -75
  38. letta_client/types/__init__.py +31 -99
  39. letta_client/types/agent_state.py +3 -7
  40. letta_client/types/{letta_schemas_openai_chat_completion_response_tool_call.py → assistant_message.py} +6 -4
  41. letta_client/types/assistant_message_content.py +6 -0
  42. letta_client/types/block.py +2 -6
  43. letta_client/types/block_update.py +1 -5
  44. letta_client/types/{assistant_message_output.py → chat_completion_message_tool_call.py} +5 -5
  45. letta_client/types/context_window_overview.py +4 -6
  46. letta_client/types/create_block.py +1 -5
  47. letta_client/types/{function_call_output.py → function.py} +1 -1
  48. letta_client/types/{function_schema.py → function_definition.py} +2 -1
  49. letta_client/types/{function_call_input.py → function_tool.py} +5 -3
  50. letta_client/types/job.py +1 -5
  51. letta_client/types/letta_message_union.py +9 -121
  52. letta_client/types/letta_usage_statistics.py +1 -0
  53. letta_client/types/llm_config.py +6 -0
  54. letta_client/types/{letta_schemas_message_message.py → message.py} +7 -8
  55. letta_client/types/message_create.py +3 -2
  56. letta_client/types/message_create_content.py +6 -0
  57. letta_client/types/passage.py +1 -5
  58. letta_client/types/reasoning_message.py +2 -1
  59. letta_client/types/run.py +1 -5
  60. letta_client/types/source.py +2 -6
  61. letta_client/types/{system_message_output.py → system_message.py} +6 -4
  62. letta_client/types/system_message_content.py +6 -0
  63. letta_client/types/{create_assistant_file_request.py → text_content.py} +5 -4
  64. letta_client/types/{letta_schemas_tool_tool.py → tool.py} +1 -1
  65. letta_client/types/{letta_schemas_letta_message_tool_call.py → tool_call.py} +1 -1
  66. letta_client/types/tool_call_message.py +2 -1
  67. letta_client/types/tool_call_message_tool_call.py +2 -2
  68. letta_client/types/tool_return_message.py +2 -1
  69. letta_client/types/tool_type.py +2 -1
  70. letta_client/types/{user_message_output.py → user_message.py} +6 -4
  71. letta_client/types/user_message_content.py +6 -0
  72. {letta_client-0.1.17.dist-info → letta_client-0.1.21.dist-info}/METADATA +2 -2
  73. {letta_client-0.1.17.dist-info → letta_client-0.1.21.dist-info}/RECORD +74 -99
  74. letta_client/agents/types/agents_search_request_search_item_name_operator.py +0 -5
  75. letta_client/agents/types/agents_search_request_search_item_order_by_direction.py +0 -5
  76. letta_client/agents/types/agents_search_request_search_item_order_by_value.py +0 -5
  77. letta_client/types/assistant_file.py +0 -33
  78. letta_client/types/assistant_message_input.py +0 -23
  79. letta_client/types/chat_completion_request.py +0 -49
  80. letta_client/types/chat_completion_request_function_call.py +0 -6
  81. letta_client/types/chat_completion_request_messages_item.py +0 -11
  82. letta_client/types/chat_completion_request_stop.py +0 -5
  83. letta_client/types/chat_completion_request_tool_choice.py +0 -8
  84. letta_client/types/chat_completion_response.py +0 -32
  85. letta_client/types/choice.py +0 -25
  86. letta_client/types/create_assistant_request.py +0 -57
  87. letta_client/types/delete_assistant_file_response.py +0 -28
  88. letta_client/types/delete_assistant_response.py +0 -28
  89. letta_client/types/letta_schemas_openai_chat_completion_request_tool.py +0 -21
  90. letta_client/types/letta_schemas_openai_chat_completion_request_tool_call.py +0 -24
  91. letta_client/types/letta_schemas_openai_chat_completion_request_tool_call_function.py +0 -20
  92. letta_client/types/letta_schemas_openai_chat_completion_response_message.py +0 -24
  93. letta_client/types/letta_schemas_openai_chat_completions_tool_call_function.py +0 -27
  94. letta_client/types/letta_schemas_openai_chat_completions_tool_call_input.py +0 -29
  95. letta_client/types/letta_schemas_openai_chat_completions_tool_call_output.py +0 -29
  96. letta_client/types/log_prob_token.py +0 -21
  97. letta_client/types/message_content_log_prob.py +0 -23
  98. letta_client/types/open_ai_assistant.py +0 -67
  99. letta_client/types/response_format.py +0 -19
  100. letta_client/types/system_message_input.py +0 -21
  101. letta_client/types/tool_call_function_output.py +0 -27
  102. letta_client/types/tool_function_choice.py +0 -21
  103. letta_client/types/tool_input.py +0 -21
  104. letta_client/types/tool_message.py +0 -21
  105. letta_client/types/user_message_input.py +0 -22
  106. letta_client/types/user_message_input_content.py +0 -5
  107. {letta_client-0.1.17.dist-info → letta_client-0.1.21.dist-info}/WHEEL +0 -0
@@ -1,5 +1,5 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from .types import MemoryVariablesGetResponse
3
+ from .types import MemoryVariablesListResponse
4
4
 
5
- __all__ = ["MemoryVariablesGetResponse"]
5
+ __all__ = ["MemoryVariablesListResponse"]
@@ -3,7 +3,7 @@
3
3
  from ...core.client_wrapper import SyncClientWrapper
4
4
  import typing
5
5
  from ...core.request_options import RequestOptions
6
- from .types.memory_variables_get_response import MemoryVariablesGetResponse
6
+ from .types.memory_variables_list_response import MemoryVariablesListResponse
7
7
  from ...core.jsonable_encoder import jsonable_encoder
8
8
  from ...core.unchecked_base_model import construct_type
9
9
  from ...errors.not_found_error import NotFoundError
@@ -16,9 +16,9 @@ class MemoryVariablesClient:
16
16
  def __init__(self, *, client_wrapper: SyncClientWrapper):
17
17
  self._client_wrapper = client_wrapper
18
18
 
19
- def get(
19
+ def list(
20
20
  self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None
21
- ) -> MemoryVariablesGetResponse:
21
+ ) -> MemoryVariablesListResponse:
22
22
  """
23
23
  <Note>This endpoint is only available on Letta Cloud.</Note>
24
24
 
@@ -33,7 +33,7 @@ class MemoryVariablesClient:
33
33
 
34
34
  Returns
35
35
  -------
36
- MemoryVariablesGetResponse
36
+ MemoryVariablesListResponse
37
37
  200
38
38
 
39
39
  Examples
@@ -43,21 +43,21 @@ class MemoryVariablesClient:
43
43
  client = Letta(
44
44
  token="YOUR_TOKEN",
45
45
  )
46
- client.agents.memory_variables.get(
46
+ client.agents.memory_variables.list(
47
47
  agent_id="agent_id",
48
48
  )
49
49
  """
50
50
  _response = self._client_wrapper.httpx_client.request(
51
- f"v1/agents/{jsonable_encoder(agent_id)}/core_memory/variables",
51
+ f"v1/agents/{jsonable_encoder(agent_id)}/core-memory/variables",
52
52
  method="GET",
53
53
  request_options=request_options,
54
54
  )
55
55
  try:
56
56
  if 200 <= _response.status_code < 300:
57
57
  return typing.cast(
58
- MemoryVariablesGetResponse,
58
+ MemoryVariablesListResponse,
59
59
  construct_type(
60
- type_=MemoryVariablesGetResponse, # type: ignore
60
+ type_=MemoryVariablesListResponse, # type: ignore
61
61
  object_=_response.json(),
62
62
  ),
63
63
  )
@@ -81,9 +81,9 @@ class AsyncMemoryVariablesClient:
81
81
  def __init__(self, *, client_wrapper: AsyncClientWrapper):
82
82
  self._client_wrapper = client_wrapper
83
83
 
84
- async def get(
84
+ async def list(
85
85
  self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None
86
- ) -> MemoryVariablesGetResponse:
86
+ ) -> MemoryVariablesListResponse:
87
87
  """
88
88
  <Note>This endpoint is only available on Letta Cloud.</Note>
89
89
 
@@ -98,7 +98,7 @@ class AsyncMemoryVariablesClient:
98
98
 
99
99
  Returns
100
100
  -------
101
- MemoryVariablesGetResponse
101
+ MemoryVariablesListResponse
102
102
  200
103
103
 
104
104
  Examples
@@ -113,7 +113,7 @@ class AsyncMemoryVariablesClient:
113
113
 
114
114
 
115
115
  async def main() -> None:
116
- await client.agents.memory_variables.get(
116
+ await client.agents.memory_variables.list(
117
117
  agent_id="agent_id",
118
118
  )
119
119
 
@@ -121,16 +121,16 @@ class AsyncMemoryVariablesClient:
121
121
  asyncio.run(main())
122
122
  """
123
123
  _response = await self._client_wrapper.httpx_client.request(
124
- f"v1/agents/{jsonable_encoder(agent_id)}/core_memory/variables",
124
+ f"v1/agents/{jsonable_encoder(agent_id)}/core-memory/variables",
125
125
  method="GET",
126
126
  request_options=request_options,
127
127
  )
128
128
  try:
129
129
  if 200 <= _response.status_code < 300:
130
130
  return typing.cast(
131
- MemoryVariablesGetResponse,
131
+ MemoryVariablesListResponse,
132
132
  construct_type(
133
- type_=MemoryVariablesGetResponse, # type: ignore
133
+ type_=MemoryVariablesListResponse, # type: ignore
134
134
  object_=_response.json(),
135
135
  ),
136
136
  )
@@ -1,5 +1,5 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from .memory_variables_get_response import MemoryVariablesGetResponse
3
+ from .memory_variables_list_response import MemoryVariablesListResponse
4
4
 
5
- __all__ = ["MemoryVariablesGetResponse"]
5
+ __all__ = ["MemoryVariablesListResponse"]
@@ -6,7 +6,7 @@ from ....core.pydantic_utilities import IS_PYDANTIC_V2
6
6
  import pydantic
7
7
 
8
8
 
9
- class MemoryVariablesGetResponse(UncheckedBaseModel):
9
+ class MemoryVariablesListResponse(UncheckedBaseModel):
10
10
  variables: typing.Dict[str, str]
11
11
 
12
12
  if IS_PYDANTIC_V2:
@@ -1,25 +1,5 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from .types import (
4
- LettaStreamingResponse,
5
- LettaStreamingResponse_AssistantMessage,
6
- LettaStreamingResponse_ReasoningMessage,
7
- LettaStreamingResponse_SystemMessage,
8
- LettaStreamingResponse_ToolCallMessage,
9
- LettaStreamingResponse_ToolReturnMessage,
10
- LettaStreamingResponse_UsageStatistics,
11
- LettaStreamingResponse_UserMessage,
12
- MessagesListResponse,
13
- )
3
+ from .types import LettaStreamingResponse, MessageUpdateContent, MessagesListResponse
14
4
 
15
- __all__ = [
16
- "LettaStreamingResponse",
17
- "LettaStreamingResponse_AssistantMessage",
18
- "LettaStreamingResponse_ReasoningMessage",
19
- "LettaStreamingResponse_SystemMessage",
20
- "LettaStreamingResponse_ToolCallMessage",
21
- "LettaStreamingResponse_ToolReturnMessage",
22
- "LettaStreamingResponse_UsageStatistics",
23
- "LettaStreamingResponse_UserMessage",
24
- "MessagesListResponse",
25
- ]
5
+ __all__ = ["LettaStreamingResponse", "MessageUpdateContent", "MessagesListResponse"]
@@ -15,10 +15,9 @@ from ...types.letta_request_config import LettaRequestConfig
15
15
  from ...types.letta_response import LettaResponse
16
16
  from ...core.serialization import convert_and_respect_annotation_metadata
17
17
  from ...types.message_role import MessageRole
18
- from ...types.letta_schemas_openai_chat_completions_tool_call_input import (
19
- LettaSchemasOpenaiChatCompletionsToolCallInput,
20
- )
21
- from ...types.letta_schemas_message_message import LettaSchemasMessageMessage
18
+ from .types.message_update_content import MessageUpdateContent
19
+ from ...types.chat_completion_message_tool_call import ChatCompletionMessageToolCall
20
+ from ...types.message import Message
22
21
  from .types.letta_streaming_response import LettaStreamingResponse
23
22
  import httpx_sse
24
23
  import json
@@ -163,7 +162,7 @@ class MessagesClient:
163
162
  messages=[
164
163
  MessageCreate(
165
164
  role="user",
166
- text="text",
165
+ content="content",
167
166
  )
168
167
  ],
169
168
  )
@@ -206,18 +205,18 @@ class MessagesClient:
206
205
  raise ApiError(status_code=_response.status_code, body=_response.text)
207
206
  raise ApiError(status_code=_response.status_code, body=_response_json)
208
207
 
209
- def update(
208
+ def modify(
210
209
  self,
211
210
  agent_id: str,
212
211
  message_id: str,
213
212
  *,
214
213
  role: typing.Optional[MessageRole] = OMIT,
215
- text: typing.Optional[str] = OMIT,
214
+ content: typing.Optional[MessageUpdateContent] = OMIT,
216
215
  name: typing.Optional[str] = OMIT,
217
- tool_calls: typing.Optional[typing.Sequence[LettaSchemasOpenaiChatCompletionsToolCallInput]] = OMIT,
216
+ tool_calls: typing.Optional[typing.Sequence[ChatCompletionMessageToolCall]] = OMIT,
218
217
  tool_call_id: typing.Optional[str] = OMIT,
219
218
  request_options: typing.Optional[RequestOptions] = None,
220
- ) -> LettaSchemasMessageMessage:
219
+ ) -> Message:
221
220
  """
222
221
  Update the details of a message associated with an agent.
223
222
 
@@ -230,13 +229,13 @@ class MessagesClient:
230
229
  role : typing.Optional[MessageRole]
231
230
  The role of the participant.
232
231
 
233
- text : typing.Optional[str]
234
- The text of the message.
232
+ content : typing.Optional[MessageUpdateContent]
233
+ The content of the message.
235
234
 
236
235
  name : typing.Optional[str]
237
236
  The name of the participant.
238
237
 
239
- tool_calls : typing.Optional[typing.Sequence[LettaSchemasOpenaiChatCompletionsToolCallInput]]
238
+ tool_calls : typing.Optional[typing.Sequence[ChatCompletionMessageToolCall]]
240
239
  The list of tool calls requested.
241
240
 
242
241
  tool_call_id : typing.Optional[str]
@@ -247,7 +246,7 @@ class MessagesClient:
247
246
 
248
247
  Returns
249
248
  -------
250
- LettaSchemasMessageMessage
249
+ Message
251
250
  Successful Response
252
251
 
253
252
  Examples
@@ -257,7 +256,7 @@ class MessagesClient:
257
256
  client = Letta(
258
257
  token="YOUR_TOKEN",
259
258
  )
260
- client.agents.messages.update(
259
+ client.agents.messages.modify(
261
260
  agent_id="agent_id",
262
261
  message_id="message_id",
263
262
  )
@@ -267,12 +266,12 @@ class MessagesClient:
267
266
  method="PATCH",
268
267
  json={
269
268
  "role": role,
270
- "text": text,
269
+ "content": convert_and_respect_annotation_metadata(
270
+ object_=content, annotation=MessageUpdateContent, direction="write"
271
+ ),
271
272
  "name": name,
272
273
  "tool_calls": convert_and_respect_annotation_metadata(
273
- object_=tool_calls,
274
- annotation=typing.Sequence[LettaSchemasOpenaiChatCompletionsToolCallInput],
275
- direction="write",
274
+ object_=tool_calls, annotation=typing.Sequence[ChatCompletionMessageToolCall], direction="write"
276
275
  ),
277
276
  "tool_call_id": tool_call_id,
278
277
  },
@@ -285,9 +284,9 @@ class MessagesClient:
285
284
  try:
286
285
  if 200 <= _response.status_code < 300:
287
286
  return typing.cast(
288
- LettaSchemasMessageMessage,
287
+ Message,
289
288
  construct_type(
290
- type_=LettaSchemasMessageMessage, # type: ignore
289
+ type_=Message, # type: ignore
291
290
  object_=_response.json(),
292
291
  ),
293
292
  )
@@ -353,7 +352,7 @@ class MessagesClient:
353
352
  messages=[
354
353
  MessageCreate(
355
354
  role="user",
356
- text="text",
355
+ content="content",
357
356
  )
358
357
  ],
359
358
  )
@@ -451,7 +450,7 @@ class MessagesClient:
451
450
  messages=[
452
451
  MessageCreate(
453
452
  role="user",
454
- text="text",
453
+ content="content",
455
454
  )
456
455
  ],
457
456
  )
@@ -642,7 +641,7 @@ class AsyncMessagesClient:
642
641
  messages=[
643
642
  MessageCreate(
644
643
  role="user",
645
- text="text",
644
+ content="content",
646
645
  )
647
646
  ],
648
647
  )
@@ -688,18 +687,18 @@ class AsyncMessagesClient:
688
687
  raise ApiError(status_code=_response.status_code, body=_response.text)
689
688
  raise ApiError(status_code=_response.status_code, body=_response_json)
690
689
 
691
- async def update(
690
+ async def modify(
692
691
  self,
693
692
  agent_id: str,
694
693
  message_id: str,
695
694
  *,
696
695
  role: typing.Optional[MessageRole] = OMIT,
697
- text: typing.Optional[str] = OMIT,
696
+ content: typing.Optional[MessageUpdateContent] = OMIT,
698
697
  name: typing.Optional[str] = OMIT,
699
- tool_calls: typing.Optional[typing.Sequence[LettaSchemasOpenaiChatCompletionsToolCallInput]] = OMIT,
698
+ tool_calls: typing.Optional[typing.Sequence[ChatCompletionMessageToolCall]] = OMIT,
700
699
  tool_call_id: typing.Optional[str] = OMIT,
701
700
  request_options: typing.Optional[RequestOptions] = None,
702
- ) -> LettaSchemasMessageMessage:
701
+ ) -> Message:
703
702
  """
704
703
  Update the details of a message associated with an agent.
705
704
 
@@ -712,13 +711,13 @@ class AsyncMessagesClient:
712
711
  role : typing.Optional[MessageRole]
713
712
  The role of the participant.
714
713
 
715
- text : typing.Optional[str]
716
- The text of the message.
714
+ content : typing.Optional[MessageUpdateContent]
715
+ The content of the message.
717
716
 
718
717
  name : typing.Optional[str]
719
718
  The name of the participant.
720
719
 
721
- tool_calls : typing.Optional[typing.Sequence[LettaSchemasOpenaiChatCompletionsToolCallInput]]
720
+ tool_calls : typing.Optional[typing.Sequence[ChatCompletionMessageToolCall]]
722
721
  The list of tool calls requested.
723
722
 
724
723
  tool_call_id : typing.Optional[str]
@@ -729,7 +728,7 @@ class AsyncMessagesClient:
729
728
 
730
729
  Returns
731
730
  -------
732
- LettaSchemasMessageMessage
731
+ Message
733
732
  Successful Response
734
733
 
735
734
  Examples
@@ -744,7 +743,7 @@ class AsyncMessagesClient:
744
743
 
745
744
 
746
745
  async def main() -> None:
747
- await client.agents.messages.update(
746
+ await client.agents.messages.modify(
748
747
  agent_id="agent_id",
749
748
  message_id="message_id",
750
749
  )
@@ -757,12 +756,12 @@ class AsyncMessagesClient:
757
756
  method="PATCH",
758
757
  json={
759
758
  "role": role,
760
- "text": text,
759
+ "content": convert_and_respect_annotation_metadata(
760
+ object_=content, annotation=MessageUpdateContent, direction="write"
761
+ ),
761
762
  "name": name,
762
763
  "tool_calls": convert_and_respect_annotation_metadata(
763
- object_=tool_calls,
764
- annotation=typing.Sequence[LettaSchemasOpenaiChatCompletionsToolCallInput],
765
- direction="write",
764
+ object_=tool_calls, annotation=typing.Sequence[ChatCompletionMessageToolCall], direction="write"
766
765
  ),
767
766
  "tool_call_id": tool_call_id,
768
767
  },
@@ -775,9 +774,9 @@ class AsyncMessagesClient:
775
774
  try:
776
775
  if 200 <= _response.status_code < 300:
777
776
  return typing.cast(
778
- LettaSchemasMessageMessage,
777
+ Message,
779
778
  construct_type(
780
- type_=LettaSchemasMessageMessage, # type: ignore
779
+ type_=Message, # type: ignore
781
780
  object_=_response.json(),
782
781
  ),
783
782
  )
@@ -848,7 +847,7 @@ class AsyncMessagesClient:
848
847
  messages=[
849
848
  MessageCreate(
850
849
  role="user",
851
- text="text",
850
+ content="content",
852
851
  )
853
852
  ],
854
853
  )
@@ -954,7 +953,7 @@ class AsyncMessagesClient:
954
953
  messages=[
955
954
  MessageCreate(
956
955
  role="user",
957
- text="text",
956
+ content="content",
958
957
  )
959
958
  ],
960
959
  )
@@ -1,25 +1,7 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from .letta_streaming_response import (
4
- LettaStreamingResponse,
5
- LettaStreamingResponse_AssistantMessage,
6
- LettaStreamingResponse_ReasoningMessage,
7
- LettaStreamingResponse_SystemMessage,
8
- LettaStreamingResponse_ToolCallMessage,
9
- LettaStreamingResponse_ToolReturnMessage,
10
- LettaStreamingResponse_UsageStatistics,
11
- LettaStreamingResponse_UserMessage,
12
- )
3
+ from .letta_streaming_response import LettaStreamingResponse
4
+ from .message_update_content import MessageUpdateContent
13
5
  from .messages_list_response import MessagesListResponse
14
6
 
15
- __all__ = [
16
- "LettaStreamingResponse",
17
- "LettaStreamingResponse_AssistantMessage",
18
- "LettaStreamingResponse_ReasoningMessage",
19
- "LettaStreamingResponse_SystemMessage",
20
- "LettaStreamingResponse_ToolCallMessage",
21
- "LettaStreamingResponse_ToolReturnMessage",
22
- "LettaStreamingResponse_UsageStatistics",
23
- "LettaStreamingResponse_UserMessage",
24
- "MessagesListResponse",
25
- ]
7
+ __all__ = ["LettaStreamingResponse", "MessageUpdateContent", "MessagesListResponse"]
@@ -1,143 +1,20 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
- from __future__ import annotations
4
- from ....core.unchecked_base_model import UncheckedBaseModel
5
3
  import typing
6
- import datetime as dt
7
- from ....core.pydantic_utilities import IS_PYDANTIC_V2
8
- import pydantic
9
- from ....types.tool_call_message_tool_call import ToolCallMessageToolCall
10
- from ....types.tool_return_message_status import ToolReturnMessageStatus
11
- import typing_extensions
12
- from ....core.unchecked_base_model import UnionMetadata
13
-
14
-
15
- class LettaStreamingResponse_SystemMessage(UncheckedBaseModel):
16
- message_type: typing.Literal["system_message"] = "system_message"
17
- id: str
18
- date: dt.datetime
19
- message: str
20
-
21
- if IS_PYDANTIC_V2:
22
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
23
- else:
24
-
25
- class Config:
26
- frozen = True
27
- smart_union = True
28
- extra = pydantic.Extra.allow
29
-
30
-
31
- class LettaStreamingResponse_UserMessage(UncheckedBaseModel):
32
- message_type: typing.Literal["user_message"] = "user_message"
33
- id: str
34
- date: dt.datetime
35
- message: str
36
-
37
- if IS_PYDANTIC_V2:
38
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
39
- else:
40
-
41
- class Config:
42
- frozen = True
43
- smart_union = True
44
- extra = pydantic.Extra.allow
45
-
46
-
47
- class LettaStreamingResponse_ReasoningMessage(UncheckedBaseModel):
48
- message_type: typing.Literal["reasoning_message"] = "reasoning_message"
49
- id: str
50
- date: dt.datetime
51
- reasoning: str
52
-
53
- if IS_PYDANTIC_V2:
54
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
55
- else:
56
-
57
- class Config:
58
- frozen = True
59
- smart_union = True
60
- extra = pydantic.Extra.allow
61
-
62
-
63
- class LettaStreamingResponse_ToolCallMessage(UncheckedBaseModel):
64
- message_type: typing.Literal["tool_call_message"] = "tool_call_message"
65
- id: str
66
- date: dt.datetime
67
- tool_call: ToolCallMessageToolCall
68
-
69
- if IS_PYDANTIC_V2:
70
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
71
- else:
72
-
73
- class Config:
74
- frozen = True
75
- smart_union = True
76
- extra = pydantic.Extra.allow
77
-
78
-
79
- class LettaStreamingResponse_ToolReturnMessage(UncheckedBaseModel):
80
- message_type: typing.Literal["tool_return_message"] = "tool_return_message"
81
- id: str
82
- date: dt.datetime
83
- tool_return: str
84
- status: ToolReturnMessageStatus
85
- tool_call_id: str
86
- stdout: typing.Optional[typing.List[str]] = None
87
- stderr: typing.Optional[typing.List[str]] = None
88
-
89
- if IS_PYDANTIC_V2:
90
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
91
- else:
92
-
93
- class Config:
94
- frozen = True
95
- smart_union = True
96
- extra = pydantic.Extra.allow
97
-
98
-
99
- class LettaStreamingResponse_AssistantMessage(UncheckedBaseModel):
100
- message_type: typing.Literal["assistant_message"] = "assistant_message"
101
- id: str
102
- date: dt.datetime
103
- assistant_message: str
104
-
105
- if IS_PYDANTIC_V2:
106
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
107
- else:
108
-
109
- class Config:
110
- frozen = True
111
- smart_union = True
112
- extra = pydantic.Extra.allow
113
-
114
-
115
- class LettaStreamingResponse_UsageStatistics(UncheckedBaseModel):
116
- message_type: typing.Literal["usage_statistics"] = "usage_statistics"
117
- completion_tokens: typing.Optional[int] = None
118
- prompt_tokens: typing.Optional[int] = None
119
- total_tokens: typing.Optional[int] = None
120
- step_count: typing.Optional[int] = None
121
-
122
- if IS_PYDANTIC_V2:
123
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
124
- else:
125
-
126
- class Config:
127
- frozen = True
128
- smart_union = True
129
- extra = pydantic.Extra.allow
130
-
131
-
132
- LettaStreamingResponse = typing_extensions.Annotated[
133
- typing.Union[
134
- LettaStreamingResponse_SystemMessage,
135
- LettaStreamingResponse_UserMessage,
136
- LettaStreamingResponse_ReasoningMessage,
137
- LettaStreamingResponse_ToolCallMessage,
138
- LettaStreamingResponse_ToolReturnMessage,
139
- LettaStreamingResponse_AssistantMessage,
140
- LettaStreamingResponse_UsageStatistics,
141
- ],
142
- UnionMetadata(discriminant="message_type"),
4
+ from ....types.system_message import SystemMessage
5
+ from ....types.user_message import UserMessage
6
+ from ....types.reasoning_message import ReasoningMessage
7
+ from ....types.tool_call_message import ToolCallMessage
8
+ from ....types.tool_return_message import ToolReturnMessage
9
+ from ....types.assistant_message import AssistantMessage
10
+ from ....types.letta_usage_statistics import LettaUsageStatistics
11
+
12
+ LettaStreamingResponse = typing.Union[
13
+ SystemMessage,
14
+ UserMessage,
15
+ ReasoningMessage,
16
+ ToolCallMessage,
17
+ ToolReturnMessage,
18
+ AssistantMessage,
19
+ LettaUsageStatistics,
143
20
  ]
@@ -0,0 +1,6 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+ from ....types.text_content import TextContent
5
+
6
+ MessageUpdateContent = typing.Union[str, typing.List[TextContent]]
@@ -1,7 +1,7 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  import typing
4
- from ....types.letta_schemas_message_message import LettaSchemasMessageMessage
4
+ from ....types.message import Message
5
5
  from ....types.letta_message_union import LettaMessageUnion
6
6
 
7
- MessagesListResponse = typing.Union[typing.List[LettaSchemasMessageMessage], typing.List[LettaMessageUnion]]
7
+ MessagesListResponse = typing.Union[typing.List[Message], typing.List[LettaMessageUnion]]