【已解决】Python调试Solr出错:ValueError: a must be 1-dimensional

栏目: 后端 · 发布时间: 5年前

内容简介:折腾:期间,出错:

折腾:

【已解决】合并基于搜索的兜底对话到产品Demo中

期间,出错:

【已解决】Python调试Solr出错:ValueError: a must be 1-dimensional

input:hi

http://localhost:8983/solr/qa/select?q=question_str%3A%22hi%22&fq=%2A%3A%2A+AND+scene%3Aqa&rows=1&fl=question%2Canswer%2Cid&wt=json&indent=false

http://localhost:8983/solr/qa/select?q=question%3A%22hi%22&fq=%2A%3A%2A+AND+scene%3Aqa&rows=100&fl=question%2Canswer%2Cid&wt=json&indent=false

Building prefix dict from the default dictionary …

Loading model from cache /var/folders/46/2hjxz38n22n3ypp_5f6_p__00000gn/T/jieba.cache

Loading model cost 1.271 seconds.

Prefix dict has been built succesfully.

Traceback (most recent call last):

File "/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py", line 1664, in

main()

File "/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py", line 1658, in main

globals = debugger.run(setup[‘file’], None, None, is_module)

File "/Applications/PyCharm.app/Contents/helpers/pydev/pydevd.py", line 1068, in run

pydev_imports.execfile(file, globals, locals)  # execute the script

File "/Applications/PyCharm.app/Contents/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile

exec(compile(contents+"\n", file, ‘exec’), glob, loc)

File "/Users/crifan/dev/dev_root/xxx/nlp/search/qa/iqa.py", line 168, in

main()

File "/Users/crifan/dev/dev_root/xx/nlp/search/qa/iqa.py", line 164, in main

print(reply.answer())

File "/Users/crifan/dev/dev_root/xxx/nlp/search/renderer/reply.py", line 85, in answer

answer = np.random.choice(self._answers)

File "mtrand.pyx", line 1122, in mtrand.RandomState.choice

ValueError: a must be 1-dimensional

所以要再去解决。

果然是:

【已解决】Python调试Solr出错:ValueError: a must be 1-dimensional

list的list,那么就去改为list

然后改为:

nlp/search/renderer/reply.py

def answer(self):

if isinstance(self._answers, list):

first_element = self._answers[0]

if isinstance(first_element, list):

# is list of list -> change to list

self._answers = first_element

if len(self._answers) == 0:

return None

if not self.counter:

answer = np.random.choice(self._answers)

else:

answer = self._answers[self.counter % len(self._answers)]

return self._inject(answer)

就可以了:

initing

model loaded

input:hi

http://localhost:8983/solr/qa/select?q=question_str%3A%22hi%22&fq=%2A%3A%2A+AND+scene%3Aqa&rows=1&fl=question%2Canswer%2Cid&wt=json&indent=false

Building prefix dict from the default dictionary …

http://localhost:8983/solr/qa/select?q=question%3A%22hi%22&fq=%2A%3A%2A+AND+scene%3Aqa&rows=100&fl=question%2Canswer%2Cid&wt=json&indent=false

Loading model from cache /var/folders/46/2hjxz38n22n3ypp_5f6_p__00000gn/T/jieba.cache

Loading model cost 1.303 seconds.

Prefix dict has been built succesfully.

hi Carl !

input:say apple

http://localhost:8983/solr/qa/select?q=question_str%3A%22say+apple%22&fq=%2A%3A%2A+AND+scene%3Aqa&rows=1&fl=question%2Canswer%2Cid&wt=json&indent=false

http://localhost:8983/solr/qa/select?q=question%3A%22say+apple%22&fq=%2A%3A%2A+AND+scene%3Aqa&rows=100&fl=question%2Canswer%2Cid&wt=json&indent=false

apple .

input:next one

http://localhost:8983/solr/qa/select?q=question_str%3A%22next+one%22&fq=%2A%3A%2A+AND+scene%3Aqa&rows=1&fl=question%2Canswer%2Cid&wt=json&indent=false

You want the next bus. Is this correct?

【已解决】Python调试Solr出错:ValueError: a must be 1-dimensional


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

密码学原理与实践

密码学原理与实践

[加]Douglas R.Stinson / 冯登国 / 电子工业出版社 / 2009年 / 55.00元

冯登国(FENG Dengguo,1965.5~), 现为中国科学院软件所研究员、博士生导师,信息安全国家重点实验室主任,国家计算机网络入侵防范中心主任,国家信息化专家咨询委员会委员。目前主要从事信息与网络安全方面的研究与开发工作。一起来看看 《密码学原理与实践》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试