|
|
1 month ago | |
|---|---|---|
| .idea | 1 month ago | |
| data-room | 1 month ago | |
| fixtures | 1 month ago | |
| policies | 1 month ago | |
| report-history | 1 month ago | |
| reports | 1 month ago | |
| skills | 1 month ago | |
| src | 1 month ago | |
| tests | 1 month ago | |
| .env | 1 month ago | |
| .gitignore | 1 month ago | |
| README.md | 1 month ago | |
| pyproject.toml | 1 month ago | |
| uv.lock | 1 month ago |
这是《Deep Agents 核心理论与能力边界》的配套代码项目。
项目使用 Supervisor Agent(主管智能体)协调安全、法务、财务和舆情四个 Subagent(子智能体),读取本地资料室,生成证据可追溯的供应商准入报告,并在提交决定前触发 Human-in-the-loop(人在回路)审批。LangSmith 用于追踪执行过程和运行离线评估。
uv sync
if (-not (Test-Path .env)) { New-Item .env -ItemType File }
uv sync
touch .env
编辑 .env,填写 DeepSeek API Key。模型和 LangSmith 的所有凭证都由项目根目录的 .env 加载,不在代码中硬编码:
DEEPSEEK_API_KEY=你的DeepSeek密钥
DEEPSEEK_BASE_URL=https://api.deepseek.com
DEEPSEEK_MODEL_NAME=deepseek-v4-flash
DEEPSEEK_ANSWER_THINKING=true
LANGSMITH_TRACING=true
LANGSMITH_API_KEY=你的LangSmith密钥
LANGSMITH_PROJECT=vendor-guard-course
APP_ENV=local
以下命令在 Windows、Linux 和 macOS 中相同:
uv run vendor-guard ACME
也可以直接运行模块:
uv run python -m vendor_guard.cli ACME
CLI 会显示 Trace 是否开启。开启后,根运行名为 vendor-guard-interactive,并带有供应商、线程、环境和工作流元数据。示例配置默认隐藏重复的输入状态、保留输出,避免 DeepAgents Trace 过大。
首次创建教学数据集:
uv run vendor-guard-create-dataset
运行离线回归实验:
uv run vendor-guard-evaluate --experiment-prefix vendor-guard-baseline
实验默认串行执行,以控制模型并发和速率限制。每条样例都在独立临时沙箱中
运行:复制 data-room、policies、skills 和 fixtures,但不复制本地
reports。评估报告内容会上传到 LangSmith,沙箱随后自动清理,因此不会读取、
覆盖交互运行的报告,也不会在样例之间互相污染。评估在 HITL 中断处停止,
不会自动批准提交工具。
测试不调用模型,也不需要 API Key:
uv run python -m unittest discover -s tests -v
InMemoryStore 与 InMemorySaver 仅适合本地演示。FilesystemBackend 只适合受控本地环境,不应用于面向公网的 Web 服务。