Agent Learning Kit
本地优先地对 AI Agent 做模拟、评测、红队测试与优化。
- Star 数
- ★ 128
- 最近更新
- 3 天前
- License
- NOASSERTION
- 主语言
- Python
- FA 评分
- 38/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- 正在用 LangChain 或 LangGraph 搭建 Agent 的开发者,希望在推 CI 前先本地跑一遍任务模拟与回归回放。
- 不适合
- 只想要一个开箱即用的图形化测试平台的团队
- 需要覆盖 README 未列出框架(如未提及的自研编排框架)的团队
- 不愿维护本地 Python 与 TypeScript 双栈工具链的小团队
- 源码审查
- 38/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
Agent Learning Kit 是 Future AGI 推出的本地优先 SDK 与 CLI,把模拟(simulate)、评测(evals)、优化(optimize)三个引擎收敛到同一个开发者界面上,红队测试则复用 simulate 与 evals 引擎而非独立第四引擎。Python 包名为 agent-learning-kit,命名空间为 fi.alk,命令行工具是 agent-learn,另提供 TypeScript 包 @future-agi/agent-learning-kit。它沿着“模拟 → 评测 → 优化 → 晋升为可回放工件 → 本地发布门禁”的闭环运行,默认完全离线,无需 API Key 或网络;只有启用 Future AGI 平台评测时才需要 AGENT_LEARNING_API_KEY。README 明确 v1 发布门禁是可执行的 environment_10x_robustness,即将发布的是本地可验证契约,而非依赖云端服务的产品。
它读取 Agent 源码、运行清单(run_manifest.json)、评测套件(eval_suite.json)、优化清单(optimization_manifest.json)与红队清单(redteam_manifest.json),在本地世界(worlds)中执行任务并产出 JSON 工件。核心操作包括:用 SimulationSpec 交给 SimulationRunner 跑同一套模拟;对提示词、任务输出、运行时契约、trace、记忆、检索、安全与鲁棒性证据做评测;对提示词、Agent、框架适配器、世界、多 Agent 交互、记忆层、工作流与红队场景做搜索优化;用 release-check 与 release-proof 生成 agent-learning.release-proof.v1 证据。仓库内的 harness(src/fi/alk/harness/)会读取 Agent 源码、为其构建工具可作用的真实世界,并写入每条都经过验证的测试场景,可通过终端或 localhost:8777 的网页以对话方式驱动。适配器覆盖 LangChain、LangGraph、LlamaIndex、AutoGen、CrewAI、LiveKit、Pipecat、Browser Use、MCP、A2A 以及自定义编排对象,并对 PydanticAI 与 OpenAI Agents 提供运行时模拟支持。
- 正在用 LangChain 或 LangGraph 搭建 Agent 的开发者,希望在推 CI 前先本地跑一遍任务模拟与回归回放。
- 需要为多 Agent 交接与协调逻辑编写可重复测试的团队,用 handoff 测试替代手工试跑。
- 安全工程师要对自家 Agent 做红队语料与自适应循环测试,但不想把数据送到第三方云平台。
- 负责发布流程的工程师需要 agent-learn release-proof 生成的本地门禁证据,作为发版签核材料。
- 做 RAG 或记忆层调优的团队,希望在同一工件模型里对比检索与记忆质量的评测结果。
- 希望把语音、实时、浏览器/CUA、协议类 trace 一起纳入评测的集成团队。
如何安装或部署这个 Agent?
从 PyPI 安装:
pip install agent-learning-kit可选扩展:
pip install "agent-learning-kit[livekit]"
pip install "agent-learning-kit[nli]"
pip install "agent-learning-kit[all]"如需从源码开发:
git clone https://github.com/future-agi/agent-learning-kit
cd agent-learning-kit
uv sync # 或: pip install -e .TypeScript 包(npm 发布在 v1 上线后,当前可从源码构建 typescript/agent-learning-kit):
pnpm add @future-agi/agent-learning-kit如何使用这个 Agent?
先跑本地自检,确认环境就绪:
agent-learn doctor评测一个套件:
agent-learn eval examples/eval_suite.json \
--output artifacts/eval.json模拟一次运行清单:
AGENT_LEARNING_RUN_EXAMPLE_KEY=offline-demo-key \
agent-learn run examples/run_manifest.json \
--no-eval \
--output artifacts/run.json优化一个 Agent 工作流:
AGENT_LEARNING_OPTIMIZE_EXAMPLE_KEY=offline-demo-key \
agent-learn optimize examples/optimization_manifest.json \
--output artifacts/optimization.json执行一次红队行动:
AGENT_LEARNING_REDTEAM_EXAMPLE_KEY=offline-demo-key \
agent-learn redteam examples/redteam_manifest.json \
--output artifacts/redteam.json生成发布证据:
agent-learn release-check --project-root .
agent-learn release-proof \
--project-root . \
--output /tmp/agent-learning-release-proof.json \
--quiet如需使用 Future AGI 平台评测,设置 AGENT_LEARNING_API_KEY(优先级高于 FUTURE_AGI_API_KEY 与 FI_API_KEY 别名),或在代码中调用 configure:
from fi.alk import configure
configure(api_key="...")TypeScript 侧可导入 Evaluator 与 LocalEvaluator:
import { Evaluator } from "@future-agi/agent-learning-kit";
import { LocalEvaluator } from "@future-agi/agent-learning-kit/evals/local";这个 Agent 有哪些优点和局限?
- 默认完全离线:quickstart 中所有命令无需 API Key、无需网络即可运行,适合受限网络或对数据外发敏感的团队。
- 三大引擎收敛到同一工件模型(simulate / evals / optimize),模拟结果可直接评测、优化并晋升为可回放工件。
- 同一 CLI 覆盖 redteam 与 release-proof,release-proof 输出 agent-learning.release-proof.v1 结构化证据,可直接用作发版签核。
- 内置 harness 可读取 Agent 源码、自动构建世界并生成逐条验证过的测试场景,减少手写套件的工作量。
- 适配器覆盖面明确列出:LangChain、LangGraph、LlamaIndex、AutoGen、CrewAI、LiveKit、Pipecat、Browser Use、MCP、A2A 及自定义编排对象。
- TypeScript SDK(@future-agi/agent-learning-kit)在撰写文档时尚未发布到 npm,需从源码构建 typescript/agent-learning-kit。
- 使用 Future AGI 平台评测必须提供 AGENT_LEARNING_API_KEY,会形成对厂商云服务的依赖。
- 同时维护 Python(uv/pip/pytest/ruff)与 TypeScript(pnpm)两套工具链,CI 与本地环境成本更高。
- 仓库 LICENSE 在 GitHub 元数据中标记为 NOASSERTION,README 指向 Apache-2.0 与 NOTICE,采用前建议自行确认许可条款。
- OpenEnv/Gymnasium 形状仅作为兼容输入存在,若团队现有测试资产基于这两种形状,需要额外迁移工作。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Agent Learning Kit 当前 | 38 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 128 | 3 天前 | Python | — |
| Rogue — AI 智能体测评与红队平台 | 43 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.1k | 5 个月前 | Python | OpenAI API · Claude API |
| RAMPART | 51 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 421 | 4 天前 | Python | — |
| IntellAgent:诊断与优化对话智能体的仿真框架 | 33 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.3k | 1 个月前 | Python | OpenAI API · Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示 CI 工作流采用最小权限(contents: read、id-token: write 仅限发布作业)、发布走 PyPI 可信发布与人工审批环境,SECURITY.md 给出漏洞上报渠道与响应时限,pyproject 对依赖设定了上下界并附有版本核验注释,bandit 配置说明沙箱以 list-args 而非 shell=True 执行。但扣分点明确:README 与代码未说明 harness 读取被评测 agent 源码后的数据流向、遥测/账本(~/.agent-learning/ledger)默认开启且仅靠测试 fixture 隔离,缺少面向用户的确认与回滚说明;依赖清单庞大(litellm、torch、transformers、chromadb 等)且无 SBOM 或漏洞扫描证据;发布流程会向 future-agi/deployment 仓库推送变更,外部副作用缺少面向使用者的告知。因此各项仅给 1。
README 描述了 doctor、release-check、release-proof 等自检与失败可见性机制,pyproject 对多数依赖给出上下界并解释版本选择理由,测试 fixture 明确隔离账本与网络同步以避免意外外发。但扣分点在于:没有任何静态证据展示失败消息的具体形态或错误分类,依赖可用性仅靠注释断言(如 pipecat 版本下限的解释),未提供锁文件内容或解析验证;README 声称“所有 v1 门禁在已证明的发布提交上为绿”,但该证明工件不在本次证据中,无法核对。故三项均为 1。
README 明确列出目标受众(开发者)、使用场景(模拟、评测、优化、红队)以及框架适配范围(LangChain、LlamaIndex、AutoGen、CrewAI、LiveKit、MCP、A2A 等),并区分本地离线模式与平台模式,audience_and_scenarios 给 2。但 capability_boundaries 仅以“OpenEnv/Gymnasium 为兼容输入而非产品中心”一句带过,未系统说明不支持的能力;trigger_precision 未定义何时应调用哪个命令或 harness 的触发条件;environment_fit 只声明 Python >=3.10 与若干可选 extra,未说明操作系统、容器运行时(Docker/E2B/Daytona)等实际环境要求。故其余三项为 1。
信息架构清晰:README 提供仓库地图、文档索引、库清单与路线图链接,安装说明覆盖 PyPI、源码开发、可选 extra 与 TypeScript 包,license 字段与 LICENSE 文件一致(Apache-2.0),故 information_architecture、install_notes、license 给 2。扣分点:命名稳定性存在风险(README 称 npm 发布“在 v1 上线时”,当前需从源码构建,包名与发布状态不一致);examples_and_faq 仅列出命令而无 FAQ 或输出示例;known_limitations 只有零散注释(如 pipecat 版本约束),无集中说明;versioning_changelog 仅链接 CHANGELOG.md,文件内容不在证据中,且版本 0.3.2 与“v1 门禁全绿”的表述存在张力;maintenance_responsibility 依赖未验证的发布者身份与内部文档仓库(ai-evaluation source inventory 维护在 internal-docs),外部无法核实。故这些项为 1。
README 展示了从模拟到评测、优化、红队再到发布证明的完整闭环,并给出可复制命令,output_usability 与 marginal_value 具备一定基础。但扣分点明确:所有命令输出仅为“wrote <path>”一行,未展示产物结构或可读性;与 promptfoo 等既有工具相比的差异化价值仅以“统一工件模型”一句断言,无对比证据;成本收益方面,依赖体量巨大(torch、transformers、chromadb、livekit 全家桶)而收益描述停留在功能罗列,未给出资源占用或运行时长信息。故三项均为 1。
README 大量使用“已证明”“门禁全绿”“probe-promoted coverage”等强断言,但对应的 release-proof 工件、测试结果与覆盖率数据均不在本次证据中,claim_traceability 只能给 1。跨源印证方面,README 的仓库地图与 pyproject 的包路径、脚本入口基本一致,SECURITY.md 与 README 的链接互相呼应,但关键声明(v1 门禁、认证模板、发布证明)无法从其他文件交叉验证,cross_source_corroboration 为 1。事实与推断分离方面,README 将路线图状态(“mostly complete”“in progress”)与已冻结契约混写,且“所有 v1 门禁为绿”属于未经证据支撑的结论性表述,fact_inference_separation 为 1。
- README 中“所有 v1 门禁为绿”“已证明的发布提交”等强断言缺少随附的 release-proof 工件,静态审查无法核实,使用前应自行运行 release-proof 并核对输出。
- 遥测与运行账本默认写入 ~/.agent-learning/ledger,仅在测试中被隔离;生产使用时需确认数据流向、是否外发以及如何关闭或清理。
- harness 会读取被评测 agent 的源码并可能启动容器/存储(Docker、E2B、Daytona、Postgres),权限与网络边界需在部署前单独评估,仓库未给出面向用户的确认与回滚说明。
- 依赖清单庞大且包含 torch、transformers、litellm、chromadb 等重型组件,未见 SBOM 或漏洞扫描证据,建议在受控环境中锁定并扫描依赖。
- 发布工作流会向 future-agi/deployment 仓库推送变更并依赖组织级密钥(RELEASE_BOT_*、E2B_API_KEY、DAYTONA_API_KEY),外部使用者无法验证这些流程的实际执行结果。
- 发布者身份未经 FollowAgents 注册表验证,包名与 npm 发布状态(“v1 上线时”)存在不一致,安装前应确认来源与版本。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
ts-v0.2.0 @future-agi/ai-evaluation (TypeScript) 0.2.0
-
py-v1.1.0 ai-evaluation (Python) 1.1.0
-
发布说明摘录
Unified evaluate() API — One function for all evaluation needs. Local metrics, cloud templates, and LLM-as-judge through a single entrypoint. ```python …在 GitHub 查看 ↗