Files
iov_ana/config.py
OpenClaw Agent 96927a789d feat: 四层架构数据分析 Agent
- Layer 1 Planner: 意图规划,将问题转为结构化分析计划
- Layer 2 Explorer: 自适应探索循环,多轮迭代动态生成 SQL
- Layer 3 InsightEngine: 异常检测 + 主动洞察
- Layer 4 ContextManager: 多轮对话上下文记忆

安全设计:AI 只看 Schema + 聚合结果,不接触原始数据。
支持任意 OpenAI 兼容 API(OpenAI / Ollama / DeepSeek / vLLM)
2026-03-19 12:21:04 +08:00

37 lines
1.0 KiB
Python

"""
配置文件
"""
import os
# LLM 配置(兼容 OpenAI API 格式,包括 Ollama / vLLM / DeepSeek 等)
LLM_CONFIG = {
"api_key": os.getenv("LLM_API_KEY", ""),
"base_url": os.getenv("LLM_BASE_URL", "https://api.openai.com/v1"),
"model": os.getenv("LLM_MODEL", "gpt-4o"),
}
# 沙箱安全规则
SANDBOX_RULES = {
"max_result_rows": 1000, # 聚合结果最大行数
"round_floats": 2, # 浮点数保留位数
"suppress_small_n": 5, # 分组样本 < n 时模糊处理
"banned_keywords": [ # 禁止的 SQL 关键字
"SELECT *",
"INSERT",
"UPDATE",
"DELETE",
"DROP",
"ALTER",
"CREATE",
"ATTACH",
"PRAGMA",
],
"require_aggregation": True, # 是否要求使用聚合函数
}
# 数据库路径
DB_PATH = os.getenv("DB_PATH", os.path.join(os.path.dirname(__file__), "demo.db"))
# 分析控制
MAX_EXPLORATION_ROUNDS = int(os.getenv("MAX_ROUNDS", "6")) # 最大探索轮数