letta-nightly 0.8.17.dev20250723104501__tar.gz → 0.9.0.dev20250724081419__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.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/PKG-INFO +9 -8
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/__init__.py +5 -3
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agent.py +3 -2
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/base_agent.py +4 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/voice_agent.py +1 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/constants.py +4 -2
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/schema_generator.py +2 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/groups/dynamic_multi_agent.py +1 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/converters.py +13 -5
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/json_helpers.py +6 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/anthropic.py +2 -2
- letta_nightly-0.9.0.dev20250724081419/letta/llm_api/aws_bedrock.py +104 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/deepseek.py +1 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/google_ai_client.py +0 -38
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/google_constants.py +6 -3
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/helpers.py +1 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/llm_api_tools.py +4 -7
- letta_nightly-0.9.0.dev20250724081419/letta/llm_api/mistral.py +22 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/openai.py +17 -17
- letta_nightly-0.9.0.dev20250724081419/letta/llm_api/sample_response_jsons/aws_bedrock.json +38 -0
- letta_nightly-0.9.0.dev20250724081419/letta/llm_api/sample_response_jsons/lmstudio_embedding_list.json +15 -0
- letta_nightly-0.9.0.dev20250724081419/letta/llm_api/sample_response_jsons/lmstudio_model_list.json +15 -0
- letta_nightly-0.9.0.dev20250724081419/letta/local_llm/constants.py +13 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/json_parser.py +11 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/airoboros.py +9 -9
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/chatml.py +7 -8
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/configurable_wrapper.py +6 -6
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/dolphin.py +3 -3
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/simple_summary_wrapper.py +1 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/ollama/api.py +2 -2
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/__init__.py +1 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/agent.py +33 -2
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/files_agents.py +13 -10
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/mixins.py +8 -0
- letta_nightly-0.9.0.dev20250724081419/letta/orm/prompt.py +13 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/sqlite_functions.py +61 -17
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/db_pool_monitoring.py +13 -12
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/agent.py +69 -4
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/agent_file.py +2 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/block.py +11 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/embedding_config.py +15 -3
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/enums.py +2 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/file.py +1 -1
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/folder.py +74 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/memory.py +12 -6
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/prompt.py +9 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/__init__.py +47 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/anthropic.py +78 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/azure.py +80 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/base.py +201 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/bedrock.py +78 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/cerebras.py +79 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/cohere.py +18 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/deepseek.py +63 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/google_gemini.py +102 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/google_vertex.py +54 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/groq.py +35 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/letta.py +39 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/lmstudio.py +97 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/mistral.py +41 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/ollama.py +151 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/openai.py +241 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/together.py +85 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/vllm.py +57 -0
- letta_nightly-0.9.0.dev20250724081419/letta/schemas/providers/xai.py +66 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/db.py +0 -5
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/app.py +4 -3
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/__init__.py +2 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/agents.py +152 -4
- letta_nightly-0.9.0.dev20250724081419/letta/server/rest_api/routers/v1/folders.py +490 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/providers.py +2 -2
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/sources.py +21 -26
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/tools.py +90 -15
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/server.py +50 -95
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/agent_manager.py +420 -81
- letta_nightly-0.9.0.dev20250724081419/letta/services/agent_serialization_manager.py +707 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/block_manager.py +132 -11
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_manager.py +104 -29
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/embedder/pinecone_embedder.py +8 -2
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/file_processor.py +75 -24
- letta_nightly-0.9.0.dev20250724081419/letta/services/file_processor/parser/markitdown_parser.py +95 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/files_agents_manager.py +57 -17
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/group_manager.py +7 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/helpers/agent_manager_helper.py +25 -15
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/provider_manager.py +2 -2
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/source_manager.py +35 -16
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/files_tool_executor.py +12 -5
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_manager.py +12 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_sandbox/e2b_sandbox.py +52 -48
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/settings.py +9 -6
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/streaming_utils.py +2 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/utils.py +34 -1
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/pyproject.toml +9 -6
- letta_nightly-0.8.17.dev20250723104501/letta/llm_api/aws_bedrock.py +0 -174
- letta_nightly-0.8.17.dev20250723104501/letta/llm_api/mistral.py +0 -47
- letta_nightly-0.8.17.dev20250723104501/letta/local_llm/constants.py +0 -34
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/LICENSE +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/README.md +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/ephemeral_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/ephemeral_summary_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/exceptions.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/helpers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/letta_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/letta_agent_batch.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agents/voice_sleeptime_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/cli/cli.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/cli/cli_load.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/client/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/client/client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/client/streaming.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/client/utils.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/config.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/data_sources/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/data_sources/connectors.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/data_sources/connectors_helper.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/data_sources/redis_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/embeddings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/errors.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/ast_parsers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/async_composio_toolset.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/composio_helpers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/function_sets/base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/function_sets/builtin.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/function_sets/extras.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/function_sets/files.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/function_sets/multi_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/function_sets/voice.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/functions.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/helpers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/mcp_client/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/mcp_client/base_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/mcp_client/exceptions.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/mcp_client/sse_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/mcp_client/stdio_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/mcp_client/types.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/prompts.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/functions/types.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/groups/helpers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/groups/round_robin_multi_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/groups/sleeptime_multi_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/groups/sleeptime_multi_agent_v2.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/groups/supervisor_multi_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/composio_helpers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/datetime_helpers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/decorators.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/message_helper.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/pinecone_utils.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/singleton.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/tool_execution_helper.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/helpers/tool_rule_solver.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/humans/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/humans/examples/basic.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/humans/examples/cs_phd.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/interfaces/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/interfaces/anthropic_streaming_interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/interfaces/openai_chat_completions_streaming_interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/interfaces/openai_streaming_interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/interfaces/utils.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/jobs/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/jobs/helpers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/jobs/llm_batch_job_polling.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/jobs/scheduler.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/jobs/types.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/anthropic_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/azure_openai.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/azure_openai_constants.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/bedrock_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/cohere.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/google_vertex_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/llm_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/llm_client_base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/llm_api/openai_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/README.md +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/chat_completion_proxy.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/function_parser.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/grammars/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/grammars/gbnf_grammar_generator.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/grammars/json.gbnf +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/grammars/json_func_calls_with_inner_thoughts.gbnf +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/koboldcpp/api.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/koboldcpp/settings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llamacpp/api.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llamacpp/settings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/llama3.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/wrapper_base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/llm_chat_completion_wrappers/zephyr.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/lmstudio/api.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/lmstudio/settings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/ollama/settings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/settings/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/settings/deterministic_mirostat.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/settings/settings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/settings/simple.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/utils.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/vllm/api.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/webui/api.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/webui/legacy_api.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/webui/legacy_settings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/local_llm/webui/settings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/log.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/main.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/memory.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/openai_backcompat/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/openai_backcompat/openai_object.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/__all__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/agents_tags.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/block.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/block_history.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/blocks_agents.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/custom_columns.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/enums.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/errors.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/file.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/group.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/groups_agents.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/groups_blocks.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/identities_agents.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/identities_blocks.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/identity.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/job.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/job_messages.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/llm_batch_items.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/llm_batch_job.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/mcp_server.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/message.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/organization.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/passage.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/provider.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/provider_trace.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/sandbox_config.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/source.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/sources_agents.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/sqlalchemy_base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/step.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/tool.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/tools_agents.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/orm/user.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/context.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/events.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/metric_registry.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/metrics.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/resource.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/sqlalchemy_instrumentation.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/sqlalchemy_instrumentation_integration.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/otel/tracing.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/anna_pa.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/google_search_persona.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/memgpt_doc.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/memgpt_starter.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/o1_persona.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/sam.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/sam_pov.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/sam_simple_pov_gpt35.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/sleeptime_doc_persona.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/sleeptime_memory_persona.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/sqldb/test.db +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/personas/examples/voice_memory_persona.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/plugins/README.md +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/plugins/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/plugins/defaults.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/plugins/plugins.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/gpt_summarize.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/gpt_system.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_base.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_chat.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_chat_compressed.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_chat_fstring.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_convo_only.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_doc.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_gpt35_extralong.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_intuitive_knowledge.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_memory_only.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_modified_chat.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_modified_o1.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_offline_memory.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_offline_memory_chat.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_sleeptime_chat.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/memgpt_v2_chat.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/react.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/sleeptime.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/sleeptime_doc_ingest.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/sleeptime_v2.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/summary_system_prompt.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/voice_chat.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/voice_sleeptime.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/prompts/system/workflow.txt +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/pytest.ini +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/embedding_config_overrides.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/environment_variables.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/group.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/health.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/identity.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/job.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/letta_base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/letta_message.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/letta_message_content.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/letta_request.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/letta_response.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/letta_stop_reason.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/llm_batch_job.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/llm_config.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/llm_config_overrides.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/mcp.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/message.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/openai/chat_completion_request.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/openai/chat_completion_response.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/openai/chat_completions.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/openai/embedding_response.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/openai/openai.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/organization.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/passage.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/pip_requirement.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/provider_trace.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/providers.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/response_format.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/run.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/sandbox_config.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/source.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/source_metadata.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/step.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/tool.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/tool_execution_result.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/tool_rule.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/usage.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/schemas/user.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/marshmallow_agent.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/marshmallow_agent_environment_variable.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/marshmallow_base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/marshmallow_block.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/marshmallow_custom_fields.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/marshmallow_message.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/marshmallow_tag.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/marshmallow_tool.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/serialize_schemas/pydantic_agent_schema.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/constants.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/generate_openapi_schema.sh +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/auth/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/auth/index.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/auth_token.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/chat_completions_interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/json_parser.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/openai/chat_completions/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/openai/chat_completions/chat_completions.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/blocks.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/embeddings.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/groups.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/health.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/identities.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/jobs.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/llms.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/messages.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/organizations.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/runs.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/sandbox_configs.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/steps.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/tags.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/telemetry.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/users.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/routers/v1/voice.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/static_files.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/streaming_response.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/rest_api/utils.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/startup.sh +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/static_files/assets/index-048c9598.js +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/static_files/assets/index-0e31b727.css +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/static_files/favicon.ico +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/static_files/index.html +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/static_files/memgpt_logo_transparent.png +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/utils.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/ws_api/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/ws_api/example_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/ws_api/interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/ws_api/protocol.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/server/ws_api/server.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/agent_file_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/context_window_calculator/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/context_window_calculator/context_window_calculator.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/context_window_calculator/token_counter.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/chunker/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/chunker/line_chunker.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/chunker/llama_index_chunker.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/embedder/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/embedder/base_embedder.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/embedder/openai_embedder.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/file_types.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/parser/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/parser/base_parser.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/parser/mistral_parser.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/file_processor/types.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/helpers/tool_execution_helper.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/helpers/tool_parser_helper.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/identity_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/job_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/llm_batch_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/mcp/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/mcp/base_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/mcp/sse_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/mcp/stdio_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/mcp/streamable_http_client.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/mcp/types.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/mcp_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/message_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/organization_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/passage_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/per_agent_lock_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/sandbox_config_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/step_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/summarizer/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/summarizer/enums.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/summarizer/summarizer.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/telemetry_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/builtin_tool_executor.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/composio_tool_executor.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/core_tool_executor.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/mcp_tool_executor.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/multi_agent_tool_executor.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/tool_execution_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/tool_execution_sandbox.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/tool_executor.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_executor/tool_executor_base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_sandbox/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_sandbox/base.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/tool_sandbox/local_sandbox.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/services/user_manager.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/streaming_interface.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/system.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/templates/__init__.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/templates/sandbox_code_file.py.j2 +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/templates/sandbox_code_file_async.py.j2 +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/templates/summary_request_text.j2 +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/templates/template_helper.py +0 -0
- {letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/types/__init__.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: letta-nightly
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.9.0.dev20250724081419
|
4
4
|
Summary: Create LLM agents with long-term memory and custom tools
|
5
5
|
License: Apache License
|
6
6
|
Author: Letta Team
|
@@ -56,16 +56,17 @@ Requires-Dist: isort (>=5.13.2,<6.0.0) ; extra == "dev" or extra == "all"
|
|
56
56
|
Requires-Dist: jinja2 (>=3.1.5,<4.0.0)
|
57
57
|
Requires-Dist: langchain (>=0.3.7,<0.4.0) ; extra == "external-tools" or extra == "desktop" or extra == "all"
|
58
58
|
Requires-Dist: langchain-community (>=0.3.7,<0.4.0) ; extra == "external-tools" or extra == "desktop" or extra == "all"
|
59
|
-
Requires-Dist: letta_client (>=0.1.
|
59
|
+
Requires-Dist: letta_client (>=0.1.219,<0.2.0)
|
60
60
|
Requires-Dist: llama-index (>=0.12.2,<0.13.0)
|
61
61
|
Requires-Dist: llama-index-embeddings-openai (>=0.3.1,<0.4.0)
|
62
62
|
Requires-Dist: locust (>=2.31.5,<3.0.0) ; extra == "dev" or extra == "desktop" or extra == "all"
|
63
|
+
Requires-Dist: markitdown[docx,pdf,pptx] (>=0.1.2,<0.2.0)
|
63
64
|
Requires-Dist: marshmallow-sqlalchemy (>=1.4.1,<2.0.0)
|
64
65
|
Requires-Dist: matplotlib (>=3.10.1,<4.0.0)
|
65
66
|
Requires-Dist: mcp[cli] (>=1.9.4,<2.0.0)
|
66
67
|
Requires-Dist: mistralai (>=1.8.1,<2.0.0)
|
67
68
|
Requires-Dist: nltk (>=3.8.1,<4.0.0)
|
68
|
-
Requires-Dist: numpy (>=1.
|
69
|
+
Requires-Dist: numpy (>=2.1.0,<3.0.0)
|
69
70
|
Requires-Dist: openai (>=1.60.0,<2.0.0)
|
70
71
|
Requires-Dist: opentelemetry-api (==1.30.0)
|
71
72
|
Requires-Dist: opentelemetry-exporter-otlp (==1.30.0)
|
@@ -74,13 +75,13 @@ Requires-Dist: opentelemetry-instrumentation-sqlalchemy (==0.51b0)
|
|
74
75
|
Requires-Dist: opentelemetry-sdk (==1.30.0)
|
75
76
|
Requires-Dist: pathvalidate (>=3.2.1,<4.0.0)
|
76
77
|
Requires-Dist: pexpect (>=4.9.0,<5.0.0) ; extra == "dev" or extra == "all"
|
77
|
-
Requires-Dist: pg8000 (>=1.30.3,<2.0.0) ; extra == "postgres" or extra == "
|
78
|
-
Requires-Dist: pgvector (>=0.2.3,<0.3.0) ; extra == "postgres" or extra == "
|
78
|
+
Requires-Dist: pg8000 (>=1.30.3,<2.0.0) ; extra == "postgres" or extra == "all"
|
79
|
+
Requires-Dist: pgvector (>=0.2.3,<0.3.0) ; extra == "postgres" or extra == "all"
|
79
80
|
Requires-Dist: pinecone[asyncio] (>=7.3.0,<8.0.0) ; extra == "pinecone" or extra == "all"
|
80
81
|
Requires-Dist: pre-commit (>=3.5.0,<4.0.0) ; extra == "dev" or extra == "all"
|
81
82
|
Requires-Dist: prettytable (>=3.9.0,<4.0.0)
|
82
|
-
Requires-Dist: psycopg2 (>=2.9.10,<3.0.0) ; extra == "postgres" or extra == "
|
83
|
-
Requires-Dist: psycopg2-binary (>=2.9.10,<3.0.0) ; extra == "postgres" or extra == "
|
83
|
+
Requires-Dist: psycopg2 (>=2.9.10,<3.0.0) ; extra == "postgres" or extra == "all"
|
84
|
+
Requires-Dist: psycopg2-binary (>=2.9.10,<3.0.0) ; extra == "postgres" or extra == "all"
|
84
85
|
Requires-Dist: pydantic (>=2.10.6,<3.0.0)
|
85
86
|
Requires-Dist: pydantic-settings (>=2.2.1,<3.0.0)
|
86
87
|
Requires-Dist: pyhumps (>=3.8.0,<4.0.0)
|
@@ -105,7 +106,7 @@ Requires-Dist: tavily-python (>=0.7.2,<0.8.0)
|
|
105
106
|
Requires-Dist: tqdm (>=4.66.1,<5.0.0)
|
106
107
|
Requires-Dist: typer (>=0.15.2,<0.16.0)
|
107
108
|
Requires-Dist: uvicorn (>=0.24.0.post1,<0.25.0) ; extra == "server" or extra == "desktop" or extra == "all"
|
108
|
-
Requires-Dist: uvloop (>=0.21.0,<0.22.0) ; extra == "all"
|
109
|
+
Requires-Dist: uvloop (>=0.21.0,<0.22.0) ; extra == "experimental" or extra == "all"
|
109
110
|
Requires-Dist: wikipedia (>=1.4.0,<2.0.0) ; extra == "external-tools" or extra == "tests" or extra == "desktop" or extra == "all"
|
110
111
|
Description-Content-Type: text/markdown
|
111
112
|
|
{letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/__init__.py
RENAMED
@@ -5,16 +5,18 @@ try:
|
|
5
5
|
__version__ = version("letta")
|
6
6
|
except PackageNotFoundError:
|
7
7
|
# Fallback for development installations
|
8
|
-
__version__ = "0.
|
8
|
+
__version__ = "0.9.0"
|
9
9
|
|
10
10
|
if os.environ.get("LETTA_VERSION"):
|
11
11
|
__version__ = os.environ["LETTA_VERSION"]
|
12
12
|
|
13
|
-
|
14
13
|
# import clients
|
15
14
|
from letta.client.client import RESTClient
|
16
15
|
|
17
|
-
#
|
16
|
+
# Import sqlite_functions early to ensure event handlers are registered
|
17
|
+
from letta.orm import sqlite_functions
|
18
|
+
|
19
|
+
# # imports for easier access
|
18
20
|
from letta.schemas.agent import AgentState
|
19
21
|
from letta.schemas.block import Block
|
20
22
|
from letta.schemas.embedding_config import EmbeddingConfig
|
{letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/agent.py
RENAMED
@@ -36,6 +36,7 @@ from letta.interface import AgentInterface
|
|
36
36
|
from letta.llm_api.helpers import calculate_summarizer_cutoff, get_token_counts_for_messages, is_context_overflow_error
|
37
37
|
from letta.llm_api.llm_api_tools import create
|
38
38
|
from letta.llm_api.llm_client import LLMClient
|
39
|
+
from letta.local_llm.constants import INNER_THOUGHTS_KWARG
|
39
40
|
from letta.local_llm.utils import num_tokens_from_functions, num_tokens_from_messages
|
40
41
|
from letta.log import get_logger
|
41
42
|
from letta.memory import summarize_messages
|
@@ -548,8 +549,8 @@ class Agent(BaseAgent):
|
|
548
549
|
return messages, False, True # force a heartbeat to allow agent to handle error
|
549
550
|
|
550
551
|
# Check if inner thoughts is in the function call arguments (possible apparently if you are using Azure)
|
551
|
-
if
|
552
|
-
response_message.content = function_args.pop(
|
552
|
+
if INNER_THOUGHTS_KWARG in function_args:
|
553
|
+
response_message.content = function_args.pop(INNER_THOUGHTS_KWARG)
|
553
554
|
# The content if then internal monologue, not chat
|
554
555
|
if response_message.content and not nonnull_content:
|
555
556
|
self.interface.internal_monologue(response_message.content, msg_obj=messages[-1], chunk_index=chunk_index)
|
@@ -122,7 +122,9 @@ 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 = agent_state.memory.compile(
|
125
|
+
curr_memory_str = agent_state.memory.compile(
|
126
|
+
tool_usage_rules=tool_constraint_block, sources=agent_state.sources, max_files_open=agent_state.max_files_open
|
127
|
+
)
|
126
128
|
new_dynamic_section = extract_dynamic_section(curr_memory_str)
|
127
129
|
|
128
130
|
# compare just the dynamic sections (memory blocks, tool rules, directories)
|
@@ -149,6 +151,7 @@ class BaseAgent(ABC):
|
|
149
151
|
archival_memory_size=num_archival_memories,
|
150
152
|
tool_rules_solver=tool_rules_solver,
|
151
153
|
sources=agent_state.sources,
|
154
|
+
max_files_open=agent_state.max_files_open,
|
152
155
|
)
|
153
156
|
|
154
157
|
diff = united_diff(curr_system_message_text, new_system_message_str)
|
@@ -153,6 +153,7 @@ class VoiceAgent(BaseAgent):
|
|
153
153
|
previous_message_count=self.num_messages,
|
154
154
|
archival_memory_size=self.num_archival_memories,
|
155
155
|
sources=agent_state.sources,
|
156
|
+
max_files_open=agent_state.max_files_open,
|
156
157
|
)
|
157
158
|
letta_message_db_queue = create_input_messages(
|
158
159
|
input_messages=input_messages, agent_id=agent_state.id, timezone=agent_state.timezone, actor=self.actor
|
{letta_nightly-0.8.17.dev20250723104501 → letta_nightly-0.9.0.dev20250724081419}/letta/constants.py
RENAMED
@@ -326,7 +326,7 @@ MAX_ERROR_MESSAGE_CHAR_LIMIT = 500
|
|
326
326
|
CORE_MEMORY_PERSONA_CHAR_LIMIT: int = 5000
|
327
327
|
CORE_MEMORY_HUMAN_CHAR_LIMIT: int = 5000
|
328
328
|
CORE_MEMORY_BLOCK_CHAR_LIMIT: int = 5000
|
329
|
-
|
329
|
+
|
330
330
|
# Function return limits
|
331
331
|
FUNCTION_RETURN_CHAR_LIMIT = 6000 # ~300 words
|
332
332
|
BASE_FUNCTION_RETURN_CHAR_LIMIT = 1000000 # very high (we rely on implementation)
|
@@ -361,7 +361,9 @@ REDIS_DEFAULT_CACHE_PREFIX = "letta_cache"
|
|
361
361
|
REDIS_RUN_ID_PREFIX = "agent:send_message:run_id"
|
362
362
|
|
363
363
|
# TODO: This is temporary, eventually use token-based eviction
|
364
|
-
|
364
|
+
# File based controls
|
365
|
+
DEFAULT_MAX_FILES_OPEN = 5
|
366
|
+
DEFAULT_CORE_MEMORY_SOURCE_CHAR_LIMIT: int = 50000
|
365
367
|
|
366
368
|
GET_PROVIDERS_TIMEOUT_SECONDS = 10
|
367
369
|
|
@@ -412,12 +412,13 @@ def generate_schema(function, name: Optional[str] = None, description: Optional[
|
|
412
412
|
# Validate that the function has a Google Python style docstring
|
413
413
|
try:
|
414
414
|
validate_google_style_docstring(function)
|
415
|
-
except ValueError:
|
415
|
+
except ValueError as e:
|
416
416
|
logger.warning(
|
417
417
|
f"Function `{function.__name__}` in module `{function.__module__}` "
|
418
418
|
f"{'(tool_id=' + tool_id + ') ' if tool_id else ''}"
|
419
419
|
f"is not in Google style docstring format. "
|
420
420
|
f"Docstring received:\n{repr(function.__doc__[:200]) if function.__doc__ else 'None'}"
|
421
|
+
f"\nError: {str(e)}"
|
421
422
|
)
|
422
423
|
|
423
424
|
# Get the signature of the function
|
@@ -94,6 +94,7 @@ class DynamicMultiAgent(Agent):
|
|
94
94
|
for name, agent_id in [(agents[agent_id].agent_state.name, agent_id) for agent_id in agent_id_options]:
|
95
95
|
if name.lower() in assistant_message.content.lower():
|
96
96
|
speaker_id = agent_id
|
97
|
+
assert speaker_id is not None, f"No names found in {assistant_message.content}"
|
97
98
|
|
98
99
|
# Sum usage
|
99
100
|
total_usage.prompt_tokens += usage_stats.prompt_tokens
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import base64
|
2
1
|
from typing import Any, Dict, List, Optional, Union
|
3
2
|
|
4
3
|
import numpy as np
|
@@ -43,7 +42,10 @@ from letta.schemas.tool_rule import (
|
|
43
42
|
TerminalToolRule,
|
44
43
|
ToolRule,
|
45
44
|
)
|
45
|
+
from letta.settings import DatabaseChoice, settings
|
46
46
|
|
47
|
+
if settings.database_engine == DatabaseChoice.SQLITE:
|
48
|
+
import sqlite_vec
|
47
49
|
# --------------------------
|
48
50
|
# LLMConfig Serialization
|
49
51
|
# --------------------------
|
@@ -272,22 +274,28 @@ def deserialize_message_content(data: Optional[List[Dict]]) -> List[MessageConte
|
|
272
274
|
|
273
275
|
|
274
276
|
def serialize_vector(vector: Optional[Union[List[float], np.ndarray]]) -> Optional[bytes]:
|
275
|
-
"""Convert a NumPy array or list into
|
277
|
+
"""Convert a NumPy array or list into serialized format using sqlite-vec."""
|
276
278
|
if vector is None:
|
277
279
|
return None
|
278
280
|
if isinstance(vector, list):
|
279
281
|
vector = np.array(vector, dtype=np.float32)
|
282
|
+
else:
|
283
|
+
vector = vector.astype(np.float32)
|
280
284
|
|
281
|
-
return
|
285
|
+
return sqlite_vec.serialize_float32(vector.tolist())
|
282
286
|
|
283
287
|
|
284
288
|
def deserialize_vector(data: Optional[bytes], dialect: Dialect) -> Optional[np.ndarray]:
|
285
|
-
"""Convert
|
289
|
+
"""Convert serialized data back into a NumPy array using sqlite-vec format."""
|
286
290
|
if not data:
|
287
291
|
return None
|
288
292
|
|
289
293
|
if dialect.name == "sqlite":
|
290
|
-
|
294
|
+
# Use sqlite-vec format
|
295
|
+
if len(data) % 4 == 0: # Must be divisible by 4 for float32
|
296
|
+
return np.frombuffer(data, dtype=np.float32)
|
297
|
+
else:
|
298
|
+
raise ValueError(f"Invalid sqlite-vec binary data length: {len(data)}")
|
291
299
|
|
292
300
|
return np.frombuffer(data, dtype=np.float32)
|
293
301
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import base64
|
1
2
|
import json
|
2
3
|
from datetime import datetime
|
3
4
|
|
@@ -11,7 +12,11 @@ def json_dumps(data, indent=2):
|
|
11
12
|
if isinstance(obj, datetime):
|
12
13
|
return obj.isoformat()
|
13
14
|
if isinstance(obj, bytes):
|
14
|
-
|
15
|
+
try:
|
16
|
+
return obj.decode("utf-8")
|
17
|
+
except Exception:
|
18
|
+
print(f"Error decoding bytes as utf-8: {obj}")
|
19
|
+
return base64.b64encode(obj).decode("utf-8")
|
15
20
|
raise TypeError(f"Type {type(obj)} not serializable")
|
16
21
|
|
17
22
|
return json.dumps(data, indent=indent, default=safe_serializer, ensure_ascii=False)
|
@@ -729,7 +729,7 @@ def _prepare_anthropic_request(
|
|
729
729
|
data["temperature"] = 1.0
|
730
730
|
|
731
731
|
if "functions" in data:
|
732
|
-
raise ValueError(
|
732
|
+
raise ValueError("'functions' unexpected in Anthropic API payload")
|
733
733
|
|
734
734
|
# Handle tools
|
735
735
|
if "tools" in data and data["tools"] is None:
|
@@ -1162,7 +1162,7 @@ def anthropic_chat_completions_process_stream(
|
|
1162
1162
|
accum_message.tool_calls[tool_call_delta.index].function.arguments += tool_call_delta.function.arguments
|
1163
1163
|
|
1164
1164
|
if message_delta.function_call is not None:
|
1165
|
-
raise NotImplementedError(
|
1165
|
+
raise NotImplementedError("Old function_call style not support with stream=True")
|
1166
1166
|
|
1167
1167
|
# overwrite response fields based on latest chunk
|
1168
1168
|
if not create_message_id:
|
@@ -0,0 +1,104 @@
|
|
1
|
+
"""
|
2
|
+
Note that this formally only supports Anthropic Bedrock.
|
3
|
+
TODO (cliandy): determine what other providers are supported and what is needed to add support.
|
4
|
+
"""
|
5
|
+
|
6
|
+
import os
|
7
|
+
from typing import Any, Optional
|
8
|
+
|
9
|
+
from anthropic import AnthropicBedrock
|
10
|
+
|
11
|
+
from letta.log import get_logger
|
12
|
+
from letta.settings import model_settings
|
13
|
+
|
14
|
+
logger = get_logger(__name__)
|
15
|
+
|
16
|
+
|
17
|
+
def has_valid_aws_credentials() -> bool:
|
18
|
+
"""
|
19
|
+
Check if AWS credentials are properly configured.
|
20
|
+
"""
|
21
|
+
return all(
|
22
|
+
(
|
23
|
+
os.getenv("AWS_ACCESS_KEY_ID"),
|
24
|
+
os.getenv("AWS_SECRET_ACCESS_KEY"),
|
25
|
+
os.getenv("AWS_DEFAULT_REGION"),
|
26
|
+
)
|
27
|
+
)
|
28
|
+
|
29
|
+
|
30
|
+
def get_bedrock_client(
|
31
|
+
access_key_id: Optional[str] = None,
|
32
|
+
secret_key: Optional[str] = None,
|
33
|
+
default_region: Optional[str] = None,
|
34
|
+
):
|
35
|
+
"""
|
36
|
+
Get a Bedrock client
|
37
|
+
"""
|
38
|
+
import boto3
|
39
|
+
|
40
|
+
sts_client = boto3.client(
|
41
|
+
"sts",
|
42
|
+
aws_access_key_id=access_key_id or model_settings.aws_access_key_id,
|
43
|
+
aws_secret_access_key=secret_key or model_settings.aws_secret_access_key,
|
44
|
+
region_name=default_region or model_settings.aws_default_region,
|
45
|
+
)
|
46
|
+
credentials = sts_client.get_session_token()["Credentials"]
|
47
|
+
|
48
|
+
bedrock = AnthropicBedrock(
|
49
|
+
aws_access_key=credentials["AccessKeyId"],
|
50
|
+
aws_secret_key=credentials["SecretAccessKey"],
|
51
|
+
aws_session_token=credentials["SessionToken"],
|
52
|
+
aws_region=default_region or model_settings.aws_default_region,
|
53
|
+
)
|
54
|
+
return bedrock
|
55
|
+
|
56
|
+
|
57
|
+
async def bedrock_get_model_list_async(
|
58
|
+
access_key_id: Optional[str] = None,
|
59
|
+
secret_access_key: Optional[str] = None,
|
60
|
+
default_region: Optional[str] = None,
|
61
|
+
) -> list[dict]:
|
62
|
+
from aioboto3.session import Session
|
63
|
+
|
64
|
+
try:
|
65
|
+
session = Session()
|
66
|
+
async with session.client(
|
67
|
+
"bedrock",
|
68
|
+
aws_access_key_id=access_key_id,
|
69
|
+
aws_secret_access_key=secret_access_key,
|
70
|
+
region_name=default_region,
|
71
|
+
) as bedrock:
|
72
|
+
response = await bedrock.list_inference_profiles()
|
73
|
+
return response["inferenceProfileSummaries"]
|
74
|
+
except Exception as e:
|
75
|
+
logger.error(f"Error getting model list for bedrock: %s", e)
|
76
|
+
raise e
|
77
|
+
|
78
|
+
|
79
|
+
def bedrock_get_model_details(region_name: str, model_id: str) -> dict[str, Any]:
|
80
|
+
"""
|
81
|
+
Get details for a specific model from Bedrock.
|
82
|
+
"""
|
83
|
+
import boto3
|
84
|
+
from botocore.exceptions import ClientError
|
85
|
+
|
86
|
+
try:
|
87
|
+
bedrock = boto3.client("bedrock", region_name=region_name)
|
88
|
+
response = bedrock.get_foundation_model(modelIdentifier=model_id)
|
89
|
+
return response["modelDetails"]
|
90
|
+
except ClientError as e:
|
91
|
+
logger.exception(f"Error getting model details: {str(e)}")
|
92
|
+
raise e
|
93
|
+
|
94
|
+
|
95
|
+
def bedrock_get_model_context_window(model_id: str) -> int:
|
96
|
+
"""
|
97
|
+
Get context window size for a specific model.
|
98
|
+
"""
|
99
|
+
# Bedrock doesn't provide this via API, so we maintain a mapping
|
100
|
+
# 200k for anthropic: https://aws.amazon.com/bedrock/anthropic/
|
101
|
+
if model_id.startswith("anthropic"):
|
102
|
+
return 200_000
|
103
|
+
else:
|
104
|
+
return 100_000 # default to 100k if unknown
|
@@ -120,7 +120,7 @@ def build_deepseek_chat_completions_request(
|
|
120
120
|
|
121
121
|
def add_functions_to_system_message(system_message: ChatMessage):
|
122
122
|
system_message.content += f"<available functions> {''.join(json.dumps(f) for f in functions)} </available functions>"
|
123
|
-
system_message.content +=
|
123
|
+
system_message.content += 'Select best function to call simply respond with a single json block with the fields "name" and "arguments". Use double quotes around the arguments.'
|
124
124
|
|
125
125
|
if llm_config.model == "deepseek-reasoner": # R1 currently doesn't support function calling natively
|
126
126
|
add_functions_to_system_message(
|
@@ -66,44 +66,6 @@ def google_ai_check_valid_api_key(api_key: str):
|
|
66
66
|
raise LLMError(message=f"{e}", code=ErrorCode.INTERNAL_SERVER_ERROR)
|
67
67
|
|
68
68
|
|
69
|
-
def google_ai_get_model_list(base_url: str, api_key: str, key_in_header: bool = True) -> List[dict]:
|
70
|
-
"""Synchronous version to get model list from Google AI API using httpx."""
|
71
|
-
import httpx
|
72
|
-
|
73
|
-
from letta.utils import printd
|
74
|
-
|
75
|
-
url, headers = get_gemini_endpoint_and_headers(base_url, None, api_key, key_in_header)
|
76
|
-
|
77
|
-
try:
|
78
|
-
with httpx.Client() as client:
|
79
|
-
response = client.get(url, headers=headers)
|
80
|
-
response.raise_for_status() # Raises HTTPStatusError for 4XX/5XX status
|
81
|
-
response_data = response.json() # convert to dict from string
|
82
|
-
|
83
|
-
# Grab the models out
|
84
|
-
model_list = response_data["models"]
|
85
|
-
return model_list
|
86
|
-
|
87
|
-
except httpx.HTTPStatusError as http_err:
|
88
|
-
# Handle HTTP errors (e.g., response 4XX, 5XX)
|
89
|
-
printd(f"Got HTTPError, exception={http_err}")
|
90
|
-
# Print the HTTP status code
|
91
|
-
print(f"HTTP Error: {http_err.response.status_code}")
|
92
|
-
# Print the response content (error message from server)
|
93
|
-
print(f"Message: {http_err.response.text}")
|
94
|
-
raise http_err
|
95
|
-
|
96
|
-
except httpx.RequestError as req_err:
|
97
|
-
# Handle other httpx-related errors (e.g., connection error)
|
98
|
-
printd(f"Got RequestException, exception={req_err}")
|
99
|
-
raise req_err
|
100
|
-
|
101
|
-
except Exception as e:
|
102
|
-
# Handle other potential errors
|
103
|
-
printd(f"Got unknown Exception, exception={e}")
|
104
|
-
raise e
|
105
|
-
|
106
|
-
|
107
69
|
async def google_ai_get_model_list_async(
|
108
70
|
base_url: str, api_key: str, key_in_header: bool = True, client: Optional[httpx.AsyncClient] = None
|
109
71
|
) -> List[dict]:
|
@@ -1,7 +1,12 @@
|
|
1
1
|
GOOGLE_MODEL_TO_CONTEXT_LENGTH = {
|
2
|
+
"gemini-2.5-pro": 1048576,
|
3
|
+
"gemini-2.5-flash": 1048576,
|
4
|
+
"gemini-live-2.5-flash": 1048576,
|
5
|
+
"gemini-2.0-flash-001": 1048576,
|
6
|
+
"gemini-2.0-flash-lite-001": 1048576,
|
7
|
+
# The following are either deprecated or discontinued.
|
2
8
|
"gemini-2.5-pro-exp-03-25": 1048576,
|
3
9
|
"gemini-2.5-flash-preview-04-17": 1048576,
|
4
|
-
"gemini-2.0-flash-001": 1048576,
|
5
10
|
"gemini-2.0-pro-exp-02-05": 2097152,
|
6
11
|
"gemini-2.0-flash-lite-preview-02-05": 1048576,
|
7
12
|
"gemini-2.0-flash-thinking-exp-01-21": 1048576,
|
@@ -11,8 +16,6 @@ GOOGLE_MODEL_TO_CONTEXT_LENGTH = {
|
|
11
16
|
"gemini-1.0-pro-vision": 16384,
|
12
17
|
}
|
13
18
|
|
14
|
-
GOOGLE_MODEL_TO_OUTPUT_LENGTH = {"gemini-2.0-flash-001": 8192, "gemini-2.5-pro-exp-03-25": 65536}
|
15
|
-
|
16
19
|
GOOGLE_EMBEDING_MODEL_TO_DIM = {"text-embedding-005": 768, "text-multilingual-embedding-002": 768}
|
17
20
|
|
18
21
|
GOOGLE_MODEL_FOR_API_KEY_CHECK = "gemini-2.0-flash-lite"
|
@@ -252,7 +252,7 @@ def unpack_all_inner_thoughts_from_kwargs(
|
|
252
252
|
) -> ChatCompletionResponse:
|
253
253
|
"""Strip the inner thoughts out of the tool call and put it in the message content"""
|
254
254
|
if len(response.choices) == 0:
|
255
|
-
raise ValueError(
|
255
|
+
raise ValueError("Unpacking inner thoughts from empty response not supported")
|
256
256
|
|
257
257
|
new_choices = []
|
258
258
|
for choice in response.choices:
|
@@ -67,7 +67,6 @@ def retry_with_exponential_backoff(
|
|
67
67
|
# Stop retrying if user hits Ctrl-C
|
68
68
|
raise KeyboardInterrupt("User intentionally stopped thread. Stopping...")
|
69
69
|
except requests.exceptions.HTTPError as http_err:
|
70
|
-
|
71
70
|
if not hasattr(http_err, "response") or not http_err.response:
|
72
71
|
raise
|
73
72
|
|
@@ -175,7 +174,6 @@ def create(
|
|
175
174
|
|
176
175
|
# openai
|
177
176
|
if llm_config.model_endpoint_type == "openai":
|
178
|
-
|
179
177
|
if model_settings.openai_api_key is None and llm_config.model_endpoint == "https://api.openai.com/v1":
|
180
178
|
# only is a problem if we are *not* using an openai proxy
|
181
179
|
raise LettaConfigurationError(message="OpenAI key is missing from letta config file", missing_fields=["openai_api_key"])
|
@@ -256,7 +254,6 @@ def create(
|
|
256
254
|
return response
|
257
255
|
|
258
256
|
elif llm_config.model_endpoint_type == "xai":
|
259
|
-
|
260
257
|
api_key = model_settings.xai_api_key
|
261
258
|
|
262
259
|
if function_call is None and functions is not None and len(functions) > 0:
|
@@ -464,7 +461,7 @@ def create(
|
|
464
461
|
# )
|
465
462
|
elif llm_config.model_endpoint_type == "groq":
|
466
463
|
if stream:
|
467
|
-
raise NotImplementedError(
|
464
|
+
raise NotImplementedError("Streaming not yet implemented for Groq.")
|
468
465
|
|
469
466
|
if model_settings.groq_api_key is None and llm_config.model_endpoint == "https://api.groq.com/openai/v1/chat/completions":
|
470
467
|
raise LettaConfigurationError(message="Groq key is missing from letta config file", missing_fields=["groq_api_key"])
|
@@ -517,7 +514,7 @@ def create(
|
|
517
514
|
"""TogetherAI endpoint that goes via /completions instead of /chat/completions"""
|
518
515
|
|
519
516
|
if stream:
|
520
|
-
raise NotImplementedError(
|
517
|
+
raise NotImplementedError("Streaming not yet implemented for TogetherAI (via the /completions endpoint).")
|
521
518
|
|
522
519
|
if model_settings.together_api_key is None and (
|
523
520
|
llm_config.model_endpoint == "https://api.together.ai/v1/completions"
|
@@ -547,7 +544,7 @@ def create(
|
|
547
544
|
"""Anthropic endpoint that goes via /embeddings instead of /chat/completions"""
|
548
545
|
|
549
546
|
if stream:
|
550
|
-
raise NotImplementedError(
|
547
|
+
raise NotImplementedError("Streaming not yet implemented for Anthropic (via the /embeddings endpoint).")
|
551
548
|
if not use_tool_naming:
|
552
549
|
raise NotImplementedError("Only tool calling supported on Anthropic API requests")
|
553
550
|
|
@@ -631,7 +628,7 @@ def create(
|
|
631
628
|
messages[0].content[0].text += f"<available functions> {''.join(json.dumps(f) for f in functions)} </available functions>"
|
632
629
|
messages[0].content[
|
633
630
|
0
|
634
|
-
].text +=
|
631
|
+
].text += 'Select best function to call simply by responding with a single json block with the keys "function" and "params". Use double quotes around the arguments.'
|
635
632
|
return get_chat_completion(
|
636
633
|
model=llm_config.model,
|
637
634
|
messages=messages,
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import aiohttp
|
2
|
+
|
3
|
+
from letta.log import get_logger
|
4
|
+
from letta.utils import smart_urljoin
|
5
|
+
|
6
|
+
logger = get_logger(__name__)
|
7
|
+
|
8
|
+
|
9
|
+
async def mistral_get_model_list_async(url: str, api_key: str) -> dict:
|
10
|
+
url = smart_urljoin(url, "models")
|
11
|
+
|
12
|
+
headers = {"Content-Type": "application/json"}
|
13
|
+
if api_key is not None:
|
14
|
+
headers["Authorization"] = f"Bearer {api_key}"
|
15
|
+
|
16
|
+
logger.debug(f"Sending request to %s", url)
|
17
|
+
|
18
|
+
async with aiohttp.ClientSession() as session:
|
19
|
+
# TODO add query param "tool" to be true
|
20
|
+
async with session.get(url, headers=headers) as response:
|
21
|
+
response.raise_for_status()
|
22
|
+
return await response.json()
|