/ model / train http API在json中提供“ nlu”数据时给出500错误

问题描述

我正在尝试使用httpapi训练模型,而json数据打击就是代码

async TestHeartBeat()
{
      let Response:Boolean = false;

      const headers = new HttpHeaders()
            .set('Content-Type','application/json');
      
      const options = {
        headers: headers,observe: "response" as const,responseType: "json" as const
      };

      await this.http.get(`${environment.apiUrl}/TestController/HeartBeat`,options)
      .subscribe(res=>{
        Response = true;
      },error=>{
        Response = false;
      })
      return Respone;
}

它给了我500错误。下面是错误日志:

import requests
import json

data = {
    "config": "language: en\npipeline:\n- name: Whitespacetokenizer\n- name: RegexFeaturizer\n- name: LexicalSyntacticFeaturizer\n- name: CountVectorsFeaturizer\n- name: CountVectorsFeaturizer\nanalyzer: \"char_wb\"\nmin_ngram: 1\nmax_ngram: 4\n- name: DIETClassifier\nepochs: 100\n- name: EntitySynonymMapper\n- name: ResponseSelector\nepochs: 100","nlu": json.dumps({
        "rasa_nlu_data": {
            "regex_features": [],"entity_synonyms": [],"common_examples": [
                {
                    "text": "i m looking for a place to eat","intent": "restaurant_search","entities": []
                },{
                    "text": "I want to grab lunch",{
                    "text": "I am searching for a dinner spot",]
        }
    }),"force": False,"save_to_default_model_directory": True
}

r = requests.post('http://localhost:5005/model/train',json=data)

当我使用终端命令和json文件训练模型时,训练成功。我想我缺少/ model / train api所需的某些格式。有人可以告诉我我要去哪里错了吗?

我正在使用rasa版本1.10.14。

先谢谢您

解决方法

结果发现config中的字符串不正确。由于转义字符使用双引号,因此在训练模型时出现错误。我在配置中进行了一些调整,并成功地训练了模型

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...