用例 · 风险信号
用 Jev 处理欺诈信号与 KYB 复核
核验日期 2026 年 11 月 10 日。jevtypesafe.org 为独立第三方托管站,不代表 TypeSafe AI 或 Sardine。
风险工作流可以让模型理解证据,同时不让模型批准企业或拒绝客户。Jev 回答已提供材料中的具体问题,应用搜集事实、执行策略,并把案例交给有资质的复核人员。
本文不是金融、信贷、风控或法律建议。以下示例不批准或拒绝支付、贷款和 KYB 申请。未经验证的模型输出不能作为重大业务决策的唯一依据。
第三方案例:Sardine 公布了什么
Soups Ranjan 在 2026 年 11 月 2 日的 Sardine 文章中介绍三类用法。它们是 Sardine 的实验和集成,不是 jevtypesafe.org 实测。
一次事件中,账户关联分析从五个已知坏用户扩展到 13 名用户和 29 笔欺诈卡交易。Jev 标出其中 27 笔,规则标出 26 笔,Sonnet 流程标出 18 笔。文章报告 Jev 每次输入不足 1,000 token,调用约 100 ms,成本约为对照实验的二十五分之一。
这只是已知欺诈集合上的结果,不能推出正常流量上的总体准确率或误报率。Sonnet 对照把 29 个判断合在一次请求中,与实时逐笔调用不同。文章使用宽泛风险问题,更细问题是下一步计划。
Sardine 还描述姓名与邮箱一致性信号及婚后姓氏边界情况;KYB 由 Web360 搜集材料并在 Sardine Flow 中转成结构化答案,不代表本站提供 Web360 或 Sardine Flow。
分开资料、判断与策略
在这个模式里,Jev 不会主动抓取缺失资料。概率也不是对外部数据库的事实核验。
| 工作 | 负责方 |
|---|---|
| 获取注册资料和来源快照 | 已授权的应用服务 |
| 计算频次、日期和账户关联 | 应用代码 |
| 判断给定证据是否支持主体、活动匹配 | 具体模型问题 |
| 确定阈值、法律要求和复核优先级 | 经验证的策略代码和专业人员 |
| 批准动作或作出不利决定 | 有权限且满足必要人工复核的流程 |
本站合成示例:KYB 复核队列
独立示例使用虚构设计工作室与两条合成 findings。请求只判断证据是否支持主体与活动匹配,不问“是否批准企业”。
示意响应中的概率与用量为假设值。review_queue 只返回人工复核标签;缺失判断、过期证据或低匹配概率分别进入对应队列。即便两项概率都高,仍进入标准人工复核,不自动通过。
0.8 边界仅为演示,不是风控策略。缺失证据不能当作违规证明。
使用真实申请人数据前先验证
在经同意且受保护的数据上评估,覆盖正常案例,不仅已知欺诈。分开调参与保留测试集,衡量误报、漏报、校准与复核量。
公开演示不要放敏感记录。上线前单独审核本站数据处理条款,并定义留存、访问控制、审计与宕机行为。
阅读判断与代码组合方法及本站 API 契约。Playground 适合合成输入,不是经认证的 KYB 产品。
完整离线示例
合成输入与假设响应,仅用于演示。以下代码不联网,不执行任何业务动作。
{
"model": "jev",
"state": {
"business": "Illustrative Paper Lantern Studio",
"findings": [
{
"source_id": "registry_snapshot",
"text": "The registry snapshot lists Paper Lantern Studio LLC as active."
},
{
"source_id": "application",
"text": "The applicant describes a design studio, but has not supplied evidence of the trading-name relationship."
}
]
},
"questions": {
"entity_match": {
"type": "noul",
"instructions": "Do the supplied findings support that the applicant and registered entity are the same legal entity? Judge only the supplied evidence."
},
"activity_match": {
"type": "noul",
"instructions": "Do the supplied findings support that observed business activity matches the stated design-studio activity? Missing evidence does not establish a match."
}
}
}{
"model": "jev-1.14.0",
"answers": {
"entity_match": {
"type": "noul",
"noul": 0.46
},
"activity_match": {
"type": "noul",
"noul": 0.31
}
},
"usage": {
"input_tokens": 240,
"billed_tokens": 240,
"output_tokens": 0,
"remaining_tokens": 11999760
},
"meta": {
"decide_model": "jev",
"credit_multiplier": 1
}
}import math
def probability(response, name):
try:
answer = response["answers"][name]
value = answer["noul"]
if answer["type"] != "noul":
return None
if type(value) not in (int, float):
return None
if not math.isfinite(value) or not 0 <= value <= 1:
return None
return value
except (KeyError, TypeError):
return None
def review_queue(response, facts):
"""Prioritize manual KYB review. Never approve or reject an applicant."""
entity = probability(response, "entity_match")
activity = probability(response, "activity_match")
if entity is None or activity is None:
return "manual_review_missing_judgment"
if not isinstance(facts, dict) or facts.get("evidence_current") is not True:
return "manual_review_stale_evidence"
if entity < 0.8 or activity < 0.8:
return "manual_review_evidence_gap"
return "manual_review_standard"Sources
来源参考:
This is an unofficial community resource. We are not affiliated with TypeSafe AI, Sardine, or Liquid AI.