414 lines
11 KiB
YAML
414 lines
11 KiB
YAML
# Letta Configuration File
|
|
# Place at ~/.letta/conf.yaml, ./conf.yaml, or set LETTA_CONFIG_PATH
|
|
# Environment variables take precedence over config file values
|
|
#
|
|
# Top-level keys and their env var mappings:
|
|
# letta: -> LETTA_*
|
|
# model: -> Provider-prefixed (OPENAI_*, ANTHROPIC_*, etc.)
|
|
# tool: -> Prefix-based (E2B_*, MCP_*, TOOL_*, etc.)
|
|
# datadog: -> DD_*
|
|
|
|
letta:
|
|
# =============================================================================
|
|
# Core Settings (LETTA_*)
|
|
# =============================================================================
|
|
debug: false
|
|
# environment: ""
|
|
|
|
# Default handles
|
|
# default_llm_handle: ""
|
|
# default_embedding_handle: ""
|
|
|
|
# SSE Streaming
|
|
enable_keepalive: true
|
|
keepalive_interval: 50.0
|
|
enable_cancellation_aware_streaming: true
|
|
|
|
# =============================================================================
|
|
# PostgreSQL (LETTA_PG_*)
|
|
# =============================================================================
|
|
pg:
|
|
# db: ""
|
|
# user: ""
|
|
# password: ""
|
|
# host: ""
|
|
# port: ""
|
|
# uri: ""
|
|
pool_size: 25
|
|
max_overflow: 10
|
|
pool_timeout: 30
|
|
pool_recycle: 1800
|
|
echo: false
|
|
|
|
# Connection pool settings (LETTA_POOL_*)
|
|
pool:
|
|
pre_ping: true
|
|
use_lifo: true
|
|
|
|
# Database settings (LETTA_DB_*)
|
|
# db:
|
|
# max_concurrent_sessions: ""
|
|
|
|
disable_sqlalchemy_pooling: true
|
|
enable_db_pool_monitoring: true
|
|
db_pool_monitoring_interval: 30
|
|
|
|
# =============================================================================
|
|
# Redis (LETTA_REDIS_*)
|
|
# =============================================================================
|
|
redis:
|
|
# host: ""
|
|
port: 6379
|
|
|
|
# =============================================================================
|
|
# Multi-Agent (LETTA_MULTI_AGENT_*)
|
|
# =============================================================================
|
|
multi_agent:
|
|
send_message_max_retries: 3
|
|
send_message_timeout: 1200
|
|
concurrent_sends: 50
|
|
|
|
# =============================================================================
|
|
# OTEL / Observability (LETTA_OTEL_*, LETTA_CLICKHOUSE_*)
|
|
# =============================================================================
|
|
otel:
|
|
# exporter_otlp_endpoint: ""
|
|
preferred_temporality: 1
|
|
|
|
clickhouse:
|
|
# endpoint: ""
|
|
database: otel
|
|
username: default
|
|
# password: ""
|
|
|
|
disable_tracing: false
|
|
llm_api_logging: true
|
|
track_last_agent_run: false
|
|
track_errored_messages: true
|
|
track_stop_reason: true
|
|
track_agent_run: true
|
|
track_provider_trace: true
|
|
|
|
# =============================================================================
|
|
# Uvicorn (LETTA_UVICORN_*)
|
|
# =============================================================================
|
|
uvicorn:
|
|
workers: 1
|
|
reload: false
|
|
timeout_keep_alive: 5
|
|
|
|
# Runtime settings
|
|
use_uvloop: false
|
|
use_granian: false
|
|
sqlalchemy_tracing: false
|
|
event_loop_threadpool_max_workers: 43
|
|
|
|
# =============================================================================
|
|
# Experimental
|
|
# =============================================================================
|
|
use_vertex_structured_outputs_experimental: false
|
|
use_asyncio_shield: true
|
|
|
|
# =============================================================================
|
|
# Lettuce (LETTA_USE_LETTUCE_*)
|
|
# =============================================================================
|
|
use_lettuce_for_file_uploads: false
|
|
|
|
# =============================================================================
|
|
# Batch Job Polling (LETTA_POLL_*, LETTA_BATCH_*)
|
|
# =============================================================================
|
|
enable_batch_job_polling: false
|
|
poll_running_llm_batches_interval_seconds: 300
|
|
poll_lock_retry_interval_seconds: 480
|
|
batch_job_polling_lookback_weeks: 2
|
|
# batch_job_polling_batch_size: ""
|
|
|
|
# =============================================================================
|
|
# LLM Timeouts (LETTA_LLM_*)
|
|
# =============================================================================
|
|
llm:
|
|
request_timeout_seconds: 60.0
|
|
stream_timeout_seconds: 600.0
|
|
|
|
# =============================================================================
|
|
# Pinecone (LETTA_PINECONE_*, LETTA_ENABLE_PINECONE, LETTA_UPSERT_PINECONE_INDICES)
|
|
# =============================================================================
|
|
enable_pinecone: false
|
|
upsert_pinecone_indices: false
|
|
pinecone:
|
|
# api_key: ""
|
|
source_index: sources
|
|
agent_index: recall
|
|
|
|
# =============================================================================
|
|
# Turbopuffer (LETTA_TPUF_*, LETTA_USE_TPUF, LETTA_EMBED_*)
|
|
# =============================================================================
|
|
use_tpuf: false
|
|
embed_all_messages: false
|
|
embed_tools: false
|
|
tpuf:
|
|
# api_key: ""
|
|
region: gcp-us-central1
|
|
|
|
# =============================================================================
|
|
# File Processing (LETTA_FILE_PROCESSING_*)
|
|
# =============================================================================
|
|
file_processing:
|
|
timeout_minutes: 30
|
|
timeout_error_message: "File processing timed out after {} minutes. Please try again."
|
|
|
|
# =============================================================================
|
|
# Letta Client (LETTA_DEFAULT_*)
|
|
# =============================================================================
|
|
default_base_url: http://localhost:8283
|
|
# default_token: ""
|
|
|
|
# =============================================================================
|
|
# Agent Architecture
|
|
# =============================================================================
|
|
use_letta_v1_agent: false
|
|
archival_memory_token_limit: 8192
|
|
|
|
# =============================================================================
|
|
# Security
|
|
# =============================================================================
|
|
no_default_actor: false
|
|
# encryption_key: ""
|
|
|
|
# =============================================================================
|
|
# OCR
|
|
# =============================================================================
|
|
# mistral_api_key: ""
|
|
|
|
# =============================================================================
|
|
# Summarizer (LETTA_SUMMARIZER_*)
|
|
# =============================================================================
|
|
summarizer:
|
|
mode: partial_evict_message_buffer_mode
|
|
message_buffer_limit: 60
|
|
message_buffer_min: 15
|
|
enable_summarization: true
|
|
max_summarization_retries: 3
|
|
partial_evict_summarizer_percentage: 0.30
|
|
evict_all_messages: false
|
|
max_summarizer_retries: 3
|
|
memory_warning_threshold: 0.75
|
|
send_memory_warning_message: false
|
|
desired_memory_token_pressure: 0.3
|
|
keep_last_n_messages: 0
|
|
|
|
# =============================================================================
|
|
# Logging (LETTA_LOGGING_*)
|
|
# =============================================================================
|
|
logging:
|
|
debug: false
|
|
json_logging: false
|
|
log_level: WARNING
|
|
verbose_telemetry_logging: false
|
|
|
|
# =============================================================================
|
|
# Telemetry (LETTA_TELEMETRY_*)
|
|
# =============================================================================
|
|
telemetry:
|
|
enable_datadog: false
|
|
provider_trace_backend: postgres
|
|
socket_path: /var/run/telemetry/telemetry.sock
|
|
provider_trace_pg_metadata_only: false
|
|
# source: ""
|
|
|
|
# Datadog settings (LETTA_TELEMETRY_DATADOG_*)
|
|
datadog:
|
|
agent_host: localhost
|
|
agent_port: 8126
|
|
service_name: letta-server
|
|
profiling_enabled: false
|
|
profiling_memory_enabled: false
|
|
profiling_heap_enabled: false
|
|
# git_repository_url: ""
|
|
# git_commit_sha: ""
|
|
main_package: letta
|
|
|
|
# =============================================================================
|
|
# Model Settings (-> OPENAI_*, ANTHROPIC_*, AWS_*, etc.)
|
|
# =============================================================================
|
|
model:
|
|
# Global settings
|
|
global_max_context_window_limit: 32000
|
|
inner_thoughts_kwarg: thinking
|
|
default_prompt_formatter: chatml
|
|
|
|
# OpenAI (-> OPENAI_*)
|
|
openai:
|
|
# api_key: ""
|
|
api_base: https://api.openai.com/v1
|
|
|
|
# Anthropic (-> ANTHROPIC_*)
|
|
anthropic:
|
|
# api_key: ""
|
|
max_retries: 3
|
|
sonnet_1m: false
|
|
|
|
# Azure OpenAI (-> AZURE_*)
|
|
azure:
|
|
# api_key: ""
|
|
# base_url: ""
|
|
api_version: "2024-09-01-preview"
|
|
|
|
# Google Gemini (-> GEMINI_*)
|
|
gemini:
|
|
# api_key: ""
|
|
base_url: https://generativelanguage.googleapis.com/
|
|
force_minimum_thinking_budget: false
|
|
max_retries: 5
|
|
timeout_seconds: 600.0
|
|
|
|
# Google Vertex (-> GOOGLE_CLOUD_*)
|
|
# google_cloud:
|
|
# project: ""
|
|
# location: ""
|
|
|
|
# AWS Bedrock (-> AWS_*, BEDROCK_*)
|
|
aws:
|
|
# access_key_id: ""
|
|
# secret_access_key: ""
|
|
default_region: us-east-1
|
|
|
|
bedrock:
|
|
anthropic_version: bedrock-2023-05-31
|
|
|
|
# OpenRouter (-> OPENROUTER_*)
|
|
# openrouter:
|
|
# api_key: ""
|
|
# referer: ""
|
|
# title: ""
|
|
# handle_base: ""
|
|
|
|
# Groq (-> GROQ_*)
|
|
# groq:
|
|
# api_key: ""
|
|
|
|
# Together (-> TOGETHER_*)
|
|
# together:
|
|
# api_key: ""
|
|
|
|
# DeepSeek (-> DEEPSEEK_*)
|
|
# deepseek:
|
|
# api_key: ""
|
|
|
|
# xAI/Grok (-> XAI_*)
|
|
# xai:
|
|
# api_key: ""
|
|
|
|
# Z.ai/ZhipuAI (-> ZAI_*)
|
|
zai:
|
|
# api_key: ""
|
|
base_url: https://api.z.ai/api/paas/v4/
|
|
|
|
# MiniMax (-> MINIMAX_*)
|
|
# minimax:
|
|
# api_key: ""
|
|
|
|
# Ollama (-> OLLAMA_*)
|
|
# ollama:
|
|
# base_url: ""
|
|
|
|
# vLLM (-> VLLM_*)
|
|
# vllm:
|
|
# api_base: ""
|
|
# handle_base: ""
|
|
|
|
# SGLang (-> SGLANG_*)
|
|
# sglang:
|
|
# api_base: ""
|
|
# handle_base: ""
|
|
|
|
# LM Studio (-> LMSTUDIO_*)
|
|
# lmstudio:
|
|
# base_url: ""
|
|
|
|
# OpenLLM (-> OPENLLM_*)
|
|
# openllm:
|
|
# auth_type: ""
|
|
# api_key: ""
|
|
|
|
# =============================================================================
|
|
# Tool Settings (-> E2B_*, MCP_*, MODAL_*, TOOL_*, etc.)
|
|
# =============================================================================
|
|
tool:
|
|
# E2B Sandbox (-> E2B_*)
|
|
# e2b:
|
|
# api_key: ""
|
|
# sandbox_template_id: ""
|
|
|
|
# Modal Sandbox (-> MODAL_*)
|
|
# modal:
|
|
# token_id: ""
|
|
# token_secret: ""
|
|
|
|
# Search Providers (-> TAVILY_*, EXA_*)
|
|
# tavily:
|
|
# api_key: ""
|
|
|
|
# exa:
|
|
# api_key: ""
|
|
|
|
# Local Sandbox (-> TOOL_*)
|
|
tool:
|
|
# exec_dir: ""
|
|
sandbox_timeout: 180
|
|
# exec_venv_name: ""
|
|
exec_autoreload_venv: true
|
|
|
|
# MCP (-> MCP_*)
|
|
mcp:
|
|
connect_to_server_timeout: 30.0
|
|
list_tools_timeout: 30.0
|
|
execute_tool_timeout: 60.0
|
|
read_from_config: false
|
|
disable_stdio: true
|
|
|
|
# =============================================================================
|
|
# Datadog Agent Settings (-> DD_*)
|
|
# =============================================================================
|
|
# datadog:
|
|
# site: ""
|
|
# service: ""
|
|
# version: ""
|
|
#
|
|
# trace:
|
|
# enabled: false
|
|
# agent_url: ""
|
|
# health_metrics_enabled: false
|
|
#
|
|
# dogstatsd:
|
|
# url: ""
|
|
#
|
|
# logs:
|
|
# injection: false
|
|
#
|
|
# runtime:
|
|
# metrics_enabled: false
|
|
#
|
|
# appsec:
|
|
# enabled: false
|
|
# sca_enabled: false
|
|
#
|
|
# iast:
|
|
# enabled: false
|
|
#
|
|
# exception:
|
|
# replay_enabled: false
|
|
#
|
|
# llmobs:
|
|
# enabled: false
|
|
# ml_app: ""
|
|
#
|
|
# instrumentation:
|
|
# install_type: ""
|
|
#
|
|
# git:
|
|
# repository_url: ""
|
|
# commit_sha: ""
|
|
#
|
|
# main_package: ""
|