.env.example 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. # deep_agent 2.0 环境变量样例
  2. # 复制为 .env 后按需修改。所有变量均有代码内默认值(默认值 = 可跑的最小配置)。
  3. # ============================================================
  4. # 模型(主 agent 与摘要模型)
  5. # ============================================================
  6. # provider:model 形式;deepseek* 前缀会走 langchain-deepseek(若已安装),否则走 ChatOpenAI
  7. DEEPAGENT_MODEL=deepseek-flash
  8. SUMMARY_MODEL=deepseek-v4-flash
  9. OPENAI_BASE_URL=https://api.deepseek.com
  10. OPENAI_API_KEY=sk-your-key-here
  11. OPENAI_TIMEOUT=180
  12. # 思考级别:off / high / highest(烧进模型实例,重启生效)
  13. DEEPAGENT_THINKING=off
  14. # ============================================================
  15. # 服务
  16. # ============================================================
  17. HOST=0.0.0.0
  18. PORT=8080
  19. LOG_LEVEL=INFO
  20. LOG_FORMAT=text
  21. # ============================================================
  22. # MySQL(会话历史 / 计费 / 调度的事实源)
  23. # ============================================================
  24. DB_HOST=127.0.0.1
  25. DB_PORT=3306
  26. DB_USER=root
  27. DB_PASSWORD=
  28. DB_NAME=vent_agent_v2
  29. DB_PING_IDLE_SECONDS=60
  30. # ============================================================
  31. # 图状态(checkpoint)
  32. # ============================================================
  33. # sqlite:图状态与中断上下文落盘(默认);memory:纯内存,重启即丢
  34. CHECKPOINTER=sqlite
  35. CHECKPOINT_DB_PATH=data/checkpoints.sqlite
  36. # ============================================================
  37. # 上下文与压缩
  38. # ============================================================
  39. # 声明的上下文窗口(0 = 用模型登记值)。
  40. # 这是压缩的唯一调节旋钮:框架在「声明窗口的 85%」处触发摘要压缩,
  41. # 想更早压缩就把这里调小(例如真实窗口 128000、想 70% 触发 → 填 105000)。
  42. CONTEXT_LIMIT=0
  43. # 自动压缩开关。关掉会同时失去「淘汰历史自动落盘到 /conversation_history/」
  44. # 的能力——长会话会硬撑到超窗报错,只在排查压缩相关问题时才关。
  45. CTX_COMPACT_ENABLED=1
  46. # 冷启动从会话历史补种的最近消息条数
  47. CTX_RECENT_LIMIT=30
  48. # ============================================================
  49. # 人机协同(HITL)
  50. # ============================================================
  51. # 需要人工审批的工具(逗号分隔),会追加到默认的计划审批工具之上。
  52. # 例:HITL_TOOLS=calculate → 每次计算都要用户点头,便于自测中断闭环
  53. HITL_TOOLS=
  54. # ============================================================
  55. # 计费
  56. # ============================================================
  57. # 每用户每日 token 限额(0 = 不限);预检 fail-closed
  58. TFAGENTS_DAILY_TOKEN_LIMIT=0
  59. # 模型未在 billing_pricing 表中定价时:0=直接报错(fail-closed,默认)
  60. # 1=按 0 价计费并告警(仅本地开发用,会让用量数字失真)
  61. BILLING_ALLOW_UNPRICED=0
  62. # ============================================================
  63. # 并发闸(超限直接 429,不排队)
  64. # ============================================================
  65. TFAGENTS_MAX_CONCURRENT_TASKS=10
  66. TFAGENTS_MAX_USER_TASKS=2
  67. TFAGENTS_TASK_WALL_TIMEOUT=1800
  68. # ============================================================
  69. # 鉴权
  70. # ============================================================
  71. # 2.0 骨架不做鉴权:user_name 由 /api/chat 的 multipart 字段自报,缺省 default。
  72. # 此开关保留给后续接入真实鉴权时使用,当前无效。
  73. AUTH_ENABLED=0
  74. # ============================================================
  75. # 观测
  76. # ============================================================
  77. TFA_TRACE_MIDDLEWARE=1