首页 > 解决方案 > DeepPavlov REST API 响应格式不是有效的 JSON

问题描述

我目前有一个在 docker 容器中运行并使用rise RESTAPI 的 DeepPavlov 机器人。

我的模型基于英语问答机器人配置,但基于我自己的问答数据进行了训练。它具有相同的链接器配置。

它以 proba2labels/answers_vocab 组件结束:

    {
      "in": "y_pred_proba",
      "out": "y_pred_ids",
      "class_name": "proba2labels",
      "max_proba": true
    },
    {
      "in": "y_pred_ids",
      "out": "y_pred_answers",
      "ref": "answers_vocab"
    }
  ],
  "out": [
    "y_pred_answers",
    "y_pred_proba"
  ]

当我查询它时,我得到了我个人以前从未见过的格式的响应:

[
  [
    "lower_voice_less_aggressive",
    [
      0.08536596502221176,
      0.05579590618528472,
      0.6571040611256327,
      0.01416261235595541,
      0.0551734506188862,
      0.048422377649025135,
      0.0404958436323856,
      0.04347978341061844
    ]
  ]
]

如果它作为有效的 JSON 返回,它会更有用。有没有办法配置 DeepPavlov 来做到这一点?

标签: restdeeppavlov

解决方案


不,没有简单的方法来配置 DeepPavlov 来做到这一点。您应该更改 DeepPavlov 源代码或使用正确的响应格式编写自己的服务器。在第二种情况下,DeepPavlov 模型可以与 build_model 方法一起使用。


推荐阅读