
Julia 1的3种决策类型choice、score与noul完整实战指南【免费下载链接】Julia-1项目地址: https://ai.gitcode.com/hf_mirrors/SupersonicLabs/Julia-1Julia 1 是 Supersonic Labs 推出的144.3M 参数决策模型给它一段上下文状态state、一个问题加上 2–20 个候选答案它就能返回一个明确决定和完整概率。本文带你完整掌握它最核心的三种决策类型——choice多选一、score有序评分、noul布尔判断教你在客服分流、风险分级、审批决策等真实场景里选对接口、写对调用。为什么一个模型就能搞定分类、评分和审批传统规则路由需要你穷举关键词、维护分支顺序而 Julia 1 直接读懂上下文和候选答案的含义一个模型、一个 API就能同时处理三类请求从多个候选里选一个→choice在有序标度上打个分→score对某个命题回答是或否→noul三个类型共享同一个predict(state..., questions...)接口还能在一次调用里批量提出多个命名问题各自独立打分。核心实现位于 julia/typed.py参数校验规则在 julia/data.py。决策类型criteria 写法返回的核心字段典型场景choiceID → 描述 的映射2–20 项choice胜出 ID 各选项概率客服团队分流、意图分类score有序标度列表2–20 项顺序即分值score期望索引浮点数max_probability严重度分级、风险评级noul可选false/true两个键映射描述noultrue 的概率是否转人工、是否批准 每个回答都包含type和probabilities完整 softmax 概率未做展示舍入choice/score 还会附max_probability方便你判断模型有多确定。一、choice让模型从候选答案中选出最优解choice适合答案就在选项里的场景。criteria是一个映射键是自定义 ID值是候选项描述模型的输出会原样使用你给的 ID方便直接接入下游逻辑。实战示例客服工单分流result engine.predict( stateI was charged twice for the same order., questions{ team: { type: choice, instructions: Which team should handle this request?, criteria: { billing: Billing and payment disputes, shipping: Shipping and delivery, access: Account access and login, }, }, }, ) print(result[answers][team][choice]) # 胜出团队 ID print(result[answers][team][probabilities]) # 各团队概率三个小坑提前避候选数量 2–20这是训练契约超了会被直接拒绝见 julia/data.py 中的validate_row开启严格编码时每个选项 ≤48 token描述请精炼选项之间语义要拉开差距模糊相近的选项最容易让模型摇摆。二、score有序评分返回一个期望分值score适合需要程度而非类别的场景低/中/高严重度、1–5 星质量评级……criteria是一个有序列表顺序即分值从 0 开始编号。模型返回的不是某一个档位而是各档位概率的期望索引浮点数——例如 3 档标度返回1.0就表示模型认为中等。questions { severity: { type: score, instructions: How severe is this incident?, criteria: [low, medium, high], # 顺序即 0/1/2 分 }, }使用要点返回的score是期望值官方基准计算正确性时用的是最高概率档不要擅自四舍五入后再比对max_probability告诉你分布的集中度值低说明证据不足建议转人工。三、noul布尔判断返回为真的概率noul读作 no/oul即非/是处理是/否问题返回一个 0–1 之间的数——true 的概率阈值由你自己定模型不做二值化。它有个容易忽略的细节criteria是可选的。不写 criteria模型直接用字面false/true作为两个选项写了 criteria必须恰好包含false和true两个键分别映射成人类可读的描述描述顺序固定为 false 在前、true 在后。值得重视官方 CPU 消融实验显示提供描述时 noul 正确 483/600退化为字面 false/true 时只有 391/600数据见 metrics/typed-cpu-20260926.json。描述写得越贴合你的业务判断越稳。questions { review: { type: noul, instructions: Needs human review?, criteria: { false: No human attention is warranted., true: A human should inspect this run., }, }, } # answers[review][noul] 就是 true 的概率怎么选一条决策规则答案离散、候选可枚举→choice需要程度/等级且等级有序 →score只要通过/不通过的二元决定 →noul同一份上下文要问多个问题把它们放进同一个questions字典一次调用批量返回互不干扰。快速上手三步跑通第一个决策1️⃣获取模型需要 Python 3.11 与标准 PyTorchCPU 即可推理git clone https://gitcode.com/hf_mirrors/SupersonicLabs/Julia-1 python -m pip install -e ./Julia-12️⃣加载引擎FP32 权重约 550.5 MiB请保留完整的 checkpoint 文件而非 LFS 指针模型加载后请在多次请求间复用不要每次重新加载from julia import load_model engine load_model(Julia-1, devicecpu, strict_encodingTrue, max_length8192, head_length512)3️⃣发起预测按上文任一类型组织questions调用predict即可。load_model定义在 julia/inference.py旧版列表式 APIengine.predict([...])也继续受支持。想复现官方基准运行 scripts/reproduce_typed.pypython -m pip install -e .[benchmark] python scripts/reproduce_typed.py --output benchmark/typed-cpu --literal-noul-ablation效果如何基准成绩一览在 2026-09-24 的 H200 BF16 严格编码评测中完整数据见 metrics/accuracy-20260924.json基准成绩Typed decisions 总集2000 题73.15%其中 choice600 题71.33%其中 noul600 题80.67%其中 score800 题68.88%AG News · 4 类分类试点94/100DAIR Emotion · 6 类情绪试点86/100可以看到noul 是三种类型里最稳的score 最难要精确到序数分值。但请注意这些都是试点信号在你自己的问题与选项上先做评估再上线——尤其涉及 72 个候选的 Banking77 这类长标签场景成绩会明显下滑。避坑清单开始前的 4 个提醒2–20 选项硬限制更大的 choice 列表请用分层 Router它通过分组缩小 幸存者重排处理上千候选但注意分组概率不可跨组比较且可能提前淘汰正确答案它不是聊天模型Julia 1 只比较你提供的选项不负责补全缺失知识或多步推理正确率高度依赖state里的证据质量严格编码会拒绝截断strict_encodingTrue时问题/选项超预算、或注入保留标记都会被直接报错这是特性不是 bug概率 ≠ 保证返回的是完整 softmax 分布请结合max_probability和业务风险设置人工兜底。相关资料速查项目总览与安装README.md命名问题接口实现julia/typed.py行校验与序列编码julia/data.py概率展示规则95%/4.5% 归一化julia/probabilities.py原生路由与大批量 choicejulia/router/README.md接口行为测试tests/test_typed_api.pyCPU FP32 复现结果metrics/typed-cpu-20260926.json复现脚本scripts/reproduce_typed.py一句话总结候选可枚举用choice需要程度分级用score是非判断用noul——把选项描述写清楚、把模型加载后复用、在真实数据上先测后上线你就能用 Julia 1 一个接口撑起整条决策流水线。【免费下载链接】Julia-1项目地址: https://ai.gitcode.com/hf_mirrors/SupersonicLabs/Julia-1创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考