---
title: "Parallel Decisions API：联网决策实战"
canonical: https://wavect.io/zh/blog/parallel-decisions-api-rag-decision-models/
language: zh
description: "Parallel Decisions API 将网页检索与结构化判断合为一次请求。本文用 Node.js 示例说明共享引用、可选置信度、批量计费及证据复核，帮助你为供应商核查选择合适架构。"
image: "https://wavect.io/img/blog/headers/header_parallel-decisions-api-rag-decision-models.png"
author: ["Kevin Riedl"]
published: "2026-11-03"
updated: "2026-11-03"
reviewed: "2026-11-03"
---

# Parallel Decisions API：决策模型如何利用网页证据？

[**返回**](/zh/blog/overview/)

[![Kevin Riedl](/img/team/kevin.webp)](/zh/team/kevin-riedl/)

[Kevin Riedl](/zh/team/kevin-riedl/) https://linkedin.com/in/wsdt

12 分钟 阅读 · 2026年11月3日 最近审核 2026年11月3日

[**下一篇**](/zh/blog/jev-ai-decision-model-review/)

要点速览

Parallel Decisions API 在一次请求中检索网页，并返回预设类别、概率或评分，适合核查会变化的公开信息。引用由整批问题共享，置信度并非每种答案都提供。先核对具体产品、方案和日期，再决定是否写入业务记录；严格来源控制或私有文档检索仍可能需要独立流程。

供应商周一上线了新功能，到了周五，你的筛选流程仍把它标为“不支持”，因为模型没有收到更新。JSON 格式完全正确，判断依据却已经过时。

**Parallel Decisions API 把网页检索和有限选项判断合并为一次请求。**你提供上下文和应用允许的答案，它检索公开信息并返回结构化结果。应用还需核对证据是否适用于具体产品、方案和日期，再使用这些分类结果。

Parallel 于 2026 年 10 月 25 日发布该 API， [Decisions API 发布说明](https://parallel.ai/blog/decisions-api) 介绍了这一流程。**资料核查日期：2026 年 11 月 3 日。**我们核对了官方文档和接口定义，并用离线测试数据验证配套代码。本文没有实测在线 API 的准确率或延迟。

## 决策模型的 RAG 是什么？

**决策模型的 RAG，是先检索证据，再回答预先定义的问题。**输出可以是类别、概率或有序评分。Parallel 在服务内部完成检索，应用可以直接请求判断结果。

[官方 Decisions 快速入门](https://docs.parallel.ai/decisions/decisions-quickstart) 定义了共享的 `state`、带名称的 `questions` 和结构化答案。检索与分类通过同一个 API 接口提供。

Jev 则根据传入的状态评估问题，具体见 [TypeSafe 介绍文档](https://docs.typesafe.ai/introduction) 。你也可以自行检索最新证据，再把证据放入状态。我们的 [Jev 决策模型指南](/zh/blog/jev-ai-decision-model-review/) 介绍了这一接口。Parallel 将检索步骤一起纳入了决策服务。

## 什么时候适合用 Parallel，什么时候应拆分检索？

**当问题依赖公开信息、答案范围较小，现有检索控制也符合需求时，可以考虑 Parallel 的集成接口。**如果需要指定资料库、执行访问权限或控制哪些段落进入模型，就保留独立的检索层。

| 方案 | 证据来源 | 适用任务 | 应用仍需负责 |
| --- | --- | --- | --- |
| 对传入状态运行决策模型 | 应用提供相关事实 | 对工单或已有记录分类 | 保持输入状态完整、及时 |
| 独立检索加决策模型 | 自行配置检索器，再调用选定的模型 | 私有文档、来源限制或详细溯源 | 检索质量、权限检查、模型集成和评估 |
| Parallel Decisions API | 服务内部检索公开网页 | 核查供应商功能、企业分类、验证时效性事实 | 问题设计、证据复核和后续操作规则 |

使用企业私有资料时，应先执行访问权限，再向模型提供证据。我们的 [SharePoint、Confluence 和 Drive 权限感知 RAG 指南](/zh/blog/rag-permissions-sharepoint-confluence-drive/) 说明了这种架构。

## Parallel Decisions API 返回哪些结果？

**Parallel 为每个命名问题返回带类型的答案，并为整次请求提供共享引用列表。**条件判断类型叫 `noul`；类别选择从声明的选项中取值；评分按有序标准计算。任何问题也都可能返回拒绝回答。读取答案值之前，先检查它的类型。

| 类型 | 如何定义问题 | 返回字段 | 如何理解 |
| --- | --- | --- | --- |
| `noul` | 在 `instructions` 中描述条件 | `noul`，范围为 0 到 1 | 该条件为真的估计概率 |
| `choice` | 用 `criteria` 对象定义命名选项 | `choice` 和 `probabilities` | 所选类别及各选项的概率分布 |
| `score` | 用有序的 `criteria` 数组定义等级 | `score`、`legend` 和 `probabilities` | 从 0 开始编号的等级索引按概率加权后的平均值 |
| `refusal` | 任何问题都可能出现 | 没有答案值或概率 | 需要单独处理的拒绝回答状态 |

[问题类型文档](https://docs.parallel.ai/decisions/question-types) 建议：证据可能不足时，明确加入 `unknown` 选项。这与下游服务过滤等原因导致的拒绝回答不同。不能因为没找到文档，就把功能标为“不支持”。

[公开 OpenAPI 定义](https://docs.parallel.ai/public-openapi.json) 中，choice 和 score 答案的 `confidence` 可以缺失，也可以为 `null`；`noul` 没有单独的置信度字段。应分别保存所选项的概率和实际返回的置信度。顶层 `citations` 数组可能为空，也没有逐题对应的来源映射。

Parallel 和 OpenAI 都有名为 Decisions API 的产品。复制示例前，先核对主机地址与请求格式。我们的 [OpenAI Decisions API 任务路由指南](/zh/blog/openai-decisions-api-model-routing/) 介绍了另一套接口；下方示例调用的是 `api.parallel.ai`。

## 核查供应商时，怎样避免混淆不同产品？

**每个功能问题都要写清产品、方案和日期。**供应商的一则公告可能只适用于某个 API。可以在同一份供应商上下文中分别询问各产品，并为缺失、模糊或冲突的证据设置 `unknown` 选项。

假设买方想确认：企业协议下，Parallel 的哪些 API 有文档说明支持欧盟境内处理？示例分别询问 `basic` 模式的 Search 和 Decisions，核查同一协议条件下的两项产品能力。

将以下 JSON 发往 `POST https://api.parallel.ai/v1/decisions`，设置 `Content-Type: application/json`，并通过 `x-api-key` 请求头传入保存在服务端的密钥：

```
{
  "mode": "fast",
  "state": {
    "company": "Parallel",
    "website": "https://parallel.ai",
    "agreement": "Enterprise agreement",
    "as_of": "2026-11-03"
  },
  "questions": {
    "search_eu": {
      "type": "choice",
      "instructions": "Does Parallel document EU processing for Search API in basic mode (POST /v1/search) under an enterprise agreement, as of state.as_of? Evaluate this endpoint only; do not transfer a claim about another product.",
      "criteria": {
        "documented_yes": "Official documentation explicitly supports this endpoint, mode and agreement.",
        "documented_no": "Official documentation explicitly excludes this endpoint or requires processing outside the EU.",
        "unknown": "Evidence is missing, conflicting, ambiguous, outdated or applies to a different endpoint."
      }
    },
    "decisions_eu": {
      "type": "choice",
      "instructions": "Does Parallel document EU processing for Decisions API (POST /v1/decisions) under an enterprise agreement, as of state.as_of? Evaluate this endpoint only; do not transfer a claim about another product.",
      "criteria": {
        "documented_yes": "Official documentation explicitly supports this endpoint, mode and agreement.",
        "documented_no": "Official documentation explicitly excludes this endpoint or requires processing outside the EU.",
        "unknown": "Evidence is missing, conflicting, ambiguous, outdated or applies to a different endpoint."
      }
    }
  },
  "advanced_settings": {
    "include_excerpts": true
  }
}
```

[Decisions 最佳实践](https://docs.parallel.ai/decisions/best-practices) 建议让相关问题共享证据。提示词中的“使用官方文档”只能引导模型，无法强制执行来源白名单。`as_of` 也只是任务上下文；历史快照和抓取时间控制需要另外实现。

[下载 Node.js 供应商核查示例](/downloads/parallel-decisions-vendor-screen.mjs) ，使用 **Node.js 22 或更高版本**运行。模块包含请求构建、超时处理和响应复核逻辑。上方 JSON 使用模块默认的日期：2026 年 11 月 3 日；下方调用代码显式改用当天的 UTC 日期。将模块与包含以下内容的 `run-example.mjs` 放在同一目录：

```
import {
  buildRequest, requestDecision, reviewAnswer
} from "./parallel-decisions-vendor-screen.mjs";

const request = buildRequest(new Date().toISOString().slice(0, 10));
const response = await requestDecision(request, {
  apiKey: process.env.PARALLEL_API_KEY
});

for (const name of Object.keys(request.questions)) {
  console.log(name, reviewAnswer(response, name));
}
```

先在环境变量中设置密钥，再运行 `node run-example.mjs`。这段调用代码会按公布费率发起一次 API 请求；仅导入模块不会发起请求。离线测试用人工构造的响应检查应用行为，不能说明检索质量。

## 应用应该怎样使用共享引用？

**把 Parallel 的引用列表视为整次请求的待复核证据。**接受某项功能结论前，先检查具体段落是否对应相同的端点、协议、地区和日期，再将该段落关联到业务记录中的单项判断。共享列表里的一个来源可能只支持其中一道题。

| 收到的结果 | 含义 | 下一步 |
| --- | --- | --- |
| 有文档支持“是”或“否”，概率分布有效，引用摘录可读 | 分类结果完整，附有候选证据 | 检查某段证据是否支持这项具体判断 |
| `unknown` | 按预设证据类别仍无法确定 | 补充证据或向供应商核实 |
| `refusal` | 服务拒绝回答该问题 | 记录拒绝状态并转交复核 |
| 缺少答案、概率分布错误或传输失败 | 集成没有取得可用答案 | 保持记录未确定，排查问题或按有限重试规则处理 |
| 引用为空或没有可用摘录 | 示例缺少可以检查的证据 | 接受判断前，先通过独立流程补齐证据 |

辅助函数要求来源 URL 使用 HTTPS、不含用户名或密码，并至少有一段非空摘录。这是我们为示例设置的本地复核规则。通过检查后，结果进入 `evidence_review` 队列，仍需确认来源是否支持判断。后续若要自动处理，应根据有标签的实际业务样本确定阈值。

保留原始概率分布、实际返回的置信度、`decision_id`、请求版本和收到响应的时间。有来源发布日期或抓取时间时，另行记录。Search 的数据驻留页面可能出现在两项分类的共享引用中，却只支持其中一项；逐字段溯源需要独立验证。

## 一次提交多道题，费用怎么算？

**Parallel 公布的 Decisions 费率为每 1,000 次请求 1 美元，每次最多包含 100 道题。**将同一供应商的相关核查合并，可以减少请求费用。预算仍应以使用时的最新费率为准。

截至 2026 年 11 月 3 日， [官方价格页](https://docs.parallel.ai/getting-started/pricing) 列出上述费率。假设核查 10,000 家供应商，每家有三个相关问题：每家合并成一次请求，公布费率下的请求费用为 **10,000 × 0.001 美元 = 10 美元**；每家分别发起三次，则为 **30,000 × 0.001 美元 = 30 美元**。

这只是请求费用计算，未计入重试、基础设施、额外检索和人工复核。除了 API 支出，还应统计每条最终通过证据复核的记录需要多少成本。

把同一实体的相关问题放在一起。证据难以对应具体问题，或后一道题必须依赖前一道题的结果才能定义时，就拆开请求。

## 能强制获取最新网页，或要求欧盟境内处理吗？

**本次核查的 Decisions 接口文档没有确立强制刷新来源或欧盟境内处理的支持。**其高级设置提供搜索地区和是否返回摘录的选项，但没有说明该端点支持强制来源白名单、发布日期过滤或抓取策略。

Parallel 的 [来源策略文档](https://docs.parallel.ai/resources/source-policy) 为其他 API 说明了域名和时效性控制。如果这些是验收条件，应先通过支持相应控制的 API 检索，再把证据交给独立的决策步骤。

[欧盟数据驻留文档](https://docs.parallel.ai/resources/eu-data-residency) 涵盖企业协议下 `basic` 模式的 Search 和 Extract。Decisions 需要单独确认。`advanced_settings.location` 指定搜索面向的地区，处理数据所在的地区是另一项要求。

带日期的核查应记录来源内容及适用时间。历史判断需要保留的证据或合适的网页存档。测试中加入客户私有文档之前，先确认服务商和数据流符合项目要求。

## 这些基准测试能说明什么？

**Parallel 的基准比较了获取网页证据能力不同的完整 API 配置。**结果可以帮助你选择需要在自身业务中测试的对照方案，但无法单独衡量底层分类模型的准确率。

PWS-Decisions 的 [公开测试方法](https://github.com/parallel-web/pws-decisions-benchmark/blob/main/docs/methodology.md) 说明，共有 300 道题，其中 100 道公开、200 道不公开。参与对比的其他原生决策端点收到相同的状态和问题，但没有另行提供检索出的网页上下文。阅读结论时，需要保留这一配置差异。

Parallel 于 2026 年 10 月 29 日对 300 道题进行了三轮测试， [公布结果](https://github.com/parallel-web/pws-decisions-benchmark/blob/main/docs/results.md) 中，其端点准确率为 76.22%，另一套带原生网页搜索的 Luna 配置为 97.33%。后者公布的成本和延迟也更高。这些是供应商针对该测试集给出的测量结果。选择方案时，应比较完整工作流。

## 上线前，我们会怎样评估？

**我们会先验证每项分类是否得到正确证据支持，再允许它修改业务记录。**从一种判断任务和带日期的参考样本开始，覆盖明确支持、明确不支持和无法确定的情况。先与原有流程并行运行，弄清错误出现在哪里。

| 测试场景 | 需要发现的问题 |
| --- | --- |
| 某项功能最近上线或下线 | 分类是否符合适用来源和日期 |
| 同一家公司的不同方案或端点 | 是否把宽泛公告错误套用到另一个产品 |
| 文档缺失或相互冲突 | 流程能否保留不确定状态，避免编造否定结论 |
| 看似可信的引用实际上描述了另一实体 | 证据复核能否发现答案看似正确、依据却不匹配的情况 |
| 实际业务会遇到的各语言来源 | 产品名称和限制条件翻译后，是否仍保持相同判断含义 |

分别标注预期答案和支持它的段落。统计被接受的记录中有多少判断正确且证据充分、有多少需要人工复核，以及哪些错误通过了复核。测量端到端延迟和完成一条记录的总成本，包括后续补充工作。

我们的起步建议是：先做范围明确的供应商筛选或资料补全试点，设置清晰的证据复核步骤。先确定要判断什么，以及判断错误的代价。如果需要把这套流程接入产品，可了解我们的 [AI 产品与智能体开发服务](/zh/services/artificial-intelligence/) 。

## Parallel Decisions API 常见问题

### 可以通过 MCP 使用 Parallel Decisions 吗？

本次核查的快速入门文档列出了 Parallel MCP 服务中的 web_decisions 工具，地址为 https://mcp.parallel.ai/mcp。文档说明，无需账户或 API 密钥即可免费使用，登录或认证后可获得更高限额。这是 MCP 客户端的接入方式；本文直接发送 HTTP 请求的示例仍需使用自己的密钥，并适用公布的请求费率。

### 能直接把 noul 概率当作布尔值吗？

noul 是 0 到 1 之间的数。在 JavaScript 中，即使很小的非零数也是真值，直接放进 if 条件会产生错误的业务判断。应明确设计并验证决策规则。核查文档时，如果“缺少证据”需要单独处理，包含 unknown 的 choice 通常更容易准确表达任务。

### 同一次请求中，后一道题能依赖前一道题的答案吗？

只有能直接根据共享状态定义的问题，才适合合并。如果 B 必须先取得 A 的返回值，我们建议等 A 完成并通过验证后，再构造下一次请求中的 B。不要把 questions 对象当作顺序执行的程序，也不要假定键的排列顺序会建立题目之间的依赖关系。

### Parallel Decisions 能自动更新 CRM 吗？

决策响应为应用提供数据，CRM 更新仍需由独立集成完成授权和写入。本例的 evidence_review 表示等待核对证据，不能据此直接写入“供应商已获批准”。如果后续允许更新，应将操作与已经复核的具体判断，以及原本打算修改的记录版本关联起来。

### score 一定对应某个完整评分等级吗？

不一定。score 是从 0 开始编号的等级索引按概率加权后的平均值，可以落在两个等级之间。例如，等级 0 和 1 的概率分别为 0.25 和 0.75，结果就是 0.75。应用应按自己的评分标准解释这个值；需要一个离散类别时，使用 choice 更合适。

### 德语、西班牙语和中文来源需要分别测试吗？

我们建议测试工作流实际会遇到的每一种语言。同一产品可能使用不同方案名称，也可能先在某一种语言的文档中公布变化。参考答案应关联到带日期的证据，并检查容易在翻译中丢失的限制条件。英语测试集表现良好，不能直接证明其他语言具有相同的证据质量。

决策模型

## 接下来读什么

比较决策模型服务商，处理类型化答案，校准概率，并用网页证据支撑范围明确的决策。

[从这里开始**Jev AI 评测：面向智能体工作流的决策模型**](/zh/blog/jev-ai-decision-model-review/)

- [OpenAI Decisions API：置信度、拒绝回答与任务路由](/zh/blog/openai-decisions-api-model-routing/)
- [Cloudflare Clef 与 Jev：价格、基准测试与迁移](/zh/blog/cloudflare-clef-vs-jev/)
- [AnyJev：LLM 概率校准与选项顺序偏差](/zh/blog/anyjev-calibration-option-order-bias/)
- [Laya 与 Jev 的企业应用：6 个实用工作流](/zh/blog/laya-jev-business-workflows-roi/)
- [Laya vs Jev：基准结果与 AI 创业护城河](/zh/blog/laya-vs-jev-benchmark-ai-startup-moat/)

[下一篇文章**OpenAI Decisions API：置信度、拒绝回答与任务路由**](/zh/blog/openai-decisions-api-model-routing/)

[**返回**](/zh/blog/overview/)

[![Kevin Riedl](/img/team/kevin.webp)](/zh/team/kevin-riedl/)

[Kevin Riedl](/zh/team/kevin-riedl/) https://linkedin.com/in/wsdt

12 分钟 阅读 · 2026年11月3日 最近审核 2026年11月3日

[**下一篇**](/zh/blog/jev-ai-decision-model-review/)
