letta-client 0.1.22__py3-none-any.whl → 0.1.24__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.
- letta_client/__init__.py +443 -9
- letta_client/agents/__init__.py +1 -2
- letta_client/agents/messages/__init__.py +2 -2
- letta_client/agents/messages/client.py +114 -63
- letta_client/agents/messages/types/__init__.py +1 -2
- letta_client/agents/types/create_agent_request_tool_rules_item.py +3 -3
- letta_client/agents/types/update_agent_tool_rules_item.py +3 -3
- letta_client/base_client.py +8 -0
- letta_client/core/client_wrapper.py +1 -1
- letta_client/steps/__init__.py +2 -0
- letta_client/steps/client.py +339 -0
- letta_client/templates/__init__.py +311 -0
- letta_client/templates/client.py +188 -0
- letta_client/templates/types/__init__.py +611 -0
- letta_client/templates/types/templates_create_agents_from_template_response.py +22 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item.py +88 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_agent_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_created_at.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_created_at_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_created_by_id.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_created_by_id_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_description.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_description_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config.py +58 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_azure_deployment.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_azure_deployment_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_azure_endpoint.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_azure_endpoint_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_azure_version.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_azure_version_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_embedding_chunk_size.py +15 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_embedding_chunk_size_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_embedding_endpoint.py +15 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_embedding_endpoint_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_embedding_endpoint_type.py +27 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_handle.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_embedding_config_handle_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_last_updated_by_id.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_last_updated_by_id_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config.py +46 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_handle.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_handle_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_model_endpoint.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_model_endpoint_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_model_endpoint_type.py +27 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_model_wrapper.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_model_wrapper_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_put_inner_thoughts_in_kwargs.py +15 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_put_inner_thoughts_in_kwargs_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_llm_config_temperature.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory.py +26 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item.py +65 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_created_by_id.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_created_by_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_description.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_description_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_id.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_is_template.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_label.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_label_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_last_updated_by_id.py +15 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_last_updated_by_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_limit.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_metadata.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_metadata_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_name.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_name_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_organization_id.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_blocks_item_organization_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_memory_prompt_template.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_message_ids.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_message_ids_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_metadata.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_metadata_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_organization_id.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_organization_id_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item.py +59 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_created_at.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_created_at_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_created_by_id.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_created_by_id_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_description.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_description_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config.py +60 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_azure_deployment.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_azure_deployment_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_azure_endpoint.py +15 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_azure_endpoint_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_azure_version.py +15 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_azure_version_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_embedding_chunk_size.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_embedding_chunk_size_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_embedding_endpoint.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_embedding_endpoint_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_embedding_endpoint_type.py +27 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_handle.py +15 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_embedding_config_handle_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_id.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_last_updated_by_id.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_last_updated_by_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_metadata.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_metadata_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_organization_id.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_organization_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_updated_at.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_sources_item_updated_at_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables.py +11 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item.py +61 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_created_at.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_created_at_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_created_by_id.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_created_by_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_description.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_description_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_id.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_last_updated_by_id.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_last_updated_by_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_organization_id.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_organization_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_updated_at.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_exec_environment_variables_item_updated_at_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item.py +10 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_child_output_mapping.py +36 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_child_output_mapping_default_child.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_child_output_mapping_default_child_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_child_output_mapping_require_output_mapping.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_child_output_mapping_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_children.py +24 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_children_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item.py +22 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_child_output_mapping.py +38 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_child_output_mapping_default_child.py +17 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_child_output_mapping_default_child_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_child_output_mapping_require_output_mapping.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_child_output_mapping_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_children.py +24 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_children_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_one.py +23 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_one_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_two.py +23 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_item_two_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_one.py +23 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_one_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_two.py +23 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tool_rules_item_two_type.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item.py +59 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_created_by_id.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_created_by_id_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_description.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_description_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_json_schema.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_json_schema_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_last_updated_by_id.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_last_updated_by_id_item.py +7 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_name.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_name_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_organization_id.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_organization_id_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_source_code.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_source_code_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_source_type.py +12 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_source_type_item.py +5 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_tools_item_tool_type.py +8 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_updated_at.py +13 -0
- letta_client/templates/types/templates_create_agents_from_template_response_agents_item_updated_at_item.py +5 -0
- letta_client/tools/client.py +8 -0
- letta_client/types/__init__.py +140 -8
- letta_client/types/action_model.py +6 -4
- letta_client/types/agent_state_tool_rules_item.py +3 -3
- letta_client/types/audio.py +19 -0
- letta_client/types/chat_completion_assistant_message_param.py +29 -0
- letta_client/types/chat_completion_assistant_message_param_content.py +8 -0
- letta_client/types/chat_completion_assistant_message_param_content_item.py +9 -0
- letta_client/types/chat_completion_audio_param.py +22 -0
- letta_client/types/chat_completion_audio_param_format.py +5 -0
- letta_client/types/chat_completion_audio_param_voice.py +7 -0
- letta_client/types/chat_completion_content_part_image_param.py +21 -0
- letta_client/types/chat_completion_content_part_input_audio_param.py +21 -0
- letta_client/types/chat_completion_content_part_refusal_param.py +20 -0
- letta_client/types/chat_completion_content_part_text_param.py +20 -0
- letta_client/types/chat_completion_developer_message_param.py +22 -0
- letta_client/types/chat_completion_developer_message_param_content.py +6 -0
- letta_client/types/chat_completion_function_call_option_param.py +19 -0
- letta_client/types/chat_completion_function_message_param.py +21 -0
- letta_client/types/chat_completion_message_tool_call_input.py +24 -0
- letta_client/types/{chat_completion_message_tool_call.py → chat_completion_message_tool_call_output.py} +3 -3
- letta_client/types/chat_completion_message_tool_call_param.py +24 -0
- letta_client/types/chat_completion_named_tool_choice_param.py +23 -0
- letta_client/types/chat_completion_prediction_content_param.py +21 -0
- letta_client/types/chat_completion_prediction_content_param_content.py +6 -0
- letta_client/types/chat_completion_stream_options_param.py +19 -0
- letta_client/types/chat_completion_system_message_param.py +22 -0
- letta_client/types/chat_completion_system_message_param_content.py +6 -0
- letta_client/types/chat_completion_tool_message_param.py +22 -0
- letta_client/types/chat_completion_tool_message_param_content.py +6 -0
- letta_client/types/chat_completion_tool_param.py +21 -0
- letta_client/types/chat_completion_user_message_param.py +22 -0
- letta_client/types/chat_completion_user_message_param_content.py +6 -0
- letta_client/types/chat_completion_user_message_param_content_item.py +10 -0
- letta_client/types/child_tool_rule.py +1 -2
- letta_client/types/completion_create_params_non_streaming.py +62 -0
- letta_client/types/completion_create_params_non_streaming_function_call.py +8 -0
- letta_client/types/completion_create_params_non_streaming_messages_item.py +18 -0
- letta_client/types/completion_create_params_non_streaming_modalities_item.py +5 -0
- letta_client/types/completion_create_params_non_streaming_model.py +44 -0
- letta_client/types/completion_create_params_non_streaming_reasoning_effort.py +5 -0
- letta_client/types/completion_create_params_non_streaming_response_format.py +10 -0
- letta_client/types/completion_create_params_non_streaming_service_tier.py +5 -0
- letta_client/types/completion_create_params_non_streaming_stop.py +5 -0
- letta_client/types/completion_create_params_non_streaming_tool_choice.py +8 -0
- letta_client/types/completion_create_params_streaming.py +62 -0
- letta_client/types/completion_create_params_streaming_function_call.py +8 -0
- letta_client/types/completion_create_params_streaming_messages_item.py +18 -0
- letta_client/types/completion_create_params_streaming_modalities_item.py +5 -0
- letta_client/types/completion_create_params_streaming_model.py +44 -0
- letta_client/types/completion_create_params_streaming_reasoning_effort.py +5 -0
- letta_client/types/completion_create_params_streaming_response_format.py +10 -0
- letta_client/types/completion_create_params_streaming_service_tier.py +5 -0
- letta_client/types/completion_create_params_streaming_stop.py +5 -0
- letta_client/types/completion_create_params_streaming_tool_choice.py +8 -0
- letta_client/types/conditional_tool_rule.py +1 -2
- letta_client/types/{function.py → function_call.py} +1 -1
- letta_client/types/{function_definition.py → function_definition_input.py} +1 -1
- letta_client/types/function_definition_output.py +22 -0
- letta_client/types/function_output.py +20 -0
- letta_client/types/function_tool.py +2 -2
- letta_client/types/image_url.py +21 -0
- letta_client/types/image_url_detail.py +5 -0
- letta_client/types/init_tool_rule.py +1 -2
- letta_client/types/input_audio.py +21 -0
- letta_client/types/input_audio_format.py +5 -0
- letta_client/types/json_schema.py +26 -0
- letta_client/types/letta_request.py +12 -3
- letta_client/types/message.py +2 -2
- letta_client/types/openai_types_chat_chat_completion_message_tool_call_function.py +20 -0
- letta_client/types/openai_types_chat_chat_completion_message_tool_call_param_function.py +20 -0
- letta_client/types/openai_types_chat_chat_completion_named_tool_choice_param_function.py +19 -0
- letta_client/types/openai_types_chat_completion_create_params_function.py +21 -0
- letta_client/types/response_format_json_object.py +19 -0
- letta_client/types/response_format_json_schema.py +21 -0
- letta_client/types/response_format_text.py +19 -0
- letta_client/types/step.py +90 -0
- letta_client/types/terminal_tool_rule.py +1 -2
- {letta_client-0.1.22.dist-info → letta_client-0.1.24.dist-info}/METADATA +1 -1
- letta_client-0.1.24.dist-info/RECORD +398 -0
- letta_client/agents/messages/types/messages_list_response.py +0 -7
- letta_client/types/tool_rule_type.py +0 -10
- letta_client-0.1.22.dist-info/RECORD +0 -179
- {letta_client-0.1.22.dist-info → letta_client-0.1.24.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class FunctionDefinitionOutput(UncheckedBaseModel):
|
|
10
|
+
name: str
|
|
11
|
+
description: typing.Optional[str] = None
|
|
12
|
+
parameters: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
13
|
+
strict: typing.Optional[bool] = None
|
|
14
|
+
|
|
15
|
+
if IS_PYDANTIC_V2:
|
|
16
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
17
|
+
else:
|
|
18
|
+
|
|
19
|
+
class Config:
|
|
20
|
+
frozen = True
|
|
21
|
+
smart_union = True
|
|
22
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
5
|
+
import typing
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class FunctionOutput(UncheckedBaseModel):
|
|
10
|
+
arguments: str
|
|
11
|
+
name: str
|
|
12
|
+
|
|
13
|
+
if IS_PYDANTIC_V2:
|
|
14
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
15
|
+
else:
|
|
16
|
+
|
|
17
|
+
class Config:
|
|
18
|
+
frozen = True
|
|
19
|
+
smart_union = True
|
|
20
|
+
extra = pydantic.Extra.allow
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
3
|
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
-
from .
|
|
4
|
+
from .function_definition_output import FunctionDefinitionOutput
|
|
5
5
|
import typing
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
7
|
import pydantic
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class FunctionTool(UncheckedBaseModel):
|
|
11
|
-
function:
|
|
11
|
+
function: FunctionDefinitionOutput
|
|
12
12
|
type: typing.Literal["function"] = "function"
|
|
13
13
|
|
|
14
14
|
if IS_PYDANTIC_V2:
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from .image_url_detail import ImageUrlDetail
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
import pydantic
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ImageUrl(UncheckedBaseModel):
|
|
11
|
+
url: str
|
|
12
|
+
detail: typing.Optional[ImageUrlDetail] = None
|
|
13
|
+
|
|
14
|
+
if IS_PYDANTIC_V2:
|
|
15
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
16
|
+
else:
|
|
17
|
+
|
|
18
|
+
class Config:
|
|
19
|
+
frozen = True
|
|
20
|
+
smart_union = True
|
|
21
|
+
extra = pydantic.Extra.allow
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
4
|
import pydantic
|
|
5
5
|
import typing
|
|
6
|
-
from .tool_rule_type import ToolRuleType
|
|
7
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
7
|
|
|
9
8
|
|
|
@@ -17,7 +16,7 @@ class InitToolRule(UncheckedBaseModel):
|
|
|
17
16
|
The name of the tool. Must exist in the database for the user's organization.
|
|
18
17
|
"""
|
|
19
18
|
|
|
20
|
-
type: typing.
|
|
19
|
+
type: typing.Literal["run_first"] = "run_first"
|
|
21
20
|
|
|
22
21
|
if IS_PYDANTIC_V2:
|
|
23
22
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from .input_audio_format import InputAudioFormat
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import typing
|
|
7
|
+
import pydantic
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class InputAudio(UncheckedBaseModel):
|
|
11
|
+
data: str
|
|
12
|
+
format: InputAudioFormat
|
|
13
|
+
|
|
14
|
+
if IS_PYDANTIC_V2:
|
|
15
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
16
|
+
else:
|
|
17
|
+
|
|
18
|
+
class Config:
|
|
19
|
+
frozen = True
|
|
20
|
+
smart_union = True
|
|
21
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
import typing_extensions
|
|
6
|
+
from ..core.serialization import FieldMetadata
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
|
+
import pydantic
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class JsonSchema(UncheckedBaseModel):
|
|
12
|
+
name: str
|
|
13
|
+
description: typing.Optional[str] = None
|
|
14
|
+
schema_: typing_extensions.Annotated[
|
|
15
|
+
typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]], FieldMetadata(alias="schema")
|
|
16
|
+
] = None
|
|
17
|
+
strict: typing.Optional[bool] = None
|
|
18
|
+
|
|
19
|
+
if IS_PYDANTIC_V2:
|
|
20
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
21
|
+
else:
|
|
22
|
+
|
|
23
|
+
class Config:
|
|
24
|
+
frozen = True
|
|
25
|
+
smart_union = True
|
|
26
|
+
extra = pydantic.Extra.allow
|
|
@@ -4,7 +4,6 @@ from ..core.unchecked_base_model import UncheckedBaseModel
|
|
|
4
4
|
import typing
|
|
5
5
|
from .message_create import MessageCreate
|
|
6
6
|
import pydantic
|
|
7
|
-
from .letta_request_config import LettaRequestConfig
|
|
8
7
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
9
8
|
|
|
10
9
|
|
|
@@ -14,9 +13,19 @@ class LettaRequest(UncheckedBaseModel):
|
|
|
14
13
|
The messages to be sent to the agent.
|
|
15
14
|
"""
|
|
16
15
|
|
|
17
|
-
|
|
16
|
+
use_assistant_message: typing.Optional[bool] = pydantic.Field(default=None)
|
|
18
17
|
"""
|
|
19
|
-
|
|
18
|
+
Whether the server should parse specific tool call arguments (default `send_message`) as `AssistantMessage` objects.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
assistant_message_tool_name: typing.Optional[str] = pydantic.Field(default=None)
|
|
22
|
+
"""
|
|
23
|
+
The name of the designated message tool.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
assistant_message_tool_kwarg: typing.Optional[str] = pydantic.Field(default=None)
|
|
27
|
+
"""
|
|
28
|
+
The name of the message argument in the designated message tool.
|
|
20
29
|
"""
|
|
21
30
|
|
|
22
31
|
if IS_PYDANTIC_V2:
|
letta_client/types/message.py
CHANGED
|
@@ -6,7 +6,7 @@ import pydantic
|
|
|
6
6
|
import datetime as dt
|
|
7
7
|
from .message_role import MessageRole
|
|
8
8
|
from .text_content import TextContent
|
|
9
|
-
from .
|
|
9
|
+
from .chat_completion_message_tool_call_output import ChatCompletionMessageToolCallOutput
|
|
10
10
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
11
11
|
|
|
12
12
|
|
|
@@ -77,7 +77,7 @@ class Message(UncheckedBaseModel):
|
|
|
77
77
|
The name of the participant.
|
|
78
78
|
"""
|
|
79
79
|
|
|
80
|
-
tool_calls: typing.Optional[typing.List[
|
|
80
|
+
tool_calls: typing.Optional[typing.List[ChatCompletionMessageToolCallOutput]] = pydantic.Field(default=None)
|
|
81
81
|
"""
|
|
82
82
|
The list of tool calls requested.
|
|
83
83
|
"""
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
5
|
+
import typing
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class OpenaiTypesChatChatCompletionMessageToolCallFunction(UncheckedBaseModel):
|
|
10
|
+
arguments: str
|
|
11
|
+
name: str
|
|
12
|
+
|
|
13
|
+
if IS_PYDANTIC_V2:
|
|
14
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
15
|
+
else:
|
|
16
|
+
|
|
17
|
+
class Config:
|
|
18
|
+
frozen = True
|
|
19
|
+
smart_union = True
|
|
20
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
5
|
+
import typing
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class OpenaiTypesChatChatCompletionMessageToolCallParamFunction(UncheckedBaseModel):
|
|
10
|
+
arguments: str
|
|
11
|
+
name: str
|
|
12
|
+
|
|
13
|
+
if IS_PYDANTIC_V2:
|
|
14
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
15
|
+
else:
|
|
16
|
+
|
|
17
|
+
class Config:
|
|
18
|
+
frozen = True
|
|
19
|
+
smart_union = True
|
|
20
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
5
|
+
import typing
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class OpenaiTypesChatChatCompletionNamedToolChoiceParamFunction(UncheckedBaseModel):
|
|
10
|
+
name: str
|
|
11
|
+
|
|
12
|
+
if IS_PYDANTIC_V2:
|
|
13
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
14
|
+
else:
|
|
15
|
+
|
|
16
|
+
class Config:
|
|
17
|
+
frozen = True
|
|
18
|
+
smart_union = True
|
|
19
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class OpenaiTypesChatCompletionCreateParamsFunction(UncheckedBaseModel):
|
|
10
|
+
name: str
|
|
11
|
+
description: typing.Optional[str] = None
|
|
12
|
+
parameters: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = None
|
|
13
|
+
|
|
14
|
+
if IS_PYDANTIC_V2:
|
|
15
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
16
|
+
else:
|
|
17
|
+
|
|
18
|
+
class Config:
|
|
19
|
+
frozen = True
|
|
20
|
+
smart_union = True
|
|
21
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class ResponseFormatJsonObject(UncheckedBaseModel):
|
|
10
|
+
type: typing.Literal["json_object"] = "json_object"
|
|
11
|
+
|
|
12
|
+
if IS_PYDANTIC_V2:
|
|
13
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
14
|
+
else:
|
|
15
|
+
|
|
16
|
+
class Config:
|
|
17
|
+
frozen = True
|
|
18
|
+
smart_union = True
|
|
19
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from .json_schema import JsonSchema
|
|
5
|
+
import typing
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
import pydantic
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ResponseFormatJsonSchema(UncheckedBaseModel):
|
|
11
|
+
json_schema: JsonSchema
|
|
12
|
+
type: typing.Literal["json_schema"] = "json_schema"
|
|
13
|
+
|
|
14
|
+
if IS_PYDANTIC_V2:
|
|
15
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
16
|
+
else:
|
|
17
|
+
|
|
18
|
+
class Config:
|
|
19
|
+
frozen = True
|
|
20
|
+
smart_union = True
|
|
21
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class ResponseFormatText(UncheckedBaseModel):
|
|
10
|
+
type: typing.Literal["text"] = "text"
|
|
11
|
+
|
|
12
|
+
if IS_PYDANTIC_V2:
|
|
13
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
14
|
+
else:
|
|
15
|
+
|
|
16
|
+
class Config:
|
|
17
|
+
frozen = True
|
|
18
|
+
smart_union = True
|
|
19
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import pydantic
|
|
5
|
+
import typing
|
|
6
|
+
from .message import Message
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Step(UncheckedBaseModel):
|
|
11
|
+
id: str = pydantic.Field()
|
|
12
|
+
"""
|
|
13
|
+
The id of the step. Assigned by the database.
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
origin: typing.Optional[str] = pydantic.Field(default=None)
|
|
17
|
+
"""
|
|
18
|
+
The surface that this agent step was initiated from.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
provider_id: typing.Optional[str] = pydantic.Field(default=None)
|
|
22
|
+
"""
|
|
23
|
+
The unique identifier of the provider that was configured for this step
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
job_id: typing.Optional[str] = pydantic.Field(default=None)
|
|
27
|
+
"""
|
|
28
|
+
The unique identifier of the job that this step belongs to. Only included for async calls.
|
|
29
|
+
"""
|
|
30
|
+
|
|
31
|
+
provider_name: typing.Optional[str] = pydantic.Field(default=None)
|
|
32
|
+
"""
|
|
33
|
+
The name of the provider used for this step.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
model: typing.Optional[str] = pydantic.Field(default=None)
|
|
37
|
+
"""
|
|
38
|
+
The name of the model used for this step.
|
|
39
|
+
"""
|
|
40
|
+
|
|
41
|
+
context_window_limit: typing.Optional[int] = pydantic.Field(default=None)
|
|
42
|
+
"""
|
|
43
|
+
The context window limit configured for this step.
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
completion_tokens: typing.Optional[int] = pydantic.Field(default=None)
|
|
47
|
+
"""
|
|
48
|
+
The number of tokens generated by the agent during this step.
|
|
49
|
+
"""
|
|
50
|
+
|
|
51
|
+
prompt_tokens: typing.Optional[int] = pydantic.Field(default=None)
|
|
52
|
+
"""
|
|
53
|
+
The number of tokens in the prompt during this step.
|
|
54
|
+
"""
|
|
55
|
+
|
|
56
|
+
total_tokens: typing.Optional[int] = pydantic.Field(default=None)
|
|
57
|
+
"""
|
|
58
|
+
The total number of tokens processed by the agent during this step.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
completion_tokens_details: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(
|
|
62
|
+
default=None
|
|
63
|
+
)
|
|
64
|
+
"""
|
|
65
|
+
Metadata for the agent.
|
|
66
|
+
"""
|
|
67
|
+
|
|
68
|
+
tags: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
|
|
69
|
+
"""
|
|
70
|
+
Metadata tags.
|
|
71
|
+
"""
|
|
72
|
+
|
|
73
|
+
tid: typing.Optional[str] = pydantic.Field(default=None)
|
|
74
|
+
"""
|
|
75
|
+
The unique identifier of the transaction that processed this step.
|
|
76
|
+
"""
|
|
77
|
+
|
|
78
|
+
messages: typing.Optional[typing.List[Message]] = pydantic.Field(default=None)
|
|
79
|
+
"""
|
|
80
|
+
The messages generated during this step.
|
|
81
|
+
"""
|
|
82
|
+
|
|
83
|
+
if IS_PYDANTIC_V2:
|
|
84
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
85
|
+
else:
|
|
86
|
+
|
|
87
|
+
class Config:
|
|
88
|
+
frozen = True
|
|
89
|
+
smart_union = True
|
|
90
|
+
extra = pydantic.Extra.allow
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
4
|
import pydantic
|
|
5
5
|
import typing
|
|
6
|
-
from .tool_rule_type import ToolRuleType
|
|
7
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
7
|
|
|
9
8
|
|
|
@@ -17,7 +16,7 @@ class TerminalToolRule(UncheckedBaseModel):
|
|
|
17
16
|
The name of the tool. Must exist in the database for the user's organization.
|
|
18
17
|
"""
|
|
19
18
|
|
|
20
|
-
type: typing.
|
|
19
|
+
type: typing.Literal["exit_loop"] = "exit_loop"
|
|
21
20
|
|
|
22
21
|
if IS_PYDANTIC_V2:
|
|
23
22
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|