Search 索尔:如何在搜索中键入问题?

Search 索尔:如何在搜索中键入问题?,search,solr,question-answering,Search,Solr,Question Answering,我是solr的新手,我正在尝试建立一个问答系统。 我为一些维基百科页面编制了索引,例如尼古拉·特斯拉。 我的问题是:这是可能的,如何在Solr中将查询作为问题键入? 我将维基百科页面按“内容”(对应于SectionTitle)拆分,因此…对于查询pageTitle:Nikola Tesla我的结果是: "response":{"numFound":23,"start":0,"docs":[ { "sectionTitle":"First Paragraph",

我是solr的新手,我正在尝试建立一个问答系统。 我为一些维基百科页面编制了索引,例如尼古拉·特斯拉。

我的问题是:这是可能的,如何在Solr中将查询作为问题键入?

我将维基百科页面按“内容”(对应于SectionTitle)拆分,因此…对于查询
pageTitle:Nikola Tesla
我的结果是:

"response":{"numFound":23,"start":0,"docs":[
{
        "sectionTitle":"First Paragraph",
        "pageTitle":"Nikola Tesla",
        "text":["Born and raised in the Austrian Empire, Tesla received an advanced education in engineering and physics in the 1870s and gained practical experience in the early 1880s working in telephony and at Continental Edison in the new electric power industry.]},
{
        "sectionTitle":"Early years",
        "pageTitle":"Nikola Tesla",
        "text":["Nikola Tesla was born an ethnic Serb in the village Smiljan, Lika county, in the Austrian Empire (present day Croatia), on 10 July [O.S. 28 June] 1856. etc..]}]
  }}
我的
模式如下所示:

  <field name="id" type="string" indexed="true" required="true" stored="true"/>
  <field name="pageTitle" type="text_en" indexed="true" stored="true"/>
  <field name="sectionTitle" type="text_en" indexed="true" stored="true"/>
  <field name="title" type="text_en" indexed="true" stored="true"/>
  <field name="text" type="text_general" indexed="true" stored="true"/>
或查询
尼古拉·特斯拉出生在哪里?
/
尼古拉·特斯拉在哪里长大?
并获得:

“出生并成长于奥地利帝国,特斯拉得到了……”

提前谢谢

邻近搜索查找特定距离内的术语 从一个到另一个

要执行近似搜索,请添加波浪号字符~和数字 值添加到搜索短语的结尾。例如,要搜索 “apache”和“jakarta”在一份文件中相距不超过10个字, 使用搜索:

"jakarta apache"~10
此处所指的距离是所需的术语移动数 匹配指定的短语。在上面的示例中,如果“apache”和 “雅加达”在一个字段中相隔10个空格,但“阿帕奇”出现了 在“雅加达”之前,将需要10个以上的长期运动来完成 将术语移到一起,并将“apache”放在 “雅加达”,中间有一个空格

您也可以在您的案例中尝试近似搜索,如下所示

text:"Nikola Tesla born?"~10

text:"Austrian Empire engineering"~10

text:"Tesla born?"~10
请参考solr管理工具中的图像

对于
文本:“尼古拉·特斯拉出生?”~10

对于
文本:“奥地利帝国工程”~10

对于
文本:“特斯拉出生?”~10
查询如下http://localhost:8983/solr/TestCore/select?q=text:“特斯拉出生?”~10“


您是否尝试过:pageTitle:“尼古拉·特斯拉什么时候出生?”这会给您带来什么结果吗?为了得到类似的问题,您可以使用更像的功能solr@Abhijit是的,我试过pageTitle:“尼古拉·特斯拉什么时候出生的?”我没有得到任何结果,同样的标题是:“尼古拉·特斯拉什么时候出生的?”。文本:“Nikola Tesla何时出生?”它向我显示结果,但来自其他页面标题,而不是来自Nikola Tesla。请尝试定义mm子句……是的,我的问题涉及布尔运算符和问号“?”。你的评论让我明白了该怎么做,谢谢!
text:"Nikola Tesla born?"~10

text:"Austrian Empire engineering"~10

text:"Tesla born?"~10