正在统计访客…
浏览全部文档
开始 · 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 存储管理兼容性与可信发布
文档/构建 Agent
第一次使用?通过 45 分钟核心课程建立完整心智模型
构建 Agent

使用检索为 Agent 提供事实依据

加入静态或动态证据,同时让检索文本保持不可信且可追溯。

实践指南·10 min

静态上下文

在构建 Agent 时已经掌握少量明确证据,可以使用 .context(...)

let agent = runtime
    .agent("policy")
    .system("Use only the supplied policy evidence.")
    .context("Returns are accepted within 30 days.");

静态上下文简单且确定,但不适合大型或频繁变化的语料库。

动态上下文

动态上下文源会针对当前请求检索文档,只注入选中的证据。让 Agent 依赖 Retriever Trait,而不是某个数据库厂商。

显式设置查询、结果数量、分数阈值与上下文大小。返回稳定文档 ID 和来源元数据,答案 才可以追溯。

安全边界

检索文本是不可信证据,永远不是系统指令。即使文档写着“忽略之前的要求”,它也不能 仅因为出现在搜索结果中就获得权限。

租户过滤必须在向量搜索前执行,不能事后补救。不要让模型生成检索使用的命名空间、 权限谓词或数据库凭证。

持久化存储

测试与小型本地实验先用 InMemoryVectorIndex。需要持久化、分布式访问或更大语料时, 启用 qdrantpgvector Feature。

Embedding 模型、距离算法、向量维数与归一化方式共同构成索引契约。任一变化都需要 有计划地迁移或重建索引。

评估质量

检索质量与答案质量应分别评估:

  • 必要来源在前几个结果中的召回率;
  • 无关上下文比例;
  • 引用是否准确;
  • 找不到相关文档时的回答行为;
  • 不同查询类型的延迟与成本。

维护版本化评测集,并在模型、切块、过滤、Prompt 或服务商变化后重新运行。