将自然语言转换为数据库查询的框架。

quep的Python项目详细描述


  __ _ _   _  ___ _ __  _   _
 / _` | | | |/ _ \ '_ \| | | |
| (_| | |_| |  __/ |_) | |_| |
 \__, |\__,_|\___| .__/ \__, |
    |_|          |_|    |___/

奎比是什么?

quepy是一个将自然语言问题转换为查询的python框架。 在数据库查询语言中。它可以很容易地定制为不同类型的 自然语言和数据库查询中的问题。所以,只要给你一点编码 可以为自然语言访问数据库构建自己的系统。

目前,quepy支持 SparqlMQL 查询语言。 我们计划将其扩展到其他数据库查询语言。

示例

为了说明如何使用quepy,我们提供了一个示例应用程序 通过其sparql端点访问DBpedia内容。

您可以在这里在线尝试示例:Online demo

或者,您可以自己尝试这个示例,方法是:

python examples/dbpedia/main.py "Who is Tom Cruise?"

它将输出如下内容:

SELECTDISTINCT?x1WHERE{?x0rdf:typefoaf:Person.?x0rdfs:label"Tom Cruise"@en.?x0rdfs:comment?x1.}ThomasCruiseMapotherIV,widelyknownasTomCruise,isan...

从自然语言到sparql的转换首先使用 正则表达式的特殊形式:

person_name=Group(Plus(Pos("NNP")),"person_name")regex=Lemma("who")+Lemma("be")+person_name+Question(Pos("."))

然后使用和一种方便的方式来表示语义关系:

person=IsPerson()+HasKeyword(person_name)definition=DefinitionOf(person)

转换的其余部分由框架自动处理,以 最后生成这个sparql:

SELECTDISTINCT?x1WHERE{?x0rdf:typefoaf:Person.?x0rdfs:label"Tom Cruise"@en.?x0rdfs:comment?x1.}

使用非常相似的过程,可以为同一个问题生成和mql查询 获取:

[{"/common/topic/description":[{}],"/type/object/name":"Tom Cruise","/type/object/type":"/people/person"}]

安装

您需要安装numpy。 除此之外,您只需键入:

pip install quepy

您可以在此处获得有关安装的更多详细信息:

http://quepy.readthedocs.org/en/latest/installation.html

了解更多

您可以在此处找到教程:

http://quepy.readthedocs.org/en/latest/tutorial.html

以及此处的完整文档:

http://quepy.readthedocs.org/

加入我们的mailing list

贡献!

想帮助发展出湿疹吗?欢迎上船!在中找到我们

  • #quepy at freenode
  • quepydev at librelist.com

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Intellij和Eclipse无法找到库工件   java Mapbox Android Symbolayer重置筛选器   java如何在顶部显示特定的recyclerview项?   java如何在Hibernate中使用@Qualifier   我想计算特定文本webdriver java在多个页面上可用的HTML表中的数据   java捕获Spring MVC REST服务抛出的Jersey REST客户端的异常   java Hibernate flush()影响事务   密钥绑定Java密钥绑定   sonarqube java,sonar,圈复杂度   使用3DES在Java中加密,在SQL Oracle中解密   regex正则表达式在regex101上工作。com,但不是prod   JAVAsql。SQLException:ORA00600:内部错误代码,参数:[12811],[93233]   java H2数据库存储在哪里?   java如何避免在使用Jackson时从JSON字符串反序列化空JSON数组元素