convaiinnovations/laya-multilingual
摘要
Laya Multilingual 是一个多语言AI决策模型,它能在单次前向传播中为100多种语言提供带概率的分类答案,相比仅英语模型提高了准确性。
查看缓存全文
缓存时间: 2026/09/23 15:06
convaiinnovations/laya-multilingual · Hugging Face
来源:https://huggingface.co/convaiinnovations/laya-multilingual
https://huggingface.co/convaiinnovations/laya-multilingual#laya-multilingualLaya 多语言模型
非自回归系统1决策模型,覆盖100+语言。只需提供状态(文本、邮件、工单或JSON)和类型化问题,即可通过单次前向传播返回带概率的类型化答案。无需文本生成,因此无需解析,也不会产生幻觉输出。
属于Laya系列(https://huggingface.co/convaiinnovations/laya)——对于非英语场景请使用此检查点。
https://huggingface.co/convaiinnovations/laya-multilingual#quickstart快速入门
pip install laya
import laya
agent = laya.load("convaiinnovations/laya-multilingual")
result = agent.predict(
{"body": "मुझसे इनवॉइस 4411 के लिए दो बार शुल्क लिया गया। कृपया आज ही धनवापसी करें।"},
{"department": {"type": "choice", "instructions": "Which team should handle `body`?",
"criteria": {"billing": "invoices, payments, refunds",
"technical": "bugs and outages", "sales": "pricing"}},
"refund_requested": {"type": "noul", "instructions": "Does the sender ask for money back?"}},
)
print(result["answers"]["department"]["choice"]) # billing
https://huggingface.co/convaiinnovations/laya-multilingual#let-the-router-choose让路由器自主选择
from laya import Router
router = Router()
router.predict({"body": "I was charged twice"}, questions) # -> laya
router.predict({"body": "二重に請求されました"}, questions) # -> laya-multilingual
自laya 0.3.7版本起,默认的Router()会同时保持english和本检查点常驻内存,因此混合工作负载下不再需要在语言切换时重新加载检查点。对于服务器部署,建议预先加载模型,使每种语言的首次请求也只需单次前向传播:
router = Router()
router.preload(["english", "multilingual"]) # 两者常驻内存;请求时无需切换
router.attach("multilingual", agent)可注册已构建的Agent实例,使得直接加载过本检查点的进程可以将其直接交给路由器,避免重复加载。
自0.3.7版本起,更多文本会路由至此检查点:纯ASCII编码的西班牙语、意大利语、葡萄牙语和法语(邮件客户端和工单系统可能剥离了重音符号)、巴西葡萄牙语支持文本,以及路由器无法识别文字体系的任何脚本。如果您已运行语言识别模型,可通过router.predict(state, questions, lang_guess=code_or_callable)传递识别结果。
路由决策基于输入的文字体系,在前向传播之前完成——因为当检查点无法解析输入时,模型置信度不会提供任何警告(见下文)。
若
laya.load()卡住:transformers在导入时会探测TensorFlow,当TF已安装时其abseil运行时可能导致模型构建死锁。请使用USE_TF=0环境变量运行。
https://huggingface.co/convaiinnovations/laya-multilingual#why-this-checkpoint-exists为何需要此检查点
在全部51种MASSIVE语言上测试,包含20个选项的意图分类(随机基准为0.050),两个检查点回答相同问题时:
laya(英语) | laya-multilingual | |
|---|---|---|
| 宏平均准确率 | 0.227 | 0.366 |
| 宏平均ECE | 0.733 | 0.387 |
| 超过3倍随机基准的语言数 | 23 / 51 | 45 / 51 |
英语检查点在非英语场景下无法平滑退化——其性能会急剧崩溃,且崩溃时仍保持高置信度。例如:高棉语在0.952置信度下准确率为0.000。希伯来语0.060、亚美尼亚语0.050(与随机相当)、孟加拉语0.080——所有报告的置信度均在0.89–0.96之间。其平均置信度在任何准确率水平上从未低于0.885,因此无法通过置信度阈值来捕获失败情况。
本检查点能将各语言从近随机水平提升至可用状态:阿拉伯语0.110→0.400,孟加拉语0.080→0.290,阿塞拜疆语0.100→0.300,印地语0.100→0.387,韩语0.110→0.490,土耳其语0.140→0.437。
https://huggingface.co/convaiinnovations/laya-multilingual#xnli-15-languagesXNLI(15种语言)
laya | laya-multilingual | |
|---|---|---|
| 英语 | 0.860 | 0.843 |
| 其他14种语言 | 0.521 | 0.731 |
https://huggingface.co/convaiinnovations/laya-multilingual#speed–it-is-also-the-faster-checkpoint速度优势——同时也是更快的检查点
| 每次调用的问题数 | laya | laya-multilingual |
|---|---|---|
| 1 | 139.5 ms | 32.8 ms |
| 10 | 158.6 ms (15.9 ms/q) | 72.3 ms (7.2 ms/q) |
| 50 | 771 ms | 337 ms (6.8 ms/q) |
尽管词汇表大小为256k,在T4单卡上批处理时仍可达每秒103–332个问题——768维/22层编码器的每token成本低于1024维/28层架构,且差距随批大小增加而扩大。
https://huggingface.co/convaiinnovations/laya-multilingual#architecture模型架构
- 骨干网络mmBERT-base(307M参数,双向,22层,隐藏维度768,256k词汇量)+从零训练的决策头:2个Transformer层、选项标记评分器和动作/升级头。总参数量322M。
- 选项标记机制每个选项在其专属的
[MASK]token上评分,然后在该问题所有选项上进行softmax——答案空间按请求动态定义,无需重新训练。 - 输入限制每个问题最多1024个token,其中256个用于问题文本和选项内容。
- 使用RLCD从零训练:15,987次更新,4个epoch,耗时约4.97小时。
https://huggingface.co/convaiinnovations/laya-multilingual#limits使用限制
- 输出未经校准。温度参数固定为
temperature = [1.0, 1.0, 1.0],不按选项数量分桶调整。模型系统性过拟合(平均置信度0.75–0.83,但准确率显著偏低)。在验证集上按(问题类型,选项数量)重新拟合温度参数可将平均ECE从0.314降至0.106。在使用概率值前,请务必在您自己的数据上进行校准。 - 英语性能弱于专用检查点:英语测试集宏平均准确率0.619 vs 0.684。建议通过路由器调度而非直接替换。
- 类型化决策零样本性能接近随机——0.342,略高于随机基准0.318和多数类基准0.461。需针对具体工作流微调以提升性能。
choice问题选项数量建议控制在~20个以内。所有选项共享固定的256 token头部预算,过大的标签空间会导致每个标签仅分得少量token,准确率急剧下降。- 低资源语言表现较弱但非完全失效:斯瓦希里语0.210,泰米尔语0.250,阿姆哈拉语0.110。
- 序数型
score问题是最弱的基元类型(SST-5基准0.282),且本检查点存在实测位置偏差:在任何语言中都极少选择列表首项(包括英语,独立运行中290次测试0次选择首项,参见#131)。英语评分问题建议使用英语检查点。其他语言请先在您的数据上验证score输出。 - **
noul类型可能低估“真实”判断。**在明确正向的输入上,某次测量显示P(true)仅约0.5,而负向案例却能正确接近0(#156)。若noul答案可信度低,可改用双选项choice(键为中性标签A/B,描述为是/否)进行交叉验证。
https://huggingface.co/convaiinnovations/laya-multilingual#links相关链接
- Hub / 系列主页https://huggingface.co/convaiinnovations/laya
- GitHubhttps://github.com/NandhaKishorM/laya · 完整基准数据见
research分支 - PyPIhttps://pypi.org/project/laya/
- 演示https://huggingface.co/spaces/convaiinnovations/laya-demo
Apache 2.0 · Convai Innovations
相似文章
convaiinnovations/laya
Laya 是一款开源的非自回归决策模型,提供带有校准概率的类型化回答,旨在用于电子邮件分类和对话AI等任务,相比现有模型显示出显著的性能提升。
Laya: Jev 的开源版本
Laya 是一个开源的快速多语言决策引擎,为结构化模式提供非自回归、校准概率,声称比 Jev 快 6-8 倍,并且完全开放。
@NFT_Chen: 什么?!一个仅0.6B的本地开源决策模型在Typed Decisions上超越了Laya!AgentJev-0.6B vs Laya: 准确率…
AgentJev-0.6B是一个小型开源AI决策模型,在Typed Decisions上超越了Laya,准确率更高,计算量显著减少,实现了更快的本地推理。
Laya:用322M参数决策引擎取代LLM评判(9天内获26,639星标,实操测试)
Laya是一款322M参数非自回归决策引擎,旨在取代LLM评判,无需生成令牌即可提供快速且确定的类型化决策,使其在分类任务中具有成本效益。
laya.cpp: 优化的Laya近即时决策
laya.cpp 是一个优化的 C++ 实现,用于近即时决策,基于 ggml 构建并带有自定义 CUDA 内核,展示了在 Laya 模型上相比 Python 的显著速度提升。