归一化文本:TN 与 ITN

POST /v1/text/normalizations

把书面形式转成口语形式(mode:"tn"),或把口语形式转回书面形式(mode:"itn"),不涉及音频。请求里有未知字段会被拒绝,本接口也不消耗音频时长额度。支持的语言和类别见 Skylark 清单条目的 x_edgespeak.normalization。

指南与示例文本处理本地网关 API全部接口

请求体

application/json必填

textstring必填必填,非空,UTF-8 最长 256 KiB。
languagestring必填必填:传语言代码,或传 und 按文本逐段选择读法。无法识别的标签返回 400 normalization_invalid_request;没有归一化规则的语言返回 422 normalization_language_unsupported。见 /docs/languages#normalization 。
modelstring归一化模型。默认 EdgeSpeak/Skylark。默认 "EdgeSpeak/Skylark"
modestringtn 把书面形式改写成口语形式,itn 反过来。默认 tn。tn | itn默认 "tn"
top_kinteger返回的候选数量,范围 1–16。默认 8;传 1 只要最优候选。1–16默认 8
classesstring[]可选的非空类别数组,例如 cardinal、date 或 money。

响应

200归一化候选。span 偏移是原始输入里的 UTF-8 字节范围。
taskstringnormalize
modelstring
languagestring
modestringtn | itn
textstring完整保留输入。
alternativesobject[]
rankinteger
textstring转换后的段落。
spansobject[]
JSON
{
  "task": "normalize",
  "model": "EdgeSpeak/Skylark",
  "language": "en",
  "mode": "tn",
  "text": "Registration is open for the workshop. The fee is $25 and the session starts at 09:30.",
  "alternatives": [
    {
      "rank": 0,
      "text": "Registration is open for the workshop. The fee is twenty five dollars and the session starts at nine thirty.",
      "spans": [
        {
          "start_byte": 50,
          "end_byte": 53,
          "class": "money",
          "source": "$25",
          "output": "twenty five dollars"
        },
        {
          "start_byte": 80,
          "end_byte": 85,
          "class": "time",
          "source": "09:30",
          "output": "nine thirty"
        }
      ]
    }
  ]
}
400请求不合法。先改请求再重试:error.code 用于程序判断,error.param 用于定位是哪个输入。
401API Key 缺失或无效。
403Host 或 Origin 不被允许,或 License 被拒。按 error.code 区分这两种情况。
503所需的本地模型仍在准备(model_downloading),或服务正忙(service_busy)。带 Retry-After 时按它退避。