63 lines
2.3 KiB
Python
63 lines
2.3 KiB
Python
import os
|
|
|
|
# LLM Token Settings
|
|
MAX_CONTEXT_TOKENS = int(os.getenv("MAX_CONTEXT_TOKENS", 262144))
|
|
MAX_OUTPUT_TOKENS = int(os.getenv("MAX_OUTPUT_TOKENS", 8000))
|
|
|
|
# Summarization Settings
|
|
SUMMARIZATION_MAX_TOKENS = MAX_CONTEXT_TOKENS - MAX_OUTPUT_TOKENS - 1000
|
|
SUMMARIZATION_MESSAGES_TO_KEEP = int(os.getenv("SUMMARIZATION_MESSAGES_TO_KEEP", 20))
|
|
|
|
# Agent Cache Settings
|
|
TOOL_CACHE_MAX_SIZE = int(os.getenv("TOOL_CACHE_MAX_SIZE", 20))
|
|
TOOL_CACHE_TTL = int(os.getenv("TOOL_CACHE_TTL", 180))
|
|
TOOL_CACHE_AUTO_RENEW = os.getenv("TOOL_CACHE_AUTO_RENEW", "true") == "true"
|
|
|
|
# API Settings
|
|
BACKEND_HOST = os.getenv("BACKEND_HOST", "https://api-dev.gptbase.ai")
|
|
MASTERKEY = os.getenv("MASTERKEY", "master")
|
|
FASTAPI_URL = os.getenv('FASTAPI_URL', 'http://127.0.0.1:8001')
|
|
|
|
# Project Settings
|
|
PROJECT_DATA_DIR = os.getenv("PROJECT_DATA_DIR", "./projects/data")
|
|
|
|
# Tokenizer Settings
|
|
TOKENIZERS_PARALLELISM = os.getenv("TOKENIZERS_PARALLELISM", "true")
|
|
|
|
# Embedding Model Settings
|
|
SENTENCE_TRANSFORMER_MODEL = os.getenv("SENTENCE_TRANSFORMER_MODEL", "TaylorAI/gte-tiny")
|
|
|
|
# Tool Output Length Control Settings
|
|
TOOL_OUTPUT_MAX_LENGTH = int(SUMMARIZATION_MAX_TOKENS/4)
|
|
TOOL_OUTPUT_TRUNCATION_STRATEGY = os.getenv("TOOL_OUTPUT_TRUNCATION_STRATEGY", "smart")
|
|
|
|
# THINKING ENABLE
|
|
DEFAULT_THINKING_ENABLE = os.getenv("DEFAULT_THINKING_ENABLE", "true") == "true"
|
|
|
|
|
|
# MCP Tool Timeout Settings
|
|
MCP_HTTP_TIMEOUT = int(os.getenv("MCP_HTTP_TIMEOUT", 60)) # HTTP 请求超时(秒)
|
|
MCP_SSE_READ_TIMEOUT = int(os.getenv("MCP_SSE_READ_TIMEOUT", 300)) # SSE 读取超时(秒)
|
|
|
|
# ============================================================
|
|
# SQLite Checkpoint Configuration
|
|
# ============================================================
|
|
|
|
# Checkpoint 数据库路径
|
|
CHECKPOINT_DB_PATH = os.getenv("CHECKPOINT_DB_PATH", "./projects/memory/checkpoints.db")
|
|
|
|
# 启用 WAL 模式 (Write-Ahead Logging)
|
|
# WAL 模式允许读写并发,大幅提升并发性能
|
|
CHECKPOINT_WAL_MODE = os.getenv("CHECKPOINT_WAL_MODE", "true") == "true"
|
|
|
|
# Busy Timeout (毫秒)
|
|
# 当数据库被锁定时,等待的最长时间(毫秒)
|
|
CHECKPOINT_BUSY_TIMEOUT = int(os.getenv("CHECKPOINT_BUSY_TIMEOUT", "10000"))
|
|
|
|
|
|
# 连接池大小
|
|
# 同时可以持有的最大连接数
|
|
CHECKPOINT_POOL_SIZE = int(os.getenv("CHECKPOINT_POOL_SIZE", "15"))
|
|
|
|
|