letta-client 0.1.233__py3-none-any.whl → 0.1.234__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/__init__.py +2 -0
- letta_client/agents/__init__.py +2 -0
- letta_client/agents/blocks/__init__.py +2 -0
- letta_client/agents/blocks/client.py +72 -313
- letta_client/agents/blocks/raw_client.py +654 -0
- letta_client/agents/client.py +329 -869
- letta_client/agents/context/__init__.py +2 -0
- letta_client/agents/context/client.py +31 -66
- letta_client/agents/context/raw_client.py +122 -0
- letta_client/agents/core_memory/__init__.py +2 -0
- letta_client/agents/core_memory/client.py +31 -66
- letta_client/agents/core_memory/raw_client.py +124 -0
- letta_client/agents/files/__init__.py +2 -0
- letta_client/agents/files/client.py +39 -178
- letta_client/agents/files/raw_client.py +349 -0
- letta_client/agents/folders/__init__.py +2 -0
- letta_client/agents/folders/client.py +39 -178
- letta_client/agents/folders/raw_client.py +327 -0
- letta_client/agents/groups/__init__.py +2 -0
- letta_client/agents/groups/client.py +31 -72
- letta_client/agents/groups/raw_client.py +142 -0
- letta_client/agents/memory_variables/__init__.py +2 -0
- letta_client/agents/memory_variables/client.py +31 -65
- letta_client/agents/memory_variables/raw_client.py +125 -0
- letta_client/agents/memory_variables/types/__init__.py +2 -0
- letta_client/agents/memory_variables/types/memory_variables_list_response.py +3 -2
- letta_client/agents/messages/__init__.py +2 -0
- letta_client/agents/messages/client.py +150 -589
- letta_client/agents/messages/raw_client.py +1384 -0
- letta_client/agents/messages/types/__init__.py +2 -0
- letta_client/agents/messages/types/letta_streaming_response.py +6 -5
- letta_client/agents/messages/types/messages_modify_request.py +3 -2
- letta_client/agents/messages/types/messages_modify_response.py +5 -4
- letta_client/agents/messages/types/messages_preview_raw_payload_request.py +1 -0
- letta_client/agents/passages/__init__.py +2 -0
- letta_client/agents/passages/client.py +89 -301
- letta_client/agents/passages/raw_client.py +678 -0
- letta_client/agents/raw_client.py +2068 -0
- letta_client/agents/sources/__init__.py +2 -0
- letta_client/agents/sources/client.py +39 -178
- letta_client/agents/sources/raw_client.py +327 -0
- letta_client/agents/templates/__init__.py +2 -0
- letta_client/agents/templates/client.py +57 -276
- letta_client/agents/templates/raw_client.py +505 -0
- letta_client/agents/templates/types/__init__.py +2 -0
- letta_client/agents/templates/types/templates_create_response.py +5 -4
- letta_client/agents/templates/types/templates_migrate_response.py +3 -2
- letta_client/agents/tools/__init__.py +2 -0
- letta_client/agents/tools/client.py +40 -179
- letta_client/agents/tools/raw_client.py +327 -0
- letta_client/agents/types/__init__.py +2 -0
- letta_client/agents/types/agents_search_request_search_item.py +4 -3
- letta_client/agents/types/agents_search_request_search_item_field.py +4 -3
- letta_client/agents/types/agents_search_request_search_item_one.py +4 -3
- letta_client/agents/types/agents_search_request_search_item_three.py +3 -2
- letta_client/agents/types/agents_search_request_search_item_two.py +3 -2
- letta_client/agents/types/agents_search_request_search_item_zero.py +3 -2
- letta_client/agents/types/agents_search_response.py +5 -4
- letta_client/agents/types/create_agent_request_response_format.py +1 -0
- letta_client/agents/types/create_agent_request_tool_rules_item.py +4 -3
- letta_client/agents/types/update_agent_response_format.py +1 -0
- letta_client/agents/types/update_agent_tool_rules_item.py +4 -3
- letta_client/base_client.py +41 -49
- letta_client/batches/__init__.py +2 -0
- letta_client/batches/client.py +45 -253
- letta_client/batches/raw_client.py +457 -0
- letta_client/blocks/__init__.py +2 -0
- letta_client/blocks/agents/__init__.py +2 -0
- letta_client/blocks/agents/client.py +33 -70
- letta_client/blocks/agents/raw_client.py +144 -0
- letta_client/blocks/client.py +126 -424
- letta_client/blocks/raw_client.py +973 -0
- letta_client/client_side_access_tokens/__init__.py +2 -0
- letta_client/client_side_access_tokens/client.py +45 -216
- letta_client/client_side_access_tokens/raw_client.py +435 -0
- letta_client/client_side_access_tokens/types/__init__.py +2 -0
- letta_client/client_side_access_tokens/types/client_side_access_tokens_create_request_policy_item.py +4 -3
- letta_client/client_side_access_tokens/types/client_side_access_tokens_create_response.py +6 -5
- letta_client/client_side_access_tokens/types/client_side_access_tokens_create_response_policy.py +4 -3
- letta_client/client_side_access_tokens/types/client_side_access_tokens_create_response_policy_data_item.py +4 -3
- letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response.py +6 -5
- letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response_tokens_item.py +6 -5
- letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response_tokens_item_policy.py +4 -3
- letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response_tokens_item_policy_data_item.py +4 -3
- letta_client/core/__init__.py +5 -0
- letta_client/core/api_error.py +13 -5
- letta_client/core/client_wrapper.py +14 -5
- letta_client/core/force_multipart.py +16 -0
- letta_client/core/http_client.py +70 -26
- letta_client/core/http_response.py +55 -0
- letta_client/core/jsonable_encoder.py +0 -1
- letta_client/core/pydantic_utilities.py +70 -111
- letta_client/core/serialization.py +7 -3
- letta_client/core/unchecked_base_model.py +40 -4
- letta_client/embedding_models/__init__.py +2 -0
- letta_client/embedding_models/client.py +31 -65
- letta_client/embedding_models/raw_client.py +117 -0
- letta_client/errors/__init__.py +2 -0
- letta_client/errors/bad_request_error.py +4 -3
- letta_client/errors/conflict_error.py +4 -2
- letta_client/errors/internal_server_error.py +4 -3
- letta_client/errors/not_found_error.py +4 -3
- letta_client/errors/payment_required_error.py +4 -2
- letta_client/errors/unprocessable_entity_error.py +4 -2
- letta_client/folders/__init__.py +2 -0
- letta_client/folders/client.py +100 -564
- letta_client/folders/files/__init__.py +2 -0
- letta_client/folders/files/client.py +44 -189
- letta_client/folders/files/raw_client.py +391 -0
- letta_client/folders/passages/__init__.py +2 -0
- letta_client/folders/passages/client.py +33 -74
- letta_client/folders/passages/raw_client.py +162 -0
- letta_client/folders/raw_client.py +1084 -0
- letta_client/groups/__init__.py +2 -0
- letta_client/groups/client.py +87 -406
- letta_client/groups/messages/__init__.py +2 -0
- letta_client/groups/messages/client.py +110 -371
- letta_client/groups/messages/raw_client.py +881 -0
- letta_client/groups/messages/types/__init__.py +2 -0
- letta_client/groups/messages/types/letta_streaming_response.py +5 -4
- letta_client/groups/messages/types/messages_modify_request.py +3 -2
- letta_client/groups/messages/types/messages_modify_response.py +5 -4
- letta_client/groups/raw_client.py +807 -0
- letta_client/groups/types/__init__.py +2 -0
- letta_client/groups/types/group_create_manager_config.py +1 -0
- letta_client/groups/types/group_update_manager_config.py +1 -0
- letta_client/health/__init__.py +2 -0
- letta_client/health/client.py +31 -43
- letta_client/health/raw_client.py +85 -0
- letta_client/identities/__init__.py +2 -0
- letta_client/identities/client.py +115 -498
- letta_client/identities/properties/__init__.py +2 -0
- letta_client/identities/properties/client.py +32 -76
- letta_client/identities/properties/raw_client.py +152 -0
- letta_client/identities/raw_client.py +1010 -0
- letta_client/jobs/__init__.py +2 -0
- letta_client/jobs/client.py +67 -310
- letta_client/jobs/raw_client.py +624 -0
- letta_client/messages/__init__.py +2 -0
- letta_client/messages/client.py +41 -74
- letta_client/messages/raw_client.py +186 -0
- letta_client/models/__init__.py +2 -0
- letta_client/models/client.py +39 -73
- letta_client/models/raw_client.py +151 -0
- letta_client/projects/__init__.py +2 -0
- letta_client/projects/client.py +31 -53
- letta_client/projects/raw_client.py +125 -0
- letta_client/projects/types/__init__.py +2 -0
- letta_client/projects/types/projects_list_response.py +5 -4
- letta_client/projects/types/projects_list_response_projects_item.py +3 -2
- letta_client/providers/__init__.py +2 -0
- letta_client/providers/client.py +62 -335
- letta_client/providers/raw_client.py +664 -0
- letta_client/runs/__init__.py +2 -0
- letta_client/runs/client.py +56 -258
- letta_client/runs/messages/__init__.py +2 -0
- letta_client/runs/messages/client.py +34 -79
- letta_client/runs/messages/raw_client.py +209 -0
- letta_client/runs/raw_client.py +440 -0
- letta_client/runs/steps/__init__.py +2 -0
- letta_client/runs/steps/client.py +33 -76
- letta_client/runs/steps/raw_client.py +192 -0
- letta_client/runs/usage/__init__.py +2 -0
- letta_client/runs/usage/client.py +31 -66
- letta_client/runs/usage/raw_client.py +122 -0
- letta_client/sources/__init__.py +2 -0
- letta_client/sources/client.py +107 -625
- letta_client/sources/files/__init__.py +2 -0
- letta_client/sources/files/client.py +44 -189
- letta_client/sources/files/raw_client.py +391 -0
- letta_client/sources/passages/__init__.py +2 -0
- letta_client/sources/passages/client.py +33 -74
- letta_client/sources/passages/raw_client.py +162 -0
- letta_client/sources/raw_client.py +1209 -0
- letta_client/steps/__init__.py +2 -0
- letta_client/steps/client.py +65 -153
- letta_client/steps/feedback/__init__.py +2 -0
- letta_client/steps/feedback/client.py +32 -73
- letta_client/steps/feedback/raw_client.py +141 -0
- letta_client/steps/raw_client.py +355 -0
- letta_client/steps/types/__init__.py +2 -0
- letta_client/tags/__init__.py +2 -0
- letta_client/tags/client.py +33 -73
- letta_client/tags/raw_client.py +148 -0
- letta_client/telemetry/__init__.py +2 -0
- letta_client/telemetry/client.py +31 -66
- letta_client/telemetry/raw_client.py +118 -0
- letta_client/templates/__init__.py +2 -0
- letta_client/templates/agents/__init__.py +2 -0
- letta_client/templates/agents/client.py +48 -96
- letta_client/templates/agents/raw_client.py +227 -0
- letta_client/templates/agents/types/__init__.py +2 -0
- letta_client/templates/agents/types/agents_create_request_initial_message_sequence_item.py +4 -3
- letta_client/templates/agents/types/agents_create_response.py +4 -3
- letta_client/templates/client.py +36 -57
- letta_client/templates/raw_client.py +133 -0
- letta_client/templates/types/__init__.py +2 -0
- letta_client/templates/types/templates_list_response.py +5 -4
- letta_client/templates/types/templates_list_response_templates_item.py +3 -2
- letta_client/tools/__init__.py +2 -0
- letta_client/tools/client.py +195 -1322
- letta_client/tools/raw_client.py +2565 -0
- letta_client/tools/types/__init__.py +2 -0
- letta_client/tools/types/add_mcp_server_request.py +2 -1
- letta_client/tools/types/add_mcp_server_response_item.py +2 -1
- letta_client/tools/types/connect_mcp_server_request.py +2 -1
- letta_client/tools/types/delete_mcp_server_response_item.py +2 -1
- letta_client/tools/types/list_mcp_servers_response_value.py +1 -0
- letta_client/tools/types/streaming_response.py +5 -4
- letta_client/tools/types/test_mcp_server_request.py +2 -1
- letta_client/tools/types/update_mcp_server_request.py +2 -1
- letta_client/tools/types/update_mcp_server_response.py +2 -1
- letta_client/types/__init__.py +2 -0
- letta_client/types/action_model.py +6 -5
- letta_client/types/action_parameters_model.py +3 -2
- letta_client/types/action_response_model.py +3 -2
- letta_client/types/agent_environment_variable.py +3 -2
- letta_client/types/agent_schema.py +7 -6
- letta_client/types/agent_schema_tool_rules_item.py +2 -1
- letta_client/types/agent_state.py +9 -8
- letta_client/types/agent_state_response_format.py +1 -0
- letta_client/types/agent_state_tool_rules_item.py +4 -3
- letta_client/types/app_auth_scheme.py +4 -3
- letta_client/types/app_model.py +5 -4
- letta_client/types/assistant_message.py +3 -2
- letta_client/types/assistant_message_content.py +1 -0
- letta_client/types/audio.py +3 -2
- letta_client/types/auth_request.py +2 -1
- letta_client/types/auth_response.py +5 -4
- letta_client/types/auth_scheme_field.py +3 -2
- letta_client/types/bad_request_error_body.py +3 -2
- letta_client/types/base_64_image.py +2 -1
- letta_client/types/base_tool_rule_schema.py +3 -2
- letta_client/types/batch_job.py +4 -3
- letta_client/types/block.py +3 -2
- letta_client/types/block_update.py +2 -1
- letta_client/types/chat_completion_assistant_message_param.py +5 -4
- letta_client/types/chat_completion_assistant_message_param_content.py +1 -0
- letta_client/types/chat_completion_assistant_message_param_content_item.py +2 -1
- letta_client/types/chat_completion_audio_param.py +4 -3
- letta_client/types/chat_completion_content_part_image_param.py +4 -3
- letta_client/types/chat_completion_content_part_input_audio_param.py +4 -3
- letta_client/types/chat_completion_content_part_refusal_param.py +3 -2
- letta_client/types/chat_completion_content_part_text_param.py +3 -2
- letta_client/types/chat_completion_developer_message_param.py +4 -3
- letta_client/types/chat_completion_developer_message_param_content.py +1 -0
- letta_client/types/chat_completion_function_call_option_param.py +3 -2
- letta_client/types/chat_completion_function_message_param.py +3 -2
- letta_client/types/chat_completion_message_tool_call.py +4 -3
- letta_client/types/chat_completion_message_tool_call_param.py +4 -3
- letta_client/types/chat_completion_named_tool_choice_param.py +4 -3
- letta_client/types/chat_completion_prediction_content_param.py +4 -3
- letta_client/types/chat_completion_prediction_content_param_content.py +1 -0
- letta_client/types/chat_completion_stream_options_param.py +3 -2
- letta_client/types/chat_completion_system_message_param.py +4 -3
- letta_client/types/chat_completion_system_message_param_content.py +1 -0
- letta_client/types/chat_completion_tool_message_param.py +4 -3
- letta_client/types/chat_completion_tool_message_param_content.py +1 -0
- letta_client/types/chat_completion_tool_param.py +4 -3
- letta_client/types/chat_completion_user_message_param.py +4 -3
- letta_client/types/chat_completion_user_message_param_content.py +1 -0
- letta_client/types/chat_completion_user_message_param_content_item.py +2 -1
- letta_client/types/child_tool_rule.py +3 -2
- letta_client/types/child_tool_rule_schema.py +3 -2
- letta_client/types/code_input.py +3 -2
- letta_client/types/completion_create_params_non_streaming.py +10 -9
- letta_client/types/completion_create_params_non_streaming_function_call.py +1 -0
- letta_client/types/completion_create_params_non_streaming_messages_item.py +4 -3
- letta_client/types/completion_create_params_non_streaming_response_format.py +3 -2
- letta_client/types/completion_create_params_non_streaming_tool_choice.py +1 -0
- letta_client/types/completion_create_params_streaming.py +10 -9
- letta_client/types/completion_create_params_streaming_function_call.py +1 -0
- letta_client/types/completion_create_params_streaming_messages_item.py +4 -3
- letta_client/types/completion_create_params_streaming_response_format.py +3 -2
- letta_client/types/completion_create_params_streaming_tool_choice.py +1 -0
- letta_client/types/conditional_tool_rule.py +3 -2
- letta_client/types/conditional_tool_rule_schema.py +3 -2
- letta_client/types/conflict_error_body.py +3 -2
- letta_client/types/context_window_overview.py +4 -3
- letta_client/types/continue_tool_rule.py +3 -2
- letta_client/types/core_memory_block_schema.py +4 -3
- letta_client/types/create_block.py +3 -2
- letta_client/types/dynamic_manager.py +2 -1
- letta_client/types/dynamic_manager_update.py +2 -1
- letta_client/types/e_2_b_sandbox_config.py +2 -1
- letta_client/types/embedding_config.py +4 -3
- letta_client/types/file.py +4 -3
- letta_client/types/file_block.py +4 -3
- letta_client/types/file_file.py +3 -2
- letta_client/types/file_metadata.py +5 -4
- letta_client/types/file_stats.py +3 -2
- letta_client/types/folder.py +5 -4
- letta_client/types/function_call.py +3 -2
- letta_client/types/function_definition_input.py +3 -2
- letta_client/types/function_definition_output.py +3 -2
- letta_client/types/function_output.py +3 -2
- letta_client/types/function_tool.py +4 -3
- letta_client/types/generate_tool_input.py +3 -2
- letta_client/types/generate_tool_output.py +4 -3
- letta_client/types/group.py +4 -3
- letta_client/types/health.py +3 -2
- letta_client/types/hidden_reasoning_message.py +4 -3
- letta_client/types/http_validation_error.py +4 -3
- letta_client/types/identity.py +4 -3
- letta_client/types/identity_property.py +5 -4
- letta_client/types/image_content.py +3 -2
- letta_client/types/image_content_source.py +1 -0
- letta_client/types/image_url.py +4 -3
- letta_client/types/init_tool_rule.py +3 -2
- letta_client/types/input_audio.py +4 -3
- letta_client/types/internal_server_error_body.py +3 -2
- letta_client/types/job.py +4 -3
- letta_client/types/json_object_response_format.py +3 -2
- letta_client/types/json_schema.py +4 -3
- letta_client/types/json_schema_response_format.py +2 -1
- letta_client/types/letta_batch_messages.py +4 -3
- letta_client/types/letta_batch_request.py +4 -3
- letta_client/types/letta_image.py +2 -1
- letta_client/types/letta_message_content_union.py +4 -3
- letta_client/types/letta_message_union.py +5 -4
- letta_client/types/letta_ping.py +2 -1
- letta_client/types/letta_request.py +4 -3
- letta_client/types/letta_request_config.py +3 -2
- letta_client/types/letta_response.py +4 -3
- letta_client/types/letta_stop_reason.py +3 -2
- letta_client/types/letta_streaming_request.py +9 -3
- letta_client/types/letta_usage_statistics.py +3 -2
- letta_client/types/letta_user_message_content_union.py +2 -1
- letta_client/types/llm_config.py +6 -5
- letta_client/types/local_sandbox_config.py +3 -2
- letta_client/types/max_count_per_step_tool_rule.py +3 -2
- letta_client/types/max_count_per_step_tool_rule_schema.py +3 -2
- letta_client/types/mcp_tool.py +4 -3
- letta_client/types/memory.py +4 -3
- letta_client/types/message.py +6 -5
- letta_client/types/message_content_item.py +1 -0
- letta_client/types/message_create.py +5 -4
- letta_client/types/message_create_content.py +1 -0
- letta_client/types/message_schema.py +4 -3
- letta_client/types/modal_sandbox_config.py +2 -1
- letta_client/types/not_found_error_body.py +3 -2
- letta_client/types/omitted_reasoning_content.py +3 -2
- letta_client/types/openai_types_chat_chat_completion_message_tool_call_param_function.py +3 -2
- letta_client/types/openai_types_chat_chat_completion_named_tool_choice_param_function.py +3 -2
- letta_client/types/openai_types_chat_completion_create_params_function.py +3 -2
- letta_client/types/organization.py +3 -2
- letta_client/types/organization_create.py +2 -1
- letta_client/types/organization_sources_stats.py +3 -2
- letta_client/types/organization_update.py +2 -1
- letta_client/types/parameter_properties.py +3 -2
- letta_client/types/parameters_schema.py +4 -3
- letta_client/types/parent_tool_rule.py +3 -2
- letta_client/types/passage.py +4 -3
- letta_client/types/payment_required_error_body.py +3 -2
- letta_client/types/pip_requirement.py +3 -2
- letta_client/types/provider.py +5 -4
- letta_client/types/provider_check.py +4 -3
- letta_client/types/provider_trace.py +3 -2
- letta_client/types/reasoning_content.py +2 -1
- letta_client/types/reasoning_message.py +4 -3
- letta_client/types/redacted_reasoning_content.py +2 -1
- letta_client/types/required_before_exit_tool_rule.py +3 -2
- letta_client/types/response_format_json_object.py +3 -2
- letta_client/types/response_format_json_schema.py +4 -3
- letta_client/types/response_format_text.py +3 -2
- letta_client/types/round_robin_manager.py +2 -1
- letta_client/types/round_robin_manager_update.py +2 -1
- letta_client/types/run.py +4 -3
- letta_client/types/sandbox_config.py +4 -3
- letta_client/types/sandbox_config_create.py +4 -3
- letta_client/types/sandbox_config_create_config.py +2 -1
- letta_client/types/sandbox_config_update.py +3 -2
- letta_client/types/sandbox_config_update_config.py +2 -1
- letta_client/types/sandbox_environment_variable.py +3 -2
- letta_client/types/sandbox_environment_variable_create.py +3 -2
- letta_client/types/sandbox_environment_variable_update.py +2 -1
- letta_client/types/sleeptime_manager.py +2 -1
- letta_client/types/sleeptime_manager_update.py +2 -1
- letta_client/types/source.py +5 -4
- letta_client/types/source_create.py +4 -3
- letta_client/types/source_stats.py +4 -3
- letta_client/types/source_update.py +3 -2
- letta_client/types/sse_server_config.py +4 -3
- letta_client/types/stdio_server_config.py +4 -3
- letta_client/types/step.py +5 -4
- letta_client/types/streamable_http_server_config.py +4 -3
- letta_client/types/supervisor_manager.py +2 -1
- letta_client/types/supervisor_manager_update.py +2 -1
- letta_client/types/system_message.py +2 -1
- letta_client/types/tag_schema.py +3 -2
- letta_client/types/terminal_tool_rule.py +3 -2
- letta_client/types/text_content.py +2 -1
- letta_client/types/text_response_format.py +3 -2
- letta_client/types/tool.py +5 -4
- letta_client/types/tool_annotations.py +4 -3
- letta_client/types/tool_call.py +3 -2
- letta_client/types/tool_call_content.py +2 -1
- letta_client/types/tool_call_delta.py +3 -2
- letta_client/types/tool_call_message.py +4 -3
- letta_client/types/tool_call_message_tool_call.py +1 -0
- letta_client/types/tool_create.py +3 -2
- letta_client/types/tool_env_var_schema.py +3 -2
- letta_client/types/tool_json_schema.py +4 -3
- letta_client/types/tool_return.py +4 -3
- letta_client/types/tool_return_content.py +2 -1
- letta_client/types/tool_return_message.py +4 -3
- letta_client/types/tool_schema.py +5 -4
- letta_client/types/update_assistant_message.py +3 -2
- letta_client/types/update_assistant_message_content.py +1 -0
- letta_client/types/update_reasoning_message.py +3 -2
- letta_client/types/update_ssemcp_server.py +2 -1
- letta_client/types/update_stdio_mcp_server.py +3 -2
- letta_client/types/update_streamable_httpmcp_server.py +2 -1
- letta_client/types/update_system_message.py +2 -1
- letta_client/types/update_user_message.py +3 -2
- letta_client/types/update_user_message_content.py +1 -0
- letta_client/types/url_image.py +2 -1
- letta_client/types/usage_statistics.py +5 -4
- letta_client/types/usage_statistics_completion_token_details.py +3 -2
- letta_client/types/usage_statistics_prompt_token_details.py +3 -2
- letta_client/types/user.py +3 -2
- letta_client/types/user_create.py +3 -2
- letta_client/types/user_message.py +3 -2
- letta_client/types/user_message_content.py +1 -0
- letta_client/types/user_update.py +3 -2
- letta_client/types/validation_error.py +4 -3
- letta_client/types/voice_sleeptime_manager.py +2 -1
- letta_client/types/voice_sleeptime_manager_update.py +2 -1
- letta_client/types/web_search_options.py +4 -3
- letta_client/types/web_search_options_user_location.py +4 -3
- letta_client/types/web_search_options_user_location_approximate.py +3 -2
- letta_client/voice/__init__.py +2 -0
- letta_client/voice/client.py +33 -74
- letta_client/voice/raw_client.py +154 -0
- {letta_client-0.1.233.dist-info → letta_client-0.1.234.dist-info}/METADATA +24 -3
- letta_client-0.1.234.dist-info/RECORD +503 -0
- letta_client-0.1.233.dist-info/RECORD +0 -455
- {letta_client-0.1.233.dist-info → letta_client-0.1.234.dist-info}/WHEEL +0 -0
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
import typing
|
|
4
|
+
|
|
4
5
|
import pydantic
|
|
5
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
-
import
|
|
7
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
class UserCreate(UncheckedBaseModel):
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
3
|
import datetime as dt
|
|
5
4
|
import typing
|
|
6
|
-
|
|
5
|
+
|
|
7
6
|
import pydantic
|
|
8
7
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
9
|
+
from .user_message_content import UserMessageContent
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
class UserMessage(UncheckedBaseModel):
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
-
import pydantic
|
|
5
3
|
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
class UserUpdate(UncheckedBaseModel):
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
3
|
import typing
|
|
5
|
-
|
|
6
|
-
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
4
|
+
|
|
7
5
|
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
8
|
+
from .validation_error_loc_item import ValidationErrorLocItem
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
class ValidationError(UncheckedBaseModel):
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
3
|
import typing
|
|
4
|
+
|
|
5
5
|
import pydantic
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
class VoiceSleeptimeManager(UncheckedBaseModel):
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
3
|
import typing
|
|
4
|
+
|
|
5
5
|
import pydantic
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
class VoiceSleeptimeManagerUpdate(UncheckedBaseModel):
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
3
|
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
5
8
|
from .web_search_options_search_context_size import WebSearchOptionsSearchContextSize
|
|
6
9
|
from .web_search_options_user_location import WebSearchOptionsUserLocation
|
|
7
|
-
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
|
-
import pydantic
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
class WebSearchOptions(UncheckedBaseModel):
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
-
from .web_search_options_user_location_approximate import WebSearchOptionsUserLocationApproximate
|
|
5
3
|
import typing
|
|
6
|
-
|
|
4
|
+
|
|
7
5
|
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
8
|
+
from .web_search_options_user_location_approximate import WebSearchOptionsUserLocationApproximate
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
class WebSearchOptionsUserLocation(UncheckedBaseModel):
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
3
|
import typing
|
|
5
|
-
|
|
4
|
+
|
|
6
5
|
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
class WebSearchOptionsUserLocationApproximate(UncheckedBaseModel):
|
letta_client/voice/__init__.py
CHANGED
letta_client/voice/client.py
CHANGED
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
3
|
import typing
|
|
4
|
-
|
|
4
|
+
|
|
5
|
+
from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
|
|
5
6
|
from ..core.request_options import RequestOptions
|
|
6
|
-
from
|
|
7
|
-
from ..core.unchecked_base_model import construct_type
|
|
8
|
-
from ..errors.unprocessable_entity_error import UnprocessableEntityError
|
|
9
|
-
from ..types.http_validation_error import HttpValidationError
|
|
10
|
-
from json.decoder import JSONDecodeError
|
|
11
|
-
from ..core.api_error import ApiError
|
|
12
|
-
from ..core.client_wrapper import AsyncClientWrapper
|
|
7
|
+
from .raw_client import AsyncRawVoiceClient, RawVoiceClient
|
|
13
8
|
|
|
14
9
|
# this is used as the default value for optional parameters
|
|
15
10
|
OMIT = typing.cast(typing.Any, ...)
|
|
@@ -17,7 +12,18 @@ OMIT = typing.cast(typing.Any, ...)
|
|
|
17
12
|
|
|
18
13
|
class VoiceClient:
|
|
19
14
|
def __init__(self, *, client_wrapper: SyncClientWrapper):
|
|
20
|
-
self.
|
|
15
|
+
self._raw_client = RawVoiceClient(client_wrapper=client_wrapper)
|
|
16
|
+
|
|
17
|
+
@property
|
|
18
|
+
def with_raw_response(self) -> RawVoiceClient:
|
|
19
|
+
"""
|
|
20
|
+
Retrieves a raw implementation of this client that returns raw responses.
|
|
21
|
+
|
|
22
|
+
Returns
|
|
23
|
+
-------
|
|
24
|
+
RawVoiceClient
|
|
25
|
+
"""
|
|
26
|
+
return self._raw_client
|
|
21
27
|
|
|
22
28
|
def create_voice_chat_completions(
|
|
23
29
|
self,
|
|
@@ -57,44 +63,26 @@ class VoiceClient:
|
|
|
57
63
|
request={"key": "value"},
|
|
58
64
|
)
|
|
59
65
|
"""
|
|
60
|
-
_response = self.
|
|
61
|
-
|
|
62
|
-
method="POST",
|
|
63
|
-
json=request,
|
|
64
|
-
headers={
|
|
65
|
-
"user-id": str(user_id) if user_id is not None else None,
|
|
66
|
-
},
|
|
67
|
-
request_options=request_options,
|
|
68
|
-
omit=OMIT,
|
|
66
|
+
_response = self._raw_client.create_voice_chat_completions(
|
|
67
|
+
agent_id, request=request, user_id=user_id, request_options=request_options
|
|
69
68
|
)
|
|
70
|
-
|
|
71
|
-
if 200 <= _response.status_code < 300:
|
|
72
|
-
return typing.cast(
|
|
73
|
-
typing.Optional[typing.Any],
|
|
74
|
-
construct_type(
|
|
75
|
-
type_=typing.Optional[typing.Any], # type: ignore
|
|
76
|
-
object_=_response.json(),
|
|
77
|
-
),
|
|
78
|
-
)
|
|
79
|
-
if _response.status_code == 422:
|
|
80
|
-
raise UnprocessableEntityError(
|
|
81
|
-
typing.cast(
|
|
82
|
-
HttpValidationError,
|
|
83
|
-
construct_type(
|
|
84
|
-
type_=HttpValidationError, # type: ignore
|
|
85
|
-
object_=_response.json(),
|
|
86
|
-
),
|
|
87
|
-
)
|
|
88
|
-
)
|
|
89
|
-
_response_json = _response.json()
|
|
90
|
-
except JSONDecodeError:
|
|
91
|
-
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
92
|
-
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
69
|
+
return _response.data
|
|
93
70
|
|
|
94
71
|
|
|
95
72
|
class AsyncVoiceClient:
|
|
96
73
|
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
97
|
-
self.
|
|
74
|
+
self._raw_client = AsyncRawVoiceClient(client_wrapper=client_wrapper)
|
|
75
|
+
|
|
76
|
+
@property
|
|
77
|
+
def with_raw_response(self) -> AsyncRawVoiceClient:
|
|
78
|
+
"""
|
|
79
|
+
Retrieves a raw implementation of this client that returns raw responses.
|
|
80
|
+
|
|
81
|
+
Returns
|
|
82
|
+
-------
|
|
83
|
+
AsyncRawVoiceClient
|
|
84
|
+
"""
|
|
85
|
+
return self._raw_client
|
|
98
86
|
|
|
99
87
|
async def create_voice_chat_completions(
|
|
100
88
|
self,
|
|
@@ -142,36 +130,7 @@ class AsyncVoiceClient:
|
|
|
142
130
|
|
|
143
131
|
asyncio.run(main())
|
|
144
132
|
"""
|
|
145
|
-
_response = await self.
|
|
146
|
-
|
|
147
|
-
method="POST",
|
|
148
|
-
json=request,
|
|
149
|
-
headers={
|
|
150
|
-
"user-id": str(user_id) if user_id is not None else None,
|
|
151
|
-
},
|
|
152
|
-
request_options=request_options,
|
|
153
|
-
omit=OMIT,
|
|
133
|
+
_response = await self._raw_client.create_voice_chat_completions(
|
|
134
|
+
agent_id, request=request, user_id=user_id, request_options=request_options
|
|
154
135
|
)
|
|
155
|
-
|
|
156
|
-
if 200 <= _response.status_code < 300:
|
|
157
|
-
return typing.cast(
|
|
158
|
-
typing.Optional[typing.Any],
|
|
159
|
-
construct_type(
|
|
160
|
-
type_=typing.Optional[typing.Any], # type: ignore
|
|
161
|
-
object_=_response.json(),
|
|
162
|
-
),
|
|
163
|
-
)
|
|
164
|
-
if _response.status_code == 422:
|
|
165
|
-
raise UnprocessableEntityError(
|
|
166
|
-
typing.cast(
|
|
167
|
-
HttpValidationError,
|
|
168
|
-
construct_type(
|
|
169
|
-
type_=HttpValidationError, # type: ignore
|
|
170
|
-
object_=_response.json(),
|
|
171
|
-
),
|
|
172
|
-
)
|
|
173
|
-
)
|
|
174
|
-
_response_json = _response.json()
|
|
175
|
-
except JSONDecodeError:
|
|
176
|
-
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
177
|
-
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
136
|
+
return _response.data
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from json.decoder import JSONDecodeError
|
|
5
|
+
|
|
6
|
+
from ..core.api_error import ApiError
|
|
7
|
+
from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
|
|
8
|
+
from ..core.http_response import AsyncHttpResponse, HttpResponse
|
|
9
|
+
from ..core.jsonable_encoder import jsonable_encoder
|
|
10
|
+
from ..core.request_options import RequestOptions
|
|
11
|
+
from ..core.unchecked_base_model import construct_type
|
|
12
|
+
from ..errors.unprocessable_entity_error import UnprocessableEntityError
|
|
13
|
+
from ..types.http_validation_error import HttpValidationError
|
|
14
|
+
|
|
15
|
+
# this is used as the default value for optional parameters
|
|
16
|
+
OMIT = typing.cast(typing.Any, ...)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class RawVoiceClient:
|
|
20
|
+
def __init__(self, *, client_wrapper: SyncClientWrapper):
|
|
21
|
+
self._client_wrapper = client_wrapper
|
|
22
|
+
|
|
23
|
+
def create_voice_chat_completions(
|
|
24
|
+
self,
|
|
25
|
+
agent_id: str,
|
|
26
|
+
*,
|
|
27
|
+
request: typing.Dict[str, typing.Optional[typing.Any]],
|
|
28
|
+
user_id: typing.Optional[str] = None,
|
|
29
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
30
|
+
) -> HttpResponse[typing.Optional[typing.Any]]:
|
|
31
|
+
"""
|
|
32
|
+
Parameters
|
|
33
|
+
----------
|
|
34
|
+
agent_id : str
|
|
35
|
+
|
|
36
|
+
request : typing.Dict[str, typing.Optional[typing.Any]]
|
|
37
|
+
|
|
38
|
+
user_id : typing.Optional[str]
|
|
39
|
+
|
|
40
|
+
request_options : typing.Optional[RequestOptions]
|
|
41
|
+
Request-specific configuration.
|
|
42
|
+
|
|
43
|
+
Returns
|
|
44
|
+
-------
|
|
45
|
+
HttpResponse[typing.Optional[typing.Any]]
|
|
46
|
+
Successful response
|
|
47
|
+
"""
|
|
48
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
49
|
+
f"v1/voice-beta/{jsonable_encoder(agent_id)}/chat/completions",
|
|
50
|
+
method="POST",
|
|
51
|
+
json=request,
|
|
52
|
+
headers={
|
|
53
|
+
"content-type": "application/json",
|
|
54
|
+
"user-id": str(user_id) if user_id is not None else None,
|
|
55
|
+
},
|
|
56
|
+
request_options=request_options,
|
|
57
|
+
omit=OMIT,
|
|
58
|
+
)
|
|
59
|
+
try:
|
|
60
|
+
if _response is None or not _response.text.strip():
|
|
61
|
+
return HttpResponse(response=_response, data=None)
|
|
62
|
+
if 200 <= _response.status_code < 300:
|
|
63
|
+
_data = typing.cast(
|
|
64
|
+
typing.Optional[typing.Any],
|
|
65
|
+
construct_type(
|
|
66
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
67
|
+
object_=_response.json(),
|
|
68
|
+
),
|
|
69
|
+
)
|
|
70
|
+
return HttpResponse(response=_response, data=_data)
|
|
71
|
+
if _response.status_code == 422:
|
|
72
|
+
raise UnprocessableEntityError(
|
|
73
|
+
headers=dict(_response.headers),
|
|
74
|
+
body=typing.cast(
|
|
75
|
+
HttpValidationError,
|
|
76
|
+
construct_type(
|
|
77
|
+
type_=HttpValidationError, # type: ignore
|
|
78
|
+
object_=_response.json(),
|
|
79
|
+
),
|
|
80
|
+
),
|
|
81
|
+
)
|
|
82
|
+
_response_json = _response.json()
|
|
83
|
+
except JSONDecodeError:
|
|
84
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
85
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
class AsyncRawVoiceClient:
|
|
89
|
+
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
90
|
+
self._client_wrapper = client_wrapper
|
|
91
|
+
|
|
92
|
+
async def create_voice_chat_completions(
|
|
93
|
+
self,
|
|
94
|
+
agent_id: str,
|
|
95
|
+
*,
|
|
96
|
+
request: typing.Dict[str, typing.Optional[typing.Any]],
|
|
97
|
+
user_id: typing.Optional[str] = None,
|
|
98
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
99
|
+
) -> AsyncHttpResponse[typing.Optional[typing.Any]]:
|
|
100
|
+
"""
|
|
101
|
+
Parameters
|
|
102
|
+
----------
|
|
103
|
+
agent_id : str
|
|
104
|
+
|
|
105
|
+
request : typing.Dict[str, typing.Optional[typing.Any]]
|
|
106
|
+
|
|
107
|
+
user_id : typing.Optional[str]
|
|
108
|
+
|
|
109
|
+
request_options : typing.Optional[RequestOptions]
|
|
110
|
+
Request-specific configuration.
|
|
111
|
+
|
|
112
|
+
Returns
|
|
113
|
+
-------
|
|
114
|
+
AsyncHttpResponse[typing.Optional[typing.Any]]
|
|
115
|
+
Successful response
|
|
116
|
+
"""
|
|
117
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
118
|
+
f"v1/voice-beta/{jsonable_encoder(agent_id)}/chat/completions",
|
|
119
|
+
method="POST",
|
|
120
|
+
json=request,
|
|
121
|
+
headers={
|
|
122
|
+
"content-type": "application/json",
|
|
123
|
+
"user-id": str(user_id) if user_id is not None else None,
|
|
124
|
+
},
|
|
125
|
+
request_options=request_options,
|
|
126
|
+
omit=OMIT,
|
|
127
|
+
)
|
|
128
|
+
try:
|
|
129
|
+
if _response is None or not _response.text.strip():
|
|
130
|
+
return AsyncHttpResponse(response=_response, data=None)
|
|
131
|
+
if 200 <= _response.status_code < 300:
|
|
132
|
+
_data = typing.cast(
|
|
133
|
+
typing.Optional[typing.Any],
|
|
134
|
+
construct_type(
|
|
135
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
136
|
+
object_=_response.json(),
|
|
137
|
+
),
|
|
138
|
+
)
|
|
139
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
140
|
+
if _response.status_code == 422:
|
|
141
|
+
raise UnprocessableEntityError(
|
|
142
|
+
headers=dict(_response.headers),
|
|
143
|
+
body=typing.cast(
|
|
144
|
+
HttpValidationError,
|
|
145
|
+
construct_type(
|
|
146
|
+
type_=HttpValidationError, # type: ignore
|
|
147
|
+
object_=_response.json(),
|
|
148
|
+
),
|
|
149
|
+
),
|
|
150
|
+
)
|
|
151
|
+
_response_json = _response.json()
|
|
152
|
+
except JSONDecodeError:
|
|
153
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
154
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: letta-client
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.234
|
|
4
4
|
Summary:
|
|
5
5
|
Requires-Python: >=3.8,<4.0
|
|
6
6
|
Classifier: Intended Audience :: Developers
|
|
@@ -21,7 +21,7 @@ Classifier: Typing :: Typed
|
|
|
21
21
|
Requires-Dist: httpx (>=0.21.2)
|
|
22
22
|
Requires-Dist: httpx-sse (==0.4.0)
|
|
23
23
|
Requires-Dist: pydantic (>=1.9.2)
|
|
24
|
-
Requires-Dist: pydantic-core (>=2.18.2
|
|
24
|
+
Requires-Dist: pydantic-core (>=2.18.2)
|
|
25
25
|
Requires-Dist: typing_extensions (>=4.0.0)
|
|
26
26
|
Description-Content-Type: text/markdown
|
|
27
27
|
|
|
@@ -115,12 +115,32 @@ response = client.tools.connect_mcp_server(
|
|
|
115
115
|
args=["args"],
|
|
116
116
|
),
|
|
117
117
|
)
|
|
118
|
-
for chunk in response:
|
|
118
|
+
for chunk in response.data:
|
|
119
119
|
yield chunk
|
|
120
120
|
```
|
|
121
121
|
|
|
122
122
|
## Advanced
|
|
123
123
|
|
|
124
|
+
### Access Raw Response Data
|
|
125
|
+
|
|
126
|
+
The SDK provides access to raw response data, including headers, through the `.with_raw_response` property.
|
|
127
|
+
The `.with_raw_response` property returns a "raw" client that can be used to access the `.headers` and `.data` attributes.
|
|
128
|
+
|
|
129
|
+
```python
|
|
130
|
+
from letta_client import Letta
|
|
131
|
+
|
|
132
|
+
client = Letta(
|
|
133
|
+
...,
|
|
134
|
+
)
|
|
135
|
+
response = client.tools.with_raw_response.create(...)
|
|
136
|
+
print(response.headers) # access the response headers
|
|
137
|
+
print(response.data) # access the underlying object
|
|
138
|
+
with client.tools.with_raw_response.connect_mcp_server(...) as response:
|
|
139
|
+
print(response.headers) # access the response headers
|
|
140
|
+
for chunk in response.data:
|
|
141
|
+
print(chunk) # access the underlying object(s)
|
|
142
|
+
```
|
|
143
|
+
|
|
124
144
|
### Retries
|
|
125
145
|
|
|
126
146
|
The SDK is instrumented with automatic retries with exponential backoff. A request will be retried as long
|
|
@@ -165,6 +185,7 @@ client.tools.create(..., request_options={
|
|
|
165
185
|
|
|
166
186
|
You can override the `httpx` client to customize it for your use-case. Some common use-cases include support for proxies
|
|
167
187
|
and transports.
|
|
188
|
+
|
|
168
189
|
```python
|
|
169
190
|
import httpx
|
|
170
191
|
from letta_client import Letta
|