DATABASE_URL=sqlite:///./test.db SECRET_KEY=your_secret_key DEBUG=True ANALYSIS_SERVICE_URL=http://127.0.0.1:3030 ANALYSIS_AUTH_TOKEN=replace-with-fastgpt-api-key APP_ID=replace-with-fastgpt-app-id # Voice demo (Pipecat /ws-product). Relative to project root, or an absolute path. VOICE_CONFIG=config/voice.json # 会话持久化:每个应用实例只选一个,修改后重启。 # 默认 memory;数据库不可用不会回退到 memory。 # AGENT_STORAGE=sqlite # AGENT_SQLITE_PATH=./data/agent.sqlite3 # AGENT_POSTGRES_DSN=postgresql://agent:replace-me@127.0.0.1:5432/agent # AGENT_DB_POOL_SIZE=10 # AGENT_DB_LOCK_TIMEOUT_SECONDS=30 # 开发环境可自动建表;默认 false,部署前运行 python -m src.storage.migrate。 # AGENT_DB_AUTO_MIGRATE=false # 可选本地 PostgreSQL compose 配置(密码须与 DSN 一致): # AGENT_POSTGRES_USER=agent # AGENT_POSTGRES_DB=agent # AGENT_POSTGRES_PASSWORD=replace-me # AGENT_POSTGRES_PORT=5432 # LangGraph chat backend(作业 2) # AGENT_BACKEND=langgraph # # 命名 LLM 提供商组(通过 LangChain ChatOpenAI 统一调用 OpenAI 兼容接口): # LLM_PROVIDERS 声明名单, # LLM_PROVIDER 选择当前生效组;缺省或 fake = 离线脚本模型。 # 每组 LLM_<名>_BASE_URL / _API_KEY / _MODEL 必填; # 可选 _TIMEOUT_SECONDS / _MAX_RETRIES / _TEMPERATURE / _EXTRA_BODY(JSON 字符串, # 如思考开关 KIMI 网关为 {"reasoning_effort":"none"})。 # 超时/重试缺省:每次尝试 60 秒,最多额外重试 3 次,退避 1、2、4 秒。 # SDK 自动重试关闭;流式发出首个文本 token 后不重试。 # 单次 LLM 调用预算最多 247 秒(另加响应关闭清理);不是整轮聊天总超时。 # AGENT_HISTORY_MESSAGES=50:注入模型的对话历史上限(最近 N 条, # 双向计数);调大支持长对话;0 = 不截断(对齐 FastGPT 全量历史)。 # AGENT_HISTORY_MESSAGES=0 # LLM_PROVIDERS=deepseek,kimi,gpt6luna # LLM_PROVIDER=deepseek # LLM_DEEPSEEK_BASE_URL=https://api.openai.com/v1 # LLM_DEEPSEEK_API_KEY=replace-with-llm-api-key # LLM_DEEPSEEK_MODEL=gpt-4o-mini # LLM_DEEPSEEK_EXTRA_BODY={"reasoning_effort":"none"} # LLM_KIMI_BASE_URL=http://127.0.0.1:3425/v1 # LLM_KIMI_API_KEY=magpie # LLM_KIMI_MODEL=kimi-code-cn/kimi-for-coding # LLM_KIMI_EXTRA_BODY={"reasoning_effort":"none"} # LLM_GPT6LUNA_BASE_URL=http://127.0.0.1:3425/v1 # LLM_GPT6LUNA_API_KEY=magpie # LLM_GPT6LUNA_MODEL=codex/gpt-6-luna # LLM_GPT6LUNA_EXTRA_BODY={"reasoning_effort":"none"} # 本地网关需直连(系统代理会导致 5xx);外部网关如需代理: # LLM_HTTP_TRUST_ENV=true