正在统计访客…
浏览全部文档
开始 · 9找到适合你的 Runifold 学习路径45 分钟掌握 Runifold理解完整的 Runifold 平台第一次可信运行选择正确的执行 API选择 Crate 与 Cargo Feature构建常见 Runifold 应用Runifold 常见问题排查 Runifold 应用故障
执行内核 · 7理解 RunContext安全协调外部副作用使用预算与取消限制工作安全地处理错误与重试事件、Journal 与执行证据设计 Capability 安全执行从 Checkpoint 安全恢复
模型与服务商 · 7在避免重复输出的前提下路由模型选择并配置模型服务商使用服务商中立的模型协议基于 Provider Runtime 契约构建使用 OpenAI 控制面与 Realtime API测试与 Benchmark Provider Adapter配置 OpenAI、Anthropic、Gemini 与 Ollama
Agent · 7构建并配置 Agent为 Agent 添加类型化工具加入会话与语义记忆安全地委派给子 Agent返回结构化 Rust 值在不丢失语义的前提下流式输出使用检索为 Agent 提供事实依据
持久工作流 · 7组合确定性工作流让工作流持久化运行持久工作流 Worker协调 Timer、Signal 与持久等待运行多租户工作流基础设施运行并行 Branch 与安全 Race对持久 Workflow 进行版本管理
集成 · 7通过 MCP 连接外部能力选择存储与持久化边界通过 MCP Tasks 暴露持久工作构建并评估检索流水线使用 MCP Resources、Prompts 与 Sampling在不跨越权限的前提下缓存 MCP 响应在 Rust Web Service 中部署 Runifold
质量与运维 · 10在没有网络的情况下测试评估质量并阻止回归观测完整运行树在浏览器与边缘环境安全运行准确理解可靠性声明在 CI 中运行可复现评测使用 SLO 运维 Runifold治理 Task 保留与删除把审计证据归档到 S3-Compatible WORM 存储管理兼容性与可信发布
文档/生产实践
第一次使用?通过 45 分钟核心课程建立完整心智模型
生产实践

评估质量并阻止回归

版本化数据集、度量可观察行为、与基线比较,并在不保存输出的前提下设置发布门禁。

实践指南·10 min

评估什么

单元测试验证确定性契约;Evaluation 度量会随着 Prompt、模型、服务商、检索索引或 Tool 集合变化的产品行为。

从可观察要求开始:

  • 分类与结构化字段正确性;
  • 回答是否有依据、引用是否准确;
  • 拒答与升级行为;
  • Tool 选择与参数质量;
  • 检索召回率与无关上下文比例;
  • 延迟、Token 与成本。

“感觉不错”不能成为发布标准。把它转换成 Case、Scorer 与 Threshold。

构建版本化数据集

把 Testkit 加入开发依赖:

cargo add --dev runifold-testkit
cargo add --dev serde_json
use runifold_testkit::{EvaluationCase, EvaluationDataset};
use serde_json::json;
 
let dataset = EvaluationDataset::new(
    "support-triage",
    "2026-07-30",
    vec![
        EvaluationCase::new("payment-urgent", json!("charged twice"))?
            .with_expected(json!({
                "category": "payment",
                "urgent": true
            })),
    ],
)?;

Case ID 保持稳定;Case 或 Label 变化时更新 Dataset Version。输入应该有代表性、经过 授权、最小化,并且不包含线上 Secret。

选择 Scorer

契约允许时优先确定性 Scorer:

  • 精确结构化结果使用 JsonExactMatchScorer
  • 必需字段与范围使用 JSON Rule Scorer;
  • 有界词法相似度使用 Token Overlap;
  • 召回与排序使用 Retrieval Scorer。

只有无法确定表达的质量才使用 Model Judge。固定 Rubric 与 Judge Model 版本,要求 输出 Rationale,并用人工 Label 校准。

一个总分远远不够。查看逐 Case 失败,并按低基数 Tag 检查 Pass Rate。

与基线比较

在同一 Dataset 上运行固定 Baseline 与 Candidate。Regression Policy 可以限制平均分 下降、Pass Rate 下降和执行失败。

绝对门禁回答“是否足够好”;相对门禁回答“这次修改是否变差”。生产发布通常两者都要。

Candidate 身份应记录所有影响行为的组合:应用 Revision、Prompt Version、Model ID、 Provider 配置与 Retrieval Index Version。

CI 与数据安全

Evaluation Report 只保存 Score、安全错误、Metric 与 Run 关联,不保存模型输出。敏感 Case 数据应单独存放,并使用更严格的访问与保留策略。

CI 中:

  1. 每次修改运行确定性离线评估;
  2. 大型 Dataset 确定性分片;
  3. 限制并发、成本与总时长;
  4. 只重试基础设施故障,不能静默丢弃坏 Case;
  5. 与已批准 Baseline 比较并发布 Report;
  6. 替换 Baseline 前必须审核。

在线评估需要受保护凭证与显式预算。服务商故障应记录为执行失败,不能伪装成模型质量 为零。