sphinx

Sphinx武林秘籍(下)

主宰稳场 提交于 2020-01-27 02:31:39
Sphinx 武林秘籍 ( 下 ) ――使用训练好的语言模型与声学模型 一、第一次使用 #cp -rf my_db.cd_cont_1000 /usr/local/bin #cd .. #cd etc #cp my_db.dic my_db.lm.DMP /usr/local/bin/ #cd /usr/local/bin # ./pocketsphinx_continuous -hmm my_db.cd_cont_1000 -lm my_db.lm.DMP -dict my_db.dic INFO: cmd_ln.c(512): Parsing command line: ./pocketsphinx_continuous \ -hmm my_db.cd_cont_1000 \ -lm my_db.lm.DMP \ -dict my_db.dic Current configuration: [NAME] [DEFLT] [VALUE] -adcdev -agc none none -agcthresh 2.0 2.000000e+00 -alpha 0.97 9.700000e-01 -argfile -ascale 20.0 2.000000e+01 -backtrace no no -beam 1e-48 1.000000e-48 -bestpath yes yes

全文索引Sphinx和sphinx的中文分词(一)

南笙酒味 提交于 2020-01-26 17:46:00
1.Sphinx是什么 Sphinx是有俄罗斯人Andrew Aksyonoff 开发的一个 全文检索引擎 ( 计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个 索引 ,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式 )。意图为其他应用提供高速、低空间占用、高结果相关度的全文搜索功能。Sphinx可以非常容易的与SQL数据库和脚本语言集成。当前系统内置 Mysql 和PostgreSQL数据库数据源的支持,也支持从标准输入读取特定格式的XML数据。通过修改源代码,用户可以自行增加新的数据源(例如:其他类型的DBMS的原生支持) Sphinx是基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。 Sphinx 单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为 0.x秒(毫秒级) 。Sphinx创建索引的速度为:创建100万条记录的索引只需 3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引

thinking-sphinx index minimum

时光怂恿深爱的人放手 提交于 2020-01-26 03:20:09
问题 I have a Product & Price models, where: class Product < AR::Base has_many :prices # there are several types of prices, e.g. for guests, users et.c. I want to index and sort products by price values, belonging to this product and exact price_type. ThinkingSphinx::Index.define :product, with: :active_record do indexes name indexes k1c indexes catalogue_code indexes created_at, sortable: true indexes prices(:value), as: :price, sortable: true # TODO has :category_id has :brand_id has :kind_cd

Sphinx + Coreseek 实现中文分词搜索

自古美人都是妖i 提交于 2020-01-25 16:51:25
Sphinx + Coreseek 实现中文分词搜索 Sphinx Coreseek 实现中文分词搜索 全文检索 1 全文检索 vs 数据库 2 中文检索 vs 汉化检索 3 自建全文搜索与使用Google等第三方站点提供的站内全文搜索的差别 Sphinx Coreseek介绍 Coreseek安装使用 1. 全文检索 1.1 全文检索 vs. 数据库 全文检索是数据库的有力补充,全文检索并不能替代数据库在应用系统中的作用。当应用系统的数据以大量的文本信息为主时,採用全文检索技术能够极大的提升应用系统的价值。 数据库搜索。假设搜索范围包含所有正文数据。往往性能非常低。用户响应时间长(分钟级。常常超时);而全文检索能够在0.x秒(毫秒级)的时间内将结果反馈给用户; 数据库搜索。一个用户在搜索。往往影响其它用户的相应用系统进行操作。全文检索能够同一时候支持多个用户并发搜索,其它相应用系统进行操作的用户不受影响。 数据库搜索非常难实现多个关键字的复合搜索。而全文检索能够实现多个关键词的复合搜索。包含 “和(AND)”、“或(OR)”、“否(NOT)” 等; 数据库搜索难于对结果进行相关度排序,当检索结果多时。用户往往难于找到最恰当的文档。而全文检索通过统计的研究成果。能够将文档进行相关度排序后。再返回给用户,提高用户的效率; 全文检索还能够对检索结果的数据进行聚类分析(Group,

How to group MVA field for faceted in sphinx

我们两清 提交于 2020-01-25 06:40:58
问题 I have an index where some data's has duplicate, all fields are similar except for latitude,longitude and id (field id is not realy ID, just generated row_number() OVER () AS id ). it's example: mysql> select id,vacancy_id,prof_area_ids,latitude,longitude from jobVacancy; +------+------------+---------------+----------+-----------+ | id | vacancy_id | prof_area_ids | latitude | longitude | +------+------------+---------------+----------+-----------+ | 1 | 917 | 11,199,202 | 0.973178 | 0

How to group MVA field for faceted in sphinx

蓝咒 提交于 2020-01-25 06:40:12
问题 I have an index where some data's has duplicate, all fields are similar except for latitude,longitude and id (field id is not realy ID, just generated row_number() OVER () AS id ). it's example: mysql> select id,vacancy_id,prof_area_ids,latitude,longitude from jobVacancy; +------+------------+---------------+----------+-----------+ | id | vacancy_id | prof_area_ids | latitude | longitude | +------+------------+---------------+----------+-----------+ | 1 | 917 | 11,199,202 | 0.973178 | 0

Error while using Thinking Sphinx under Ruby on Rails

雨燕双飞 提交于 2020-01-24 19:33:09
问题 Im using Thinking-Sphinx as a plugin in my RoR app, but Im having this error: undefined method `define_index' for # What could it be? Model class Group < ActiveRecord::Base belongs_to :retailer_product has_many :group_ranges, :dependent => :destroy has_many :group_clients, :dependent => :destroy has_many :group_notifications, :dependent => :destroy define_index do indexes retailer_product.review indexes retailer_product.retailer.retailer_name indexes retailer_product.product.pr_id indexes

Sphinx中文指南(二)——Sphinx中文分词coreseek篇

拈花ヽ惹草 提交于 2020-01-24 10:58:32
阅读本文前,请先查看前篇—— Sphinx中文入门指南 目前,实现Sphinx中文的分词的方法据我所知有3种: 1、 Coreseek 2、 Sphinx-for-chinese 3、在客户端先分词,然后使用Sphinx字索引(查看 安装原文 )直接对输入词进行检索 Coreseek安装 在上篇中我们介绍了安装Sphinx的一些必要条件,在此不一一而论。本文基础基于上篇! 下载Coreseek: [root@localhost ~]#cd /usr/local/src [root@localhost src]# wget http://www.coreseek.cn/uploads/csft/3.1/Source/csft-3.1.tar.gz ####coreseek源文件 [root@localhost src]# wget http://www.coreseek.cn/uploads/csft/3.1/Source/mmseg-3.1.tar.gz #####coreseek所使用的词典 [root@localhost src]#tar zxvf csft-3.1.tar.gz [root@localhost src]#tar zxvf mmseg-3.1.tar.gz #####在安装coreseek前必须先安装mmseg [root@localhost src]# cd

用sphinx-doc优雅的写文档

南笙酒味 提交于 2020-01-22 22:56:05
Sphinx 是一个工具,它使得创建一个智能而美丽的文档变得简单。作者Georg Brandl,基于BSD许可证。 起初为写 Python 文档而诞生的 Sphinx,支持为各种语言生成软件开发文档。 它有着以下突出特性: 输出格式:HTML(包括Windows的HTML帮助文件)、LaTex(可以打印为PDF)、epub(流行的电子书格式)、Texinfo、manual pages(man手册)、plain Text(纯文本) 广泛的交叉引用:语义标记,函数、类等的自动连接等 分层架构:目录树的简单定义,有自动链接的父子兄弟节点等 自动索引 代码高亮 丰富的拓展 Sphinx 使用 reStructuredText 作为编写语言,也可以使用 Markdown + 拓展库 的方式进行文档的编写。 1. 起步 1.1 安装 Sphinx 用Python编写,支持 Python 3.5+,可以使用 pip 进行安装。 命令行中执行以下指令安装 $ pip install -U sphinx # windows系统 cmd调出方式 (Win徽标键 + R) $ pip3 install -U sphinx # Linux系统 1.2 初体验 安装好 Sphinx 以后,你可以创建自己的第一个 Sphinx 项目了。为了简化启动过程,Sphinx 提供了一个 sphinx

Sphinx与coreseek

妖精的绣舞 提交于 2020-01-21 13:38:29
Sphinx : 高性能 SQL 全文检索引擎 分类 编程技术 Sphinx是一款基于SQL的高性能全文检索引擎,Sphinx的性能在众多全文检索引擎中也是数一数二的,利用Sphinx,我们可以完成比数据库本身更专业的搜索功能,而且可以有很多针对性的性能优化。 Sphinx 的特点 快速创建索引:3分钟左右即可创建近100万条记录的索引,并且采用了增量索引的方式,重建索引非常迅速。 闪电般的检索速度:尽管是1千万条的大数据量,查询数据的速度也在毫秒级以上,2-4G的文本量中平均查询速度不到0.1秒。 为很多脚本语言设计了检索API,如PHP,Python,Perl,Ruby等,因此你可以在大部分编程应用中很方便地调用Sphinx的相关接口。 为MySQL设计了一个存储引擎插件,因此如果你在MySQL上使用Sphinx,那简直就方便到家了。 支持分布式搜索,可以横向扩展系统性能。 PHP+MySQL+Sphinx 搜索引擎架构图 在 MySQL 中安装 Sphinx Sphinx在MySQL上安装有两种方式: 第一种方式是采用API调用,我们可以使用PHP,Python,Perl,Ruby等编程语言的API函数进行查询,这种方式不必重新编译MySQL,模块间改动比较少,相对灵活。 第二种需要重新编译MySQL,将Sphinx以插件的方式编译到MySQL中去,这种方式对程序改动比较少