Skip to main content
使用 JevClient 调用结构化判断接口。它返回概率、选择或评分;生成用户回答仍由你配置的生成模型完成。

添加依赖

涉及 Harness 中间件、压缩或 Agent 案例时,还需要同版本 agentscope-harness;扩展中的 Harness 依赖为 optional。

场景:检查“退款已完成”是否有证据

业务记录是“尚未发起退款”,Agent 却生成了“退款已完成”。这里把回答与记录放在同一份 state 中,询问记录是否支持回答。客户端负责发起并校验类型化请求;是否发布、修订或转人工,由上层组件根据结果决定。

发起判断并读取概率

这里返回的数值不是退款状态,也不会改变业务记录。若需要 PASS/FAIL/INCONCLUSIVE 与阈值处理,直接使用条件评审,避免各业务重复实现分支。 在响应式服务中返回或组合 Mono,避免为了记录结果重复订阅。共享 state 在请求完成前不要修改。需要多个判断时,在同一个 builder 上按不同 ID 添加 .question(...)。

配置与错误

默认端点为 https://api.typesafe.ai,默认模型为 jev-latest,单次请求超时 5 秒。没有显式 key 时,依次读取 TYPESAFE_API_KEY、JEV_API_KEY。存在密钥不会自动启用中间件。 客户端向 /v1/systemone 发请求,对 HTTP 429、529 和 5xx 按策略退避重试;非重试错误、重试耗尽和响应校验失败抛出 JevException。它检查题目集合、答案类型、概率分布和 Score 等级。应用不应从缺失答案中补造成功结果。 单次 HTTP 超时与一次逻辑判断的总预算不同。多批次、重试和退避的总上限由 JevExecution、Judge 或对应组件设置。取消可以停止本地订阅,远端请求是否中断取决于传输实现。

Spring Boot 配置

可用 JevClientBuilderCustomizer bean 定制构建器。Starter 配置客户端;具体 Harness 能力仍需显式注册和设置模式。

使用文本模型做同题对照

JevTextBackend(model, transport) 接收 SystemOneRequest,生成兼容 Chat Completions 的请求。transport 是由应用提供的 Function<String, Mono<String>>,负责端点、鉴权、超时和取消。 适配器严格校验 JSON、题目和分布,不补缺项、不自动归一化非法概率;文本模型自报概率需单独校准。可运行的 HTTP 对照入口见评测指南。

先运行离线案例

JevApplicationScenarios的 judge 场景展示同类退款证据检查的三种状态。按构建步骤设置 JEV_CP 后执行:
离线案例注入预设概率,不调用 HTTP,不代表模型效果。上面的客户端代码会访问真实接口,需要显式配置密钥;接口失败应走错误处理,不能用离线结果替代真实判断。