Laya 决策服务现已通过 LayerCloud 网关提供

release laya models

我们在网关中加入了一个本地决策服务。它非常擅长某一类问题,而明确说明是哪一类很重要。

它能做什么

Laya 是一个决策路由器。你给它一段文本——一条客服消息、一个表单字段、一条投诉——以及一组关于这段文本的带类型的提问。它为每个问题返回一个答案和一个置信度数值。

它不是聊天模型。它不进行对话,也不会替你写邮件。如果你提出开放式问题并期待成段的文字,你会失望。

两种调用方式

原生端点,即 Laya 自己的格式:

curl https://ai.layercloud.ir/v1/systemone \
  -H "Authorization: Bearer $LAYERCLOUD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "state": "本月我被重复扣费了两次,而且没有人回复",
    "questions": {
      "department": {
        "type": "choice",
        "instructions": "这个问题应该由哪个团队处理?",
        "criteria": ["billing", "technical", "other"]
      }
    }
  }'

兼容 OpenAI 的端点,如果你的代码已经在使用它:

curl https://ai.layercloud.ir/v1/chat/completions \
  -H "Authorization: Bearer $LAYERCLOUD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "laya",
    "messages": [{"role": "user", "content": "{\"state\": \"我被重复扣费\", \"questions\": {\"department\": {\"type\": \"choice\", \"instructions\": \"哪个团队?\", \"criteria\": [\"billing\", \"technical\"]}}}"}]
  }'

两者返回同一个决策。OpenAI 格式是在消息内容中承载一个决策请求,而不是提示词;自由文本会被明确拒绝,因为分类器面对一个没有人真正输入的问题,仍然会给出自信的答案。

访问方式

laya 与其他模型行为一致。它会出现在你的模型列表中,由你账户现有的模型权限决定你是否可以使用。无需单独申请。

依赖它之前需要知道的两件事

置信度数值未经校准。 0.98 并不意味着「98% 正确」。请把这些数字看作你所给选项之间的相对得分,并阅读响应中携带的 caveat。

它在本地、在我们自己的硬件上运行。 因此成本较低,而且这一次调用中你的文本不会离开我们的环境。

三种提问类型

你提出的每个问题都有一个类型,正是这个类型让答案能直接在代码中使用,而不需要你再解析一遍。

choice 从你提供的列表中选择一个标签。适用于路由和归类。

{"department": {"type": "choice",
                "instructions": "这个问题应该由哪个团队处理?",
                "criteria": ["billing", "technical", "sales", "other"]}}

score 按你描述的等级对文本评分,按顺序由低到高。适用于任何需要严重程度或质量判断、而不是分类的场景。

{"urgency": {"type": "score",
             "instructions": "这个问题的紧急程度如何?",
             "criteria": ["可以等", "今天内应处理", "服务已中断"]}}

noul 允许模型不作答。这比看上去更重要:在真实流量中,有些输入确实不属于任何选项,而被强迫选择的模型无论如何都会选一个。给它一条退路,才能发现你自己的分类哪里有问题。

{"is_feedback": {"type": "noul", "instructions": "这是产品反馈,而不是请求吗?"}}

返回结果的样子

{
  "answers": {
    "department": {
      "type": "choice",
      "choice": "billing",
      "probabilities": {"billing": 0.9867, "technical": 0.0081, "sales": 0.0026, "other": 0.0026},
      "confidence": 0.9277
    }
  },
  "routing": {"model": "english", "reason": "English Latin text"},
  "confidence_calibrated": false,
  "caveat": "..."
}

你会拿到选中的标签、它背后的分数,以及一个告诉你这些分数未经校准的标志。请读那个标志。

企业可以怎么用

Laya 最有价值的地方,是有人正在读一小段文字并决定它该去哪里。这类单次判断很便宜,数量一大就昂贵。

客服分派。 在人工打开工单之前,把它送到正确的队列,并让 noul 类型标出不属于任何分类的那些——它们通常最值得看。置信度分数让你自动化简单的 80%,把其余转给人工,而不是假装整条流量都一样难。

销售线索评估。 用你定义的等级给咨询表单打分,让销售看到的是排序后的列表而不是一个邮箱。分数是相对你写的等级而言的,所以要仔细写——答案的质量受你给出的选项质量限制。

内容审核。 用你自己的政策类别来判断举报,而不是笼统的「有毒/无毒」。因为标签由你提供,输出与你团队实际执行的规则一致,判断过程也可审计。

表单与文档理解。 当一个字段以自由文本到达、但必须变成一个值的时候,这个服务把叙述转成带类型的答案:哪个部门、多紧急、哪条产品线、是投诉还是咨询。

语言路由。 服务会报告它使用了哪个模型以及原因,所以你能看出请求走的是英文路径还是多语言路径。

它不适合做什么

它不会替你起草回复。不会把长文档概括成报告。它不进行对话,也不在多次调用之间记住任何内容——每个请求都是独立的,所以模型需要知道的一切都必须放在你发送的 state 里。

如果你的问题是「读这个,决定一件事」,这就是正确的形态。如果是「替我写点东西」,那就是工具选错了,聊天模型才是对的。

成本与隐私

它在本地、在我们自己的硬件上运行。这一次调用中你的文本不会离开我们的环境,也没有按 token 计费的开销。代价是它是一个小型专用模型:在上面那类窄任务上表现出色,但不是通用助手。

它有多快

有两个数字很重要,而它们属于不同的硬件。

在我们的服务上,一次简短的决策大约需要一秒。 这是我们在自己的 CPU 上、连续多次调用测得的,并且包含经过网关的网络往返。

模型官方公布的数字是低于 35 毫秒,由构建它的人在一张 T4 GPU 上测得。同一个模型,不同的硬件——GPU 本来就是跑一次前向传播的正确位置。

网关本身的开销大约是 25 毫秒。 直连服务是 1038 毫秒,经过网关是 1062 毫秒。也就是说,路由、鉴权、用量记录和兼容 OpenAI 的那一层,加起来只增加了约 25 毫秒。时间花在模型和硬件上,而不是管道上。

说清楚这一点,是因为它决定了你该期待什么:如果你只是在决定一张工单该去哪个团队,一秒相对于一个人打开它所花的时间,微不足道。而如果你要的是那个 35 毫秒,那是 GPU 的话题。

观看

下面是关于 Laya 这一族模型的独立讲解视频——由他人制作,不是我们的作品。 我们给出链接,是因为它们比再写一页文字更快更清楚地讲清了这项技术,而不是因为它们属于我们。

如果你要的是原始出处而不是视频,项目自己的站点是 laya.convaiinnovations.com,模型权重也公开在 Hugging Face 上。

观看时请记住一点。 那些视频讲的是模型本身。我们运行的是同一个模型,但放在我们自己的网关后面,跑在 CPU 上,带一个兼容 OpenAI 的入口和你们现有的 API key。「是什么」相同,「在哪里」不同。