letta-nightly 0.10.0.dev20250806104523__tar.gz → 0.11.0.dev20250807104511__tar.gz
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_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/PKG-INFO +5 -6
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/README.md +2 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/__init__.py +1 -4
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agent.py +1 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/base_agent.py +4 -7
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/letta_agent.py +59 -51
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/letta_agent_batch.py +1 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/voice_agent.py +1 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/voice_sleeptime_agent.py +1 -3
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/constants.py +4 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/embeddings.py +1 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/function_sets/base.py +0 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/mcp_client/types.py +4 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/groups/supervisor_multi_agent.py +1 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/interfaces/anthropic_streaming_interface.py +16 -24
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/interfaces/openai_streaming_interface.py +16 -28
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/llm_api_tools.py +3 -3
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/vllm/api.py +3 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/__init__.py +3 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/agent.py +8 -0
- letta_nightly-0.11.0.dev20250807104511/letta/orm/archive.py +86 -0
- letta_nightly-0.11.0.dev20250807104511/letta/orm/archives_agents.py +27 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/job.py +5 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/mixins.py +8 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/organization.py +7 -8
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/passage.py +12 -10
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/sqlite_functions.py +2 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/tool.py +5 -4
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/agent.py +4 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/agent_file.py +18 -1
- letta_nightly-0.11.0.dev20250807104511/letta/schemas/archive.py +44 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/embedding_config.py +2 -16
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/enums.py +2 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/group.py +28 -3
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/job.py +4 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/llm_config.py +29 -14
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/memory.py +9 -3
- letta_nightly-0.11.0.dev20250807104511/letta/schemas/npm_requirement.py +12 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/passage.py +3 -3
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/letta.py +1 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/vllm.py +4 -4
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/sandbox_config.py +3 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/tool.py +10 -38
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/tool_rule.py +2 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/db.py +8 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/agents.py +9 -8
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/server.py +6 -40
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/startup.sh +3 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/agent_manager.py +92 -31
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/agent_serialization_manager.py +62 -3
- letta_nightly-0.11.0.dev20250807104511/letta/services/archive_manager.py +269 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/helpers/agent_manager_helper.py +111 -37
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/job_manager.py +24 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/passage_manager.py +98 -54
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/core_tool_executor.py +0 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/sandbox_tool_executor.py +2 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/tool_execution_manager.py +1 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_manager.py +70 -26
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_sandbox/base.py +2 -2
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_sandbox/local_sandbox.py +5 -1
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/templates/template_helper.py +8 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/pyproject.toml +3 -3
- letta_nightly-0.10.0.dev20250806104523/letta/client/client.py +0 -2207
- letta_nightly-0.10.0.dev20250806104523/letta/orm/enums.py +0 -21
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/LICENSE +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/ephemeral_agent.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/ephemeral_summary_agent.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/exceptions.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agents/helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/cli/cli.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/cli/cli_load.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/client/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/client/streaming.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/client/utils.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/config.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/data_sources/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/data_sources/connectors.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/data_sources/connectors_helper.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/data_sources/redis_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/errors.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/ast_parsers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/async_composio_toolset.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/composio_helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/function_sets/builtin.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/function_sets/extras.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/function_sets/files.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/function_sets/multi_agent.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/function_sets/voice.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/functions.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/interface.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/mcp_client/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/mcp_client/base_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/mcp_client/exceptions.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/mcp_client/sse_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/mcp_client/stdio_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/prompts.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/schema_generator.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/functions/types.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/groups/dynamic_multi_agent.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/groups/helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/groups/round_robin_multi_agent.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/groups/sleeptime_multi_agent.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/groups/sleeptime_multi_agent_v2.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/composio_helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/converters.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/datetime_helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/decorators.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/json_helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/message_helper.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/pinecone_utils.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/reasoning_helper.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/singleton.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/tool_execution_helper.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/helpers/tool_rule_solver.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/humans/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/humans/examples/basic.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/humans/examples/cs_phd.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/interface.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/interfaces/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/interfaces/openai_chat_completions_streaming_interface.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/interfaces/utils.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/jobs/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/jobs/helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/jobs/llm_batch_job_polling.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/jobs/scheduler.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/jobs/types.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/anthropic.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/anthropic_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/aws_bedrock.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/azure_openai.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/azure_openai_constants.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/bedrock_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/cohere.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/deepseek.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/google_ai_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/google_constants.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/google_vertex_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/helpers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/llm_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/llm_client_base.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/mistral.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/openai.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/openai_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/sample_response_jsons/aws_bedrock.json +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/sample_response_jsons/lmstudio_embedding_list.json +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/llm_api/sample_response_jsons/lmstudio_model_list.json +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/README.md +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/chat_completion_proxy.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/constants.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/function_parser.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/grammars/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/grammars/gbnf_grammar_generator.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/grammars/json.gbnf +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/grammars/json_func_calls_with_inner_thoughts.gbnf +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/json_parser.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/koboldcpp/api.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/koboldcpp/settings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llamacpp/api.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llamacpp/settings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/airoboros.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/chatml.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/configurable_wrapper.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/dolphin.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/llama3.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/simple_summary_wrapper.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/wrapper_base.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/llm_chat_completion_wrappers/zephyr.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/lmstudio/api.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/lmstudio/settings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/ollama/api.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/ollama/settings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/settings/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/settings/deterministic_mirostat.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/settings/settings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/settings/simple.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/utils.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/webui/api.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/webui/legacy_api.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/webui/legacy_settings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/local_llm/webui/settings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/log.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/main.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/memory.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/openai_backcompat/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/openai_backcompat/openai_object.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/agents_tags.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/base.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/block.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/block_history.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/blocks_agents.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/custom_columns.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/errors.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/file.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/files_agents.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/group.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/groups_agents.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/groups_blocks.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/identities_agents.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/identities_blocks.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/identity.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/job_messages.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/llm_batch_items.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/llm_batch_job.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/mcp_oauth.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/mcp_server.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/message.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/prompt.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/provider.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/provider_trace.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/sandbox_config.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/source.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/sources_agents.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/sqlalchemy_base.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/step.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/tools_agents.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/orm/user.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/context.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/db_pool_monitoring.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/events.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/metric_registry.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/metrics.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/resource.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/sqlalchemy_instrumentation.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/sqlalchemy_instrumentation_integration.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/otel/tracing.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/anna_pa.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/google_search_persona.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/memgpt_doc.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/memgpt_starter.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/o1_persona.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/sam.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/sam_pov.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/sam_simple_pov_gpt35.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/sleeptime_doc_persona.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/sleeptime_memory_persona.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/sqldb/test.db +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/personas/examples/voice_memory_persona.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/plugins/README.md +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/plugins/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/plugins/defaults.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/plugins/plugins.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/gpt_summarize.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/gpt_system.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_base.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_chat.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_chat_compressed.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_chat_fstring.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_convo_only.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_doc.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_generate_tool.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_gpt35_extralong.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_intuitive_knowledge.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_memory_only.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_modified_chat.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_modified_o1.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_offline_memory.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_offline_memory_chat.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_sleeptime_chat.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/memgpt_v2_chat.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/react.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/sleeptime.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/sleeptime_doc_ingest.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/sleeptime_v2.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/summary_system_prompt.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/voice_chat.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/voice_sleeptime.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/prompts/system/workflow.txt +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/pytest.ini +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/block.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/embedding_config_overrides.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/environment_variables.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/file.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/folder.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/health.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/identity.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/letta_base.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/letta_message.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/letta_message_content.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/letta_ping.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/letta_request.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/letta_response.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/letta_stop_reason.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/llm_batch_job.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/llm_config_overrides.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/mcp.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/message.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/openai/chat_completion_request.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/openai/chat_completion_response.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/openai/chat_completions.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/openai/embedding_response.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/openai/openai.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/organization.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/pip_requirement.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/prompt.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/provider_trace.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/anthropic.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/azure.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/base.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/bedrock.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/cerebras.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/cohere.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/deepseek.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/google_gemini.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/google_vertex.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/groq.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/lmstudio.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/mistral.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/ollama.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/openai.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/together.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers/xai.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/providers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/response_format.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/run.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/source.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/source_metadata.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/step.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/tool_execution_result.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/usage.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/schemas/user.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/marshmallow_agent.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/marshmallow_agent_environment_variable.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/marshmallow_base.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/marshmallow_block.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/marshmallow_custom_fields.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/marshmallow_message.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/marshmallow_tag.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/marshmallow_tool.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/serialize_schemas/pydantic_agent_schema.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/constants.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/generate_openapi_schema.sh +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/app.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/auth/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/auth/index.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/auth_token.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/chat_completions_interface.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/interface.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/json_parser.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/middleware/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/middleware/check_password.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/middleware/profiler_context.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/openai/chat_completions/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/openai/chat_completions/chat_completions.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/blocks.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/embeddings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/folders.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/groups.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/health.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/identities.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/jobs.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/llms.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/messages.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/organizations.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/providers.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/runs.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/sandbox_configs.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/sources.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/steps.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/tags.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/telemetry.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/tools.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/users.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/routers/v1/voice.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/static_files.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/streaming_response.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/rest_api/utils.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/static_files/assets/index-048c9598.js +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/static_files/assets/index-0e31b727.css +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/static_files/favicon.ico +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/static_files/index.html +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/static_files/memgpt_logo_transparent.png +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/utils.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/ws_api/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/ws_api/example_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/ws_api/interface.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/ws_api/protocol.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/server/ws_api/server.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/agent_file_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/block_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/context_window_calculator/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/context_window_calculator/context_window_calculator.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/context_window_calculator/token_counter.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/chunker/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/chunker/line_chunker.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/chunker/llama_index_chunker.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/embedder/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/embedder/base_embedder.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/embedder/openai_embedder.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/embedder/pinecone_embedder.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/file_processor.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/file_types.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/parser/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/parser/base_parser.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/parser/markitdown_parser.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/parser/mistral_parser.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/file_processor/types.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/files_agents_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/group_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/helpers/tool_execution_helper.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/helpers/tool_parser_helper.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/identity_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/llm_batch_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/mcp/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/mcp/base_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/mcp/oauth_utils.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/mcp/sse_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/mcp/stdio_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/mcp/streamable_http_client.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/mcp/types.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/mcp_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/message_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/organization_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/per_agent_lock_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/provider_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/sandbox_config_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/source_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/step_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/summarizer/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/summarizer/enums.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/summarizer/summarizer.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/telemetry_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/builtin_tool_executor.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/composio_tool_executor.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/files_tool_executor.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/mcp_tool_executor.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/multi_agent_tool_executor.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/tool_execution_sandbox.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_executor/tool_executor_base.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_sandbox/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_sandbox/e2b_sandbox.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/tool_sandbox/modal_sandbox.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/services/user_manager.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/settings.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/streaming_interface.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/streaming_utils.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/system.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/templates/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/templates/sandbox_code_file.py.j2 +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/templates/sandbox_code_file_async.py.j2 +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/templates/summary_request_text.j2 +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/types/__init__.py +0 -0
- {letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/utils.py +0 -0
@@ -1,14 +1,13 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: letta-nightly
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.11.0.dev20250807104511
|
4
4
|
Summary: Create LLM agents with long-term memory and custom tools
|
5
5
|
License: Apache License
|
6
6
|
Author: Letta Team
|
7
7
|
Author-email: contact@letta.com
|
8
|
-
Requires-Python: >=3.
|
8
|
+
Requires-Python: >=3.11,<3.14
|
9
9
|
Classifier: License :: Other/Proprietary License
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
11
|
-
Classifier: Programming Language :: Python :: 3.10
|
12
11
|
Classifier: Programming Language :: Python :: 3.11
|
13
12
|
Classifier: Programming Language :: Python :: 3.12
|
14
13
|
Provides-Extra: all
|
@@ -79,7 +78,7 @@ Requires-Dist: orjson (>=3.11.1,<4.0.0)
|
|
79
78
|
Requires-Dist: pathvalidate (>=3.2.1,<4.0.0)
|
80
79
|
Requires-Dist: pexpect (>=4.9.0,<5.0.0) ; extra == "dev" or extra == "all"
|
81
80
|
Requires-Dist: pg8000 (>=1.30.3,<2.0.0) ; extra == "postgres" or extra == "all"
|
82
|
-
Requires-Dist: pgvector (>=0.2.3,<0.3.0) ; extra == "postgres" or extra == "all"
|
81
|
+
Requires-Dist: pgvector (>=0.2.3,<0.3.0) ; extra == "postgres" or extra == "desktop" or extra == "all"
|
83
82
|
Requires-Dist: pinecone[asyncio] (>=7.3.0,<8.0.0) ; extra == "pinecone" or extra == "all"
|
84
83
|
Requires-Dist: pre-commit (>=3.5.0,<4.0.0) ; extra == "dev" or extra == "all"
|
85
84
|
Requires-Dist: prettytable (>=3.9.0,<4.0.0)
|
@@ -285,7 +284,7 @@ In the CLI tool, you'll be able to create new agents, or load existing agents:
|
|
285
284
|
```
|
286
285
|
🧬 Creating new agent...
|
287
286
|
? Select LLM model: letta-free [type=openai] [ip=https://inference.letta.com]
|
288
|
-
? Select embedding model: letta-free [type=hugging-face] [ip=https://embeddings.
|
287
|
+
? Select embedding model: letta-free [type=hugging-face] [ip=https://embeddings.letta.com]
|
289
288
|
-> 🤖 Using persona profile: 'sam_pov'
|
290
289
|
-> 🧑 Using human profile: 'basic'
|
291
290
|
-> 🛠️ 8 tools: send_message, pause_heartbeats, conversation_search, conversation_search_date, archival_memory_insert, archival_memory_search, core_memory_append, core_memory_replace
|
@@ -351,7 +350,7 @@ letta run
|
|
351
350
|
```
|
352
351
|
🧬 Creating new agent...
|
353
352
|
? Select LLM model: letta-free [type=openai] [ip=https://inference.letta.com]
|
354
|
-
? Select embedding model: letta-free [type=hugging-face] [ip=https://embeddings.
|
353
|
+
? Select embedding model: letta-free [type=hugging-face] [ip=https://embeddings.letta.com]
|
355
354
|
-> 🤖 Using persona profile: 'sam_pov'
|
356
355
|
-> 🧑 Using human profile: 'basic'
|
357
356
|
-> 🛠️ 8 tools: send_message, pause_heartbeats, conversation_search, conversation_search_date, archival_memory_insert, archival_memory_search, core_memory_append, core_memory_replace
|
@@ -168,7 +168,7 @@ In the CLI tool, you'll be able to create new agents, or load existing agents:
|
|
168
168
|
```
|
169
169
|
🧬 Creating new agent...
|
170
170
|
? Select LLM model: letta-free [type=openai] [ip=https://inference.letta.com]
|
171
|
-
? Select embedding model: letta-free [type=hugging-face] [ip=https://embeddings.
|
171
|
+
? Select embedding model: letta-free [type=hugging-face] [ip=https://embeddings.letta.com]
|
172
172
|
-> 🤖 Using persona profile: 'sam_pov'
|
173
173
|
-> 🧑 Using human profile: 'basic'
|
174
174
|
-> 🛠️ 8 tools: send_message, pause_heartbeats, conversation_search, conversation_search_date, archival_memory_insert, archival_memory_search, core_memory_append, core_memory_replace
|
@@ -234,7 +234,7 @@ letta run
|
|
234
234
|
```
|
235
235
|
🧬 Creating new agent...
|
236
236
|
? Select LLM model: letta-free [type=openai] [ip=https://inference.letta.com]
|
237
|
-
? Select embedding model: letta-free [type=hugging-face] [ip=https://embeddings.
|
237
|
+
? Select embedding model: letta-free [type=hugging-face] [ip=https://embeddings.letta.com]
|
238
238
|
-> 🤖 Using persona profile: 'sam_pov'
|
239
239
|
-> 🧑 Using human profile: 'basic'
|
240
240
|
-> 🛠️ 8 tools: send_message, pause_heartbeats, conversation_search, conversation_search_date, archival_memory_insert, archival_memory_search, core_memory_append, core_memory_replace
|
{letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/__init__.py
RENAMED
@@ -5,14 +5,11 @@ try:
|
|
5
5
|
__version__ = version("letta")
|
6
6
|
except PackageNotFoundError:
|
7
7
|
# Fallback for development installations
|
8
|
-
__version__ = "0.
|
8
|
+
__version__ = "0.11.0"
|
9
9
|
|
10
10
|
if os.environ.get("LETTA_VERSION"):
|
11
11
|
__version__ = os.environ["LETTA_VERSION"]
|
12
12
|
|
13
|
-
# import clients
|
14
|
-
from letta.client.client import RESTClient
|
15
|
-
|
16
13
|
# Import sqlite_functions early to ensure event handlers are registered
|
17
14
|
from letta.orm import sqlite_functions
|
18
15
|
|
{letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/agent.py
RENAMED
@@ -41,12 +41,11 @@ from letta.local_llm.utils import num_tokens_from_functions, num_tokens_from_mes
|
|
41
41
|
from letta.log import get_logger
|
42
42
|
from letta.memory import summarize_messages
|
43
43
|
from letta.orm import User
|
44
|
-
from letta.orm.enums import ToolType
|
45
44
|
from letta.otel.tracing import log_event, trace_method
|
46
45
|
from letta.schemas.agent import AgentState, AgentStepResponse, UpdateAgent, get_prompt_template_for_agent_type
|
47
46
|
from letta.schemas.block import BlockUpdate
|
48
47
|
from letta.schemas.embedding_config import EmbeddingConfig
|
49
|
-
from letta.schemas.enums import MessageRole, ProviderType
|
48
|
+
from letta.schemas.enums import MessageRole, ProviderType, ToolType
|
50
49
|
from letta.schemas.letta_message_content import ImageContent, TextContent
|
51
50
|
from letta.schemas.memory import ContextWindowOverview, Memory
|
52
51
|
from letta.schemas.message import Message, MessageCreate, ToolReturn
|
@@ -17,7 +17,7 @@ from letta.schemas.message import Message, MessageCreate, MessageUpdate
|
|
17
17
|
from letta.schemas.usage import LettaUsageStatistics
|
18
18
|
from letta.schemas.user import User
|
19
19
|
from letta.services.agent_manager import AgentManager
|
20
|
-
from letta.services.helpers.agent_manager_helper import
|
20
|
+
from letta.services.helpers.agent_manager_helper import get_system_message_from_compiled_memory
|
21
21
|
from letta.services.message_manager import MessageManager
|
22
22
|
from letta.services.passage_manager import PassageManager
|
23
23
|
from letta.utils import united_diff
|
@@ -122,7 +122,7 @@ class BaseAgent(ABC):
|
|
122
122
|
curr_dynamic_section = extract_dynamic_section(curr_system_message_text)
|
123
123
|
|
124
124
|
# generate just the memory string with current state for comparison
|
125
|
-
curr_memory_str = await agent_state.memory.
|
125
|
+
curr_memory_str = await agent_state.memory.compile_in_thread_async(
|
126
126
|
tool_usage_rules=tool_constraint_block, sources=agent_state.sources, max_files_open=agent_state.max_files_open
|
127
127
|
)
|
128
128
|
new_dynamic_section = extract_dynamic_section(curr_memory_str)
|
@@ -142,16 +142,13 @@ class BaseAgent(ABC):
|
|
142
142
|
if num_archival_memories is None:
|
143
143
|
num_archival_memories = await self.passage_manager.agent_passage_size_async(actor=self.actor, agent_id=agent_state.id)
|
144
144
|
|
145
|
-
new_system_message_str =
|
145
|
+
new_system_message_str = get_system_message_from_compiled_memory(
|
146
146
|
system_prompt=agent_state.system,
|
147
|
-
|
147
|
+
memory_with_sources=curr_memory_str,
|
148
148
|
in_context_memory_last_edit=memory_edit_timestamp,
|
149
149
|
timezone=agent_state.timezone,
|
150
150
|
previous_message_count=num_messages - len(in_context_messages),
|
151
151
|
archival_memory_size=num_archival_memories,
|
152
|
-
tool_rules_solver=tool_rules_solver,
|
153
|
-
sources=agent_state.sources,
|
154
|
-
max_files_open=agent_state.max_files_open,
|
155
152
|
)
|
156
153
|
|
157
154
|
diff = united_diff(curr_system_message_text, new_system_message_str)
|
@@ -30,12 +30,11 @@ from letta.llm_api.llm_client import LLMClient
|
|
30
30
|
from letta.llm_api.llm_client_base import LLMClientBase
|
31
31
|
from letta.local_llm.constants import INNER_THOUGHTS_KWARG
|
32
32
|
from letta.log import get_logger
|
33
|
-
from letta.orm.enums import ToolType
|
34
33
|
from letta.otel.context import get_ctx_attributes
|
35
34
|
from letta.otel.metric_registry import MetricRegistry
|
36
35
|
from letta.otel.tracing import log_event, trace_method, tracer
|
37
36
|
from letta.schemas.agent import AgentState, UpdateAgent
|
38
|
-
from letta.schemas.enums import JobStatus, MessageRole, ProviderType
|
37
|
+
from letta.schemas.enums import JobStatus, MessageRole, ProviderType, ToolType
|
39
38
|
from letta.schemas.letta_message import MessageType
|
40
39
|
from letta.schemas.letta_message_content import OmittedReasoningContent, ReasoningContent, RedactedReasoningContent, TextContent
|
41
40
|
from letta.schemas.letta_response import LettaResponse
|
@@ -362,8 +361,16 @@ class LettaAgent(BaseAgent):
|
|
362
361
|
if settings.track_stop_reason:
|
363
362
|
if step_progression == StepProgression.FINISHED and should_continue:
|
364
363
|
continue
|
364
|
+
|
365
|
+
self.logger.debug("Running cleanup for agent loop run: %s", self.current_run_id)
|
365
366
|
self.logger.info("Running final update. Step Progression: %s", step_progression)
|
366
367
|
try:
|
368
|
+
if step_progression == StepProgression.FINISHED and not should_continue:
|
369
|
+
if stop_reason is None:
|
370
|
+
stop_reason = LettaStopReason(stop_reason=StopReasonType.end_turn.value)
|
371
|
+
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
372
|
+
break
|
373
|
+
|
367
374
|
if step_progression < StepProgression.STEP_LOGGED:
|
368
375
|
await self.step_manager.log_step_async(
|
369
376
|
actor=self.actor,
|
@@ -392,12 +399,11 @@ class LettaAgent(BaseAgent):
|
|
392
399
|
self.logger.error("Error in step after logging step")
|
393
400
|
stop_reason = LettaStopReason(stop_reason=StopReasonType.error.value)
|
394
401
|
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
395
|
-
elif step_progression == StepProgression.FINISHED and not should_continue:
|
396
|
-
if stop_reason is None:
|
397
|
-
stop_reason = LettaStopReason(stop_reason=StopReasonType.end_turn.value)
|
398
|
-
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
399
402
|
else:
|
400
403
|
self.logger.error("Invalid StepProgression value")
|
404
|
+
|
405
|
+
await self._log_request(request_start_timestamp_ns, request_span)
|
406
|
+
|
401
407
|
except Exception as e:
|
402
408
|
self.logger.error("Failed to update step: %s", e)
|
403
409
|
|
@@ -414,17 +420,7 @@ class LettaAgent(BaseAgent):
|
|
414
420
|
force=False,
|
415
421
|
)
|
416
422
|
|
417
|
-
|
418
|
-
if request_start_timestamp_ns:
|
419
|
-
now = get_utc_timestamp_ns()
|
420
|
-
duration_ms = ns_to_ms(now - request_start_timestamp_ns)
|
421
|
-
request_span.add_event(name="letta_request_ms", attributes={"duration_ms": duration_ms})
|
422
|
-
|
423
|
-
# update agent's last run metrics
|
424
|
-
now_datetime = get_utc_time()
|
425
|
-
await self._update_agent_last_run_metrics(now_datetime, duration_ms)
|
426
|
-
|
427
|
-
request_span.end()
|
423
|
+
await self._log_request(request_start_timestamp_ns, request_span)
|
428
424
|
|
429
425
|
# Return back usage
|
430
426
|
for finish_chunk in self.get_finish_chunks_for_stream(usage, stop_reason):
|
@@ -591,8 +587,16 @@ class LettaAgent(BaseAgent):
|
|
591
587
|
if settings.track_stop_reason:
|
592
588
|
if step_progression == StepProgression.FINISHED and should_continue:
|
593
589
|
continue
|
590
|
+
|
591
|
+
self.logger.debug("Running cleanup for agent loop run: %s", self.current_run_id)
|
594
592
|
self.logger.info("Running final update. Step Progression: %s", step_progression)
|
595
593
|
try:
|
594
|
+
if step_progression == StepProgression.FINISHED and not should_continue:
|
595
|
+
if stop_reason is None:
|
596
|
+
stop_reason = LettaStopReason(stop_reason=StopReasonType.end_turn.value)
|
597
|
+
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
598
|
+
break
|
599
|
+
|
596
600
|
if step_progression < StepProgression.STEP_LOGGED:
|
597
601
|
await self.step_manager.log_step_async(
|
598
602
|
actor=self.actor,
|
@@ -621,30 +625,17 @@ class LettaAgent(BaseAgent):
|
|
621
625
|
self.logger.error("Error in step after logging step")
|
622
626
|
stop_reason = LettaStopReason(stop_reason=StopReasonType.error.value)
|
623
627
|
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
624
|
-
elif step_progression == StepProgression.FINISHED and not should_continue:
|
625
|
-
if stop_reason is None:
|
626
|
-
stop_reason = LettaStopReason(stop_reason=StopReasonType.end_turn.value)
|
627
|
-
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
628
628
|
else:
|
629
629
|
self.logger.error("Invalid StepProgression value")
|
630
|
+
|
631
|
+
await self._log_request(request_start_timestamp_ns, request_span)
|
632
|
+
|
630
633
|
except Exception as e:
|
631
634
|
self.logger.error("Failed to update step: %s", e)
|
632
635
|
|
633
636
|
if not should_continue:
|
634
637
|
break
|
635
638
|
|
636
|
-
# log request time
|
637
|
-
if request_start_timestamp_ns:
|
638
|
-
now = get_utc_timestamp_ns()
|
639
|
-
duration_ms = ns_to_ms(now - request_start_timestamp_ns)
|
640
|
-
request_span.add_event(name="request_ms", attributes={"duration_ms": duration_ms})
|
641
|
-
|
642
|
-
# update agent's last run metrics
|
643
|
-
now_datetime = get_utc_time()
|
644
|
-
await self._update_agent_last_run_metrics(now_datetime, duration_ms)
|
645
|
-
|
646
|
-
request_span.end()
|
647
|
-
|
648
639
|
# Extend the in context message ids
|
649
640
|
if not agent_state.message_buffer_autoclear:
|
650
641
|
await self._rebuild_context_window(
|
@@ -655,6 +646,8 @@ class LettaAgent(BaseAgent):
|
|
655
646
|
force=False,
|
656
647
|
)
|
657
648
|
|
649
|
+
await self._log_request(request_start_timestamp_ns, request_span)
|
650
|
+
|
658
651
|
return current_in_context_messages, new_in_context_messages, stop_reason, usage
|
659
652
|
|
660
653
|
async def _update_agent_last_run_metrics(self, completion_time: datetime, duration_ms: float) -> None:
|
@@ -756,7 +749,6 @@ class LettaAgent(BaseAgent):
|
|
756
749
|
elif agent_state.llm_config.model_endpoint_type == ProviderType.openai:
|
757
750
|
interface = OpenAIStreamingInterface(
|
758
751
|
use_assistant_message=use_assistant_message,
|
759
|
-
put_inner_thoughts_in_kwarg=agent_state.llm_config.put_inner_thoughts_in_kwargs,
|
760
752
|
is_openai_proxy=agent_state.llm_config.provider_name == "lmstudio_openai",
|
761
753
|
messages=current_in_context_messages + new_in_context_messages,
|
762
754
|
tools=request_data.get("tools", []),
|
@@ -767,16 +759,20 @@ class LettaAgent(BaseAgent):
|
|
767
759
|
async for chunk in interface.process(
|
768
760
|
stream,
|
769
761
|
ttft_span=request_span,
|
770
|
-
provider_request_start_timestamp_ns=provider_request_start_timestamp_ns,
|
771
762
|
):
|
772
|
-
# Measure
|
763
|
+
# Measure TTFT (trace, metric, and db). This should be consolidated.
|
773
764
|
if first_chunk and request_span is not None:
|
774
765
|
now = get_utc_timestamp_ns()
|
775
766
|
ttft_ns = now - request_start_timestamp_ns
|
767
|
+
|
776
768
|
request_span.add_event(name="time_to_first_token_ms", attributes={"ttft_ms": ns_to_ms(ttft_ns)})
|
777
769
|
metric_attributes = get_ctx_attributes()
|
778
770
|
metric_attributes["model.name"] = agent_state.llm_config.model
|
779
771
|
MetricRegistry().ttft_ms_histogram.record(ns_to_ms(ttft_ns), metric_attributes)
|
772
|
+
|
773
|
+
if self.current_run_id and self.job_manager:
|
774
|
+
await self.job_manager.record_ttft(self.current_run_id, ttft_ns, self.actor)
|
775
|
+
|
780
776
|
first_chunk = False
|
781
777
|
|
782
778
|
if include_return_message_types is None or chunk.message_type in include_return_message_types:
|
@@ -914,8 +910,16 @@ class LettaAgent(BaseAgent):
|
|
914
910
|
if settings.track_stop_reason:
|
915
911
|
if step_progression == StepProgression.FINISHED and should_continue:
|
916
912
|
continue
|
913
|
+
|
914
|
+
self.logger.debug("Running cleanup for agent loop run: %s", self.current_run_id)
|
917
915
|
self.logger.info("Running final update. Step Progression: %s", step_progression)
|
918
916
|
try:
|
917
|
+
if step_progression == StepProgression.FINISHED and not should_continue:
|
918
|
+
if stop_reason is None:
|
919
|
+
stop_reason = LettaStopReason(stop_reason=StopReasonType.end_turn.value)
|
920
|
+
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
921
|
+
break
|
922
|
+
|
919
923
|
if step_progression < StepProgression.STEP_LOGGED:
|
920
924
|
await self.step_manager.log_step_async(
|
921
925
|
actor=self.actor,
|
@@ -943,12 +947,12 @@ class LettaAgent(BaseAgent):
|
|
943
947
|
self.logger.error("Error in step after logging step")
|
944
948
|
stop_reason = LettaStopReason(stop_reason=StopReasonType.error.value)
|
945
949
|
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
946
|
-
elif step_progression == StepProgression.FINISHED and not should_continue:
|
947
|
-
if stop_reason is None:
|
948
|
-
stop_reason = LettaStopReason(stop_reason=StopReasonType.end_turn.value)
|
949
|
-
await self.step_manager.update_step_stop_reason(self.actor, step_id, stop_reason.stop_reason)
|
950
950
|
else:
|
951
951
|
self.logger.error("Invalid StepProgression value")
|
952
|
+
|
953
|
+
# Do tracking for failure cases. Can consolidate with success conditions later.
|
954
|
+
await self._log_request(request_start_timestamp_ns, request_span)
|
955
|
+
|
952
956
|
except Exception as e:
|
953
957
|
self.logger.error("Failed to update step: %s", e)
|
954
958
|
|
@@ -964,21 +968,23 @@ class LettaAgent(BaseAgent):
|
|
964
968
|
force=False,
|
965
969
|
)
|
966
970
|
|
967
|
-
|
968
|
-
if request_start_timestamp_ns:
|
969
|
-
now = get_utc_timestamp_ns()
|
970
|
-
duration_ms = ns_to_ms(now - request_start_timestamp_ns)
|
971
|
-
request_span.add_event(name="letta_request_ms", attributes={"duration_ms": duration_ms})
|
972
|
-
|
973
|
-
# update agent's last run metrics
|
974
|
-
completion_time = get_utc_time()
|
975
|
-
await self._update_agent_last_run_metrics(completion_time, duration_ms)
|
976
|
-
|
977
|
-
request_span.end()
|
971
|
+
await self._log_request(request_start_timestamp_ns, request_span)
|
978
972
|
|
979
973
|
for finish_chunk in self.get_finish_chunks_for_stream(usage, stop_reason):
|
980
974
|
yield f"data: {finish_chunk}\n\n"
|
981
975
|
|
976
|
+
async def _log_request(self, request_start_timestamp_ns: int, request_span: "Span | None"):
|
977
|
+
if request_start_timestamp_ns:
|
978
|
+
now_ns, now = get_utc_timestamp_ns(), get_utc_time()
|
979
|
+
duration_ns = now_ns - request_start_timestamp_ns
|
980
|
+
if request_span:
|
981
|
+
request_span.add_event(name="letta_request_ms", attributes={"duration_ms": ns_to_ms(duration_ns)})
|
982
|
+
await self._update_agent_last_run_metrics(now, ns_to_ms(duration_ns))
|
983
|
+
if self.current_run_id:
|
984
|
+
await self.job_manager.record_response_duration(self.current_run_id, duration_ns, self.actor)
|
985
|
+
if request_span:
|
986
|
+
request_span.end()
|
987
|
+
|
982
988
|
# noinspection PyInconsistentReturns
|
983
989
|
async def _build_and_request_from_llm(
|
984
990
|
self,
|
@@ -1429,6 +1435,8 @@ class LettaAgent(BaseAgent):
|
|
1429
1435
|
status="error",
|
1430
1436
|
)
|
1431
1437
|
|
1438
|
+
print(target_tool)
|
1439
|
+
|
1432
1440
|
# TODO: This temp. Move this logic and code to executors
|
1433
1441
|
|
1434
1442
|
if agent_step_span:
|
@@ -16,10 +16,9 @@ from letta.jobs.types import RequestStatusUpdateInfo, StepStatusUpdateInfo
|
|
16
16
|
from letta.llm_api.llm_client import LLMClient
|
17
17
|
from letta.local_llm.constants import INNER_THOUGHTS_KWARG
|
18
18
|
from letta.log import get_logger
|
19
|
-
from letta.orm.enums import ToolType
|
20
19
|
from letta.otel.tracing import log_event, trace_method
|
21
20
|
from letta.schemas.agent import AgentState
|
22
|
-
from letta.schemas.enums import AgentStepStatus, JobStatus, MessageStreamStatus, ProviderType, SandboxType
|
21
|
+
from letta.schemas.enums import AgentStepStatus, JobStatus, MessageStreamStatus, ProviderType, SandboxType, ToolType
|
23
22
|
from letta.schemas.job import JobUpdate
|
24
23
|
from letta.schemas.letta_message import LegacyLettaMessage, LettaMessage
|
25
24
|
from letta.schemas.letta_message_content import OmittedReasoningContent, ReasoningContent, RedactedReasoningContent, TextContent
|
@@ -13,9 +13,8 @@ from letta.helpers.datetime_helpers import get_utc_time
|
|
13
13
|
from letta.helpers.tool_execution_helper import add_pre_execution_message, enable_strict_mode, remove_request_heartbeat
|
14
14
|
from letta.interfaces.openai_chat_completions_streaming_interface import OpenAIChatCompletionsStreamingInterface
|
15
15
|
from letta.log import get_logger
|
16
|
-
from letta.orm.enums import ToolType
|
17
16
|
from letta.schemas.agent import AgentState, AgentType
|
18
|
-
from letta.schemas.enums import MessageRole
|
17
|
+
from letta.schemas.enums import MessageRole, ToolType
|
19
18
|
from letta.schemas.letta_response import LettaResponse
|
20
19
|
from letta.schemas.message import Message, MessageCreate
|
21
20
|
from letta.schemas.openai.chat_completion_request import (
|
@@ -3,11 +3,10 @@ from typing import AsyncGenerator, List, Optional, Tuple, Union
|
|
3
3
|
from letta.agents.helpers import _create_letta_response, serialize_message_history
|
4
4
|
from letta.agents.letta_agent import LettaAgent
|
5
5
|
from letta.constants import DEFAULT_MAX_STEPS
|
6
|
-
from letta.orm.enums import ToolType
|
7
6
|
from letta.otel.tracing import trace_method
|
8
7
|
from letta.schemas.agent import AgentState
|
9
8
|
from letta.schemas.block import BlockUpdate
|
10
|
-
from letta.schemas.enums import MessageStreamStatus
|
9
|
+
from letta.schemas.enums import MessageStreamStatus, ToolType
|
11
10
|
from letta.schemas.letta_message import LegacyLettaMessage, LettaMessage, MessageType
|
12
11
|
from letta.schemas.letta_response import LettaResponse
|
13
12
|
from letta.schemas.message import MessageCreate
|
@@ -166,7 +165,6 @@ class VoiceSleeptimeAgent(LettaAgent):
|
|
166
165
|
memory = serialize_message_history(messages, context)
|
167
166
|
self.agent_manager.passage_manager.insert_passage(
|
168
167
|
agent_state=agent_state,
|
169
|
-
agent_id=agent_state.id,
|
170
168
|
text=memory,
|
171
169
|
actor=self.actor,
|
172
170
|
)
|
{letta_nightly-0.10.0.dev20250806104523 → letta_nightly-0.11.0.dev20250807104511}/letta/constants.py
RENAMED
@@ -5,7 +5,7 @@ from logging import CRITICAL, DEBUG, ERROR, INFO, NOTSET, WARN, WARNING
|
|
5
5
|
LETTA_DIR = os.path.join(os.path.expanduser("~"), ".letta")
|
6
6
|
LETTA_TOOL_EXECUTION_DIR = os.path.join(LETTA_DIR, "tool_execution_dir")
|
7
7
|
|
8
|
-
LETTA_MODEL_ENDPOINT = "https://inference.letta.com"
|
8
|
+
LETTA_MODEL_ENDPOINT = "https://inference.letta.com/v1/"
|
9
9
|
DEFAULT_TIMEZONE = "UTC"
|
10
10
|
|
11
11
|
ADMIN_PREFIX = "/v1/admin"
|
@@ -385,3 +385,6 @@ PINECONE_THROTTLE_DELAY = 0.75 # seconds base delay between batches
|
|
385
385
|
# builtin web search
|
386
386
|
WEB_SEARCH_MODEL_ENV_VAR_NAME = "LETTA_BUILTIN_WEBSEARCH_OPENAI_MODEL_NAME"
|
387
387
|
WEB_SEARCH_MODEL_ENV_VAR_DEFAULT_VALUE = "gpt-4.1-mini-2025-04-14"
|
388
|
+
|
389
|
+
# Excluded providers from base tool rules
|
390
|
+
EXCLUDED_PROVIDERS_FROM_BASE_TOOL_RULES = {"anthropic", "openai", "google_ai", "google_vertex"}
|
@@ -235,7 +235,7 @@ def embedding_model(config: EmbeddingConfig, user_id: Optional[uuid.UUID] = None
|
|
235
235
|
return OpenAIEmbeddings(
|
236
236
|
api_key=model_settings.openai_api_key,
|
237
237
|
model=config.embedding_model,
|
238
|
-
base_url=model_settings.openai_api_base,
|
238
|
+
base_url=config.embedding_endpoint or model_settings.openai_api_base,
|
239
239
|
)
|
240
240
|
|
241
241
|
elif endpoint_type == "azure":
|
@@ -6,6 +6,8 @@ from typing import Dict, List, Optional
|
|
6
6
|
from mcp import Tool
|
7
7
|
from pydantic import BaseModel, Field
|
8
8
|
|
9
|
+
from letta.utils import get_logger
|
10
|
+
|
9
11
|
# MCP Authentication Constants
|
10
12
|
MCP_AUTH_HEADER_AUTHORIZATION = "Authorization"
|
11
13
|
MCP_AUTH_TOKEN_BEARER_PREFIX = "Bearer"
|
@@ -13,6 +15,8 @@ TEMPLATED_VARIABLE_REGEX = (
|
|
13
15
|
r"\{\{\s*([A-Z_][A-Z0-9_]*)\s*(?:\|\s*([^}]+?)\s*)?\}\}" # Allows for optional whitespace around the variable name and default value
|
14
16
|
)
|
15
17
|
|
18
|
+
logger = get_logger(__name__)
|
19
|
+
|
16
20
|
|
17
21
|
class MCPTool(Tool):
|
18
22
|
"""A simple wrapper around MCP's tool definition (to avoid conflict with our own)"""
|
@@ -7,7 +7,7 @@ from letta.functions.functions import parse_source_code
|
|
7
7
|
from letta.functions.schema_generator import generate_schema
|
8
8
|
from letta.interface import AgentInterface
|
9
9
|
from letta.orm import User
|
10
|
-
from letta.
|
10
|
+
from letta.schemas.enums import ToolType
|
11
11
|
from letta.schemas.letta_message_content import TextContent
|
12
12
|
from letta.schemas.message import MessageCreate
|
13
13
|
from letta.schemas.tool import Tool
|
@@ -25,11 +25,8 @@ from anthropic.types.beta import (
|
|
25
25
|
)
|
26
26
|
|
27
27
|
from letta.constants import DEFAULT_MESSAGE_TOOL, DEFAULT_MESSAGE_TOOL_KWARG
|
28
|
-
from letta.helpers.datetime_helpers import get_utc_timestamp_ns, ns_to_ms
|
29
28
|
from letta.local_llm.constants import INNER_THOUGHTS_KWARG
|
30
29
|
from letta.log import get_logger
|
31
|
-
from letta.otel.context import get_ctx_attributes
|
32
|
-
from letta.otel.metric_registry import MetricRegistry
|
33
30
|
from letta.schemas.letta_message import (
|
34
31
|
AssistantMessage,
|
35
32
|
HiddenReasoningMessage,
|
@@ -133,28 +130,12 @@ class AnthropicStreamingInterface:
|
|
133
130
|
self,
|
134
131
|
stream: AsyncStream[BetaRawMessageStreamEvent],
|
135
132
|
ttft_span: Optional["Span"] = None,
|
136
|
-
provider_request_start_timestamp_ns: int | None = None,
|
137
133
|
) -> AsyncGenerator[LettaMessage | LettaStopReason, None]:
|
138
134
|
prev_message_type = None
|
139
135
|
message_index = 0
|
140
|
-
first_chunk = True
|
141
136
|
try:
|
142
137
|
async with stream:
|
143
138
|
async for event in stream:
|
144
|
-
# TODO (cliandy): reconsider in stream cancellations
|
145
|
-
# await cancellation_token.check_and_raise_if_cancelled()
|
146
|
-
if first_chunk and ttft_span is not None and provider_request_start_timestamp_ns is not None:
|
147
|
-
now = get_utc_timestamp_ns()
|
148
|
-
ttft_ns = now - provider_request_start_timestamp_ns
|
149
|
-
ttft_span.add_event(
|
150
|
-
name="anthropic_time_to_first_token_ms", attributes={"anthropic_time_to_first_token_ms": ns_to_ms(ttft_ns)}
|
151
|
-
)
|
152
|
-
metric_attributes = get_ctx_attributes()
|
153
|
-
if isinstance(event, BetaRawMessageStartEvent):
|
154
|
-
metric_attributes["model.name"] = event.message.model
|
155
|
-
MetricRegistry().ttft_ms_histogram.record(ns_to_ms(ttft_ns), metric_attributes)
|
156
|
-
first_chunk = False
|
157
|
-
|
158
139
|
# TODO: Support BetaThinkingBlock, BetaRedactedThinkingBlock
|
159
140
|
if isinstance(event, BetaRawContentBlockStartEvent):
|
160
141
|
content = event.content_block
|
@@ -389,13 +370,24 @@ class AnthropicStreamingInterface:
|
|
389
370
|
|
390
371
|
self.anthropic_mode = None
|
391
372
|
except asyncio.CancelledError as e:
|
392
|
-
|
393
|
-
|
394
|
-
|
373
|
+
import traceback
|
374
|
+
|
375
|
+
logger.error("Cancelled stream %s: %s", e, traceback.format_exc())
|
376
|
+
ttft_span.add_event(
|
377
|
+
name="stop_reason",
|
378
|
+
attributes={"stop_reason": StopReasonType.cancelled.value, "error": str(e), "stacktrace": traceback.format_exc()},
|
379
|
+
)
|
380
|
+
raise e
|
395
381
|
except Exception as e:
|
396
|
-
|
382
|
+
import traceback
|
383
|
+
|
384
|
+
logger.error("Error processing stream: %s", e, traceback.format_exc())
|
385
|
+
ttft_span.add_event(
|
386
|
+
name="stop_reason",
|
387
|
+
attributes={"stop_reason": StopReasonType.error.value, "error": str(e), "stacktrace": traceback.format_exc()},
|
388
|
+
)
|
397
389
|
yield LettaStopReason(stop_reason=StopReasonType.error)
|
398
|
-
raise
|
390
|
+
raise e
|
399
391
|
finally:
|
400
392
|
logger.info("AnthropicStreamingInterface: Stream processing complete.")
|
401
393
|
|
@@ -7,12 +7,9 @@ from openai import AsyncStream
|
|
7
7
|
from openai.types.chat.chat_completion_chunk import ChatCompletionChunk
|
8
8
|
|
9
9
|
from letta.constants import DEFAULT_MESSAGE_TOOL, DEFAULT_MESSAGE_TOOL_KWARG
|
10
|
-
from letta.helpers.datetime_helpers import get_utc_timestamp_ns, ns_to_ms
|
11
10
|
from letta.llm_api.openai_client import is_openai_reasoning_model
|
12
11
|
from letta.local_llm.utils import num_tokens_from_functions, num_tokens_from_messages
|
13
12
|
from letta.log import get_logger
|
14
|
-
from letta.otel.context import get_ctx_attributes
|
15
|
-
from letta.otel.metric_registry import MetricRegistry
|
16
13
|
from letta.schemas.letta_message import AssistantMessage, LettaMessage, ReasoningMessage, ToolCallDelta, ToolCallMessage
|
17
14
|
from letta.schemas.letta_message_content import OmittedReasoningContent, TextContent
|
18
15
|
from letta.schemas.letta_stop_reason import LettaStopReason, StopReasonType
|
@@ -35,7 +32,6 @@ class OpenAIStreamingInterface:
|
|
35
32
|
def __init__(
|
36
33
|
self,
|
37
34
|
use_assistant_message: bool = False,
|
38
|
-
put_inner_thoughts_in_kwarg: bool = False,
|
39
35
|
is_openai_proxy: bool = False,
|
40
36
|
messages: Optional[list] = None,
|
41
37
|
tools: Optional[list] = None,
|
@@ -107,7 +103,6 @@ class OpenAIStreamingInterface:
|
|
107
103
|
self,
|
108
104
|
stream: AsyncStream[ChatCompletionChunk],
|
109
105
|
ttft_span: Optional["Span"] = None,
|
110
|
-
provider_request_start_timestamp_ns: int | None = None,
|
111
106
|
) -> AsyncGenerator[LettaMessage | LettaStopReason, None]:
|
112
107
|
"""
|
113
108
|
Iterates over the OpenAI stream, yielding SSE events.
|
@@ -125,29 +120,11 @@ class OpenAIStreamingInterface:
|
|
125
120
|
tool_dicts = [tool["function"] if isinstance(tool, dict) and "function" in tool else tool for tool in self.tools]
|
126
121
|
self.fallback_input_tokens += num_tokens_from_functions(tool_dicts)
|
127
122
|
|
128
|
-
first_chunk = True
|
129
123
|
try:
|
130
124
|
async with stream:
|
131
125
|
prev_message_type = None
|
132
126
|
message_index = 0
|
133
127
|
async for chunk in stream:
|
134
|
-
# TODO (cliandy): reconsider in stream cancellations
|
135
|
-
# await cancellation_token.check_and_raise_if_cancelled()
|
136
|
-
if first_chunk and ttft_span is not None and provider_request_start_timestamp_ns is not None:
|
137
|
-
now = get_utc_timestamp_ns()
|
138
|
-
ttft_ns = now - provider_request_start_timestamp_ns
|
139
|
-
ttft_span.add_event(
|
140
|
-
name="openai_time_to_first_token_ms", attributes={"openai_time_to_first_token_ms": ns_to_ms(ttft_ns)}
|
141
|
-
)
|
142
|
-
metric_attributes = get_ctx_attributes()
|
143
|
-
metric_attributes["model.name"] = chunk.model
|
144
|
-
MetricRegistry().ttft_ms_histogram.record(ns_to_ms(ttft_ns), metric_attributes)
|
145
|
-
|
146
|
-
if self.is_openai_proxy:
|
147
|
-
self.fallback_output_tokens += count_tokens(chunk.model_dump_json())
|
148
|
-
|
149
|
-
first_chunk = False
|
150
|
-
|
151
128
|
if not self.model or not self.message_id:
|
152
129
|
self.model = chunk.model
|
153
130
|
self.message_id = chunk.id
|
@@ -389,12 +366,23 @@ class OpenAIStreamingInterface:
|
|
389
366
|
yield tool_call_msg
|
390
367
|
self.function_id_buffer = None
|
391
368
|
except asyncio.CancelledError as e:
|
392
|
-
|
393
|
-
|
394
|
-
|
369
|
+
import traceback
|
370
|
+
|
371
|
+
logger.error("Cancelled stream %s: %s", e, traceback.format_exc())
|
372
|
+
ttft_span.add_event(
|
373
|
+
name="stop_reason",
|
374
|
+
attributes={"stop_reason": StopReasonType.cancelled.value, "error": str(e), "stacktrace": traceback.format_exc()},
|
375
|
+
)
|
376
|
+
raise e
|
395
377
|
except Exception as e:
|
396
|
-
|
378
|
+
import traceback
|
379
|
+
|
380
|
+
logger.error("Error processing stream: %s", e, traceback.format_exc())
|
381
|
+
ttft_span.add_event(
|
382
|
+
name="stop_reason",
|
383
|
+
attributes={"stop_reason": StopReasonType.error.value, "error": str(e), "stacktrace": traceback.format_exc()},
|
384
|
+
)
|
397
385
|
yield LettaStopReason(stop_reason=StopReasonType.error)
|
398
|
-
raise
|
386
|
+
raise e
|
399
387
|
finally:
|
400
388
|
logger.info("OpenAIStreamingInterface: Stream processing complete.")
|