基于提示的生物医学分类系统搜索引擎框架

cateye的Python项目详细描述


类别

用于生物医学分类系统的支持提示的搜索引擎框架

Build Status

功能

  • 提示:显示搜索词的提示,可以快速缩小搜索结果的范围。
  • 回退:如果没有满足查询的结果,系统会自动删除不太重要的搜索词。
  • 拼写更正:查询术语的内置拼写更正。
  • 缩写扩展:搜索过程中将自动应用预定义的缩写列表
  • 排序结果:根据搜索历史对结果进行排序。

安装

$ git clone https://github.com/jeroyang/cateye.git
$ cd cateye
$ pip install -e .

用法

一。运行演示站点:

$ FLASK_APP=app.py FLASK_ENV=development flask run

然后浏览本地站点http://127.0.0.1:5000/

2.创建自己的网站:

2-1.检查常数。py:

在constants.py中设置基本变量: 站点标题、站点副标题、令牌文件夹、代码段文件夹、提示文件夹、拼写文件、缩写文件、索引url

swee对象将使用index_url,可以是以s3://开头的远程url,也可以是以file://开头的本地url,请检查Shove的文档。

2-2.数据准备

文件夹概述:

  • data:搜索引擎的数据源,此子文件夹中的所有信息都使用术语id作为其文件名
  • data/token:文档的标记,在元素化之后
  • data/snippet:文档的html片段,将显示在搜索结果中
  • data/提示:每个实体的提示
  • data/spelling.txt:标记的形式拼写(在规范化之前)。如果可能,请根据使用频率对标记进行排序,最常用的词是第一个。
  • data/缩写.txt:缩写,一对缩写对应一行,使用制表符分隔短格式和长格式

cateye包括一些非常基本的文本处理工具: 标记化器(cateye.tokenize)和柠檬化器(cateye.lemmatize)

tokenize函数将在两个地方使用:第一个地方是将文档剪切为令牌,第二个地方是将查询剪切为令牌。

lemmatizing函数将规范化您的令牌。如果您希望构建不区分大小写的搜索引擎,可以在标记上使用小写的lemmatizer。

2-3.建立索引:

在命令行中运行命令

$ cateye newindex

此命令读取token_文件夹中的文件,并在index_url中构建磁盘索引。这需要时间,具体取决于数据的大小。

2-4。运行应用程序:

$ FLASK_APP=app.py FLASK_ENV=development flask run

许可证

  • 自由软件:麻省理工学院许可证

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

推荐PyPI第三方库


热门话题
java在servlet中更改后自动重新加载属性文件   java构建路径问题学习指南   java使用模拟的spring服务在Jersey API上运行单元测试的正确方法是什么?   java索引将Jlabel创建为2D Jlabel数组   我可以用Java扩展Kotlin委托类吗?   java关闭MQ连接   java如何配置过滤器在servlet处理后工作?   如何在Intellij中导入另一个java项目包并使用它   java不使用线程,但使用ArrayList得到错误的结果,使用Vector得到正确的结果   java Unity3D如何向AndroidManifest添加权限。安卓插件的xml   Java中的字符串和开关大小写   Java数组和ArrayList   java如何使用JAXRS客户端通过GET调用发送有效负载?   JSch如何使用PuTTY私钥   在java中创建带块的构造函数   java使用相互SSL安全代理请求   java CommonExec:在系统路径上执行程序?   java如何设置线边框的角半径?   java是否支持SpringBoot2.2.4缓存实现