coreseek 中文分詞 and sphinx

2021-07-05 09:07:40 字數 2876 閱讀 9467

1, 解壓coreseek-3.2.14.tar.gz 原始碼包 

解壓生成三個檔案包

csft   ;mmseq 中文分詞;testpack pdp/pyson 鏈結sphinx或者使用的api檔案

tar xzf coreseek-3.2.14.tar.gz
2,進入mmseg所在的資料夾,編譯安裝中文分詞

cd mmseg-3.2.14/
編譯過程中會出現以下報錯情況

3,出現錯誤後執行一下指令再重新編譯就可以通過  automake

automake
如果automake編譯不通過可使用以下**(處理configure報錯)

aclocal

libtoolize --force

automake --add-missing

autoconf

autoheader

make clean

4,重新編譯即可通過 然後進行編譯和安裝

make && make install
接下來我們要把sphinx和mmseq結合起來

1,進入coreseek目錄進行安裝

cd csft-3.2.14/

make && make install
2,配置帶有中文分詞的sphinx配置檔案

配置檔案和sphinx.conf一樣,只不過是在coreseek中,有幾個地方需要注意

注意:coreseek中的配置檔案是 csft.conf ,而不是sphinx.conf

進入 coreseek安裝目錄

cp sphinx.conf.dist csft.conf
3,配置coreseek配置檔案

vim csft.conf
英文分詞的一些配置在中文分詞配置裡同樣可用 ,一下列出的是不同的配置

index test1

4,測試搜尋資料

./search this is 

coreseek fulltext 3.2 [ sphinx 0.9.9-release (r2117)]

beijing choice software technologies inc (

index 'test1': query 'this is ': returned 1 matches of 1 total in 0.002 sec

displaying matches:

1. document=1, weight=4

feed_id=1

feed_data=this is a test

client_ip=123.121.29.12

client_port=(null)

feed_content=this is a test , my name is hahah

from_data=(null)

words:

1. 'this': 1 documents, 2 hits

2. 'is': 1 documents, 3 hits

如何用php操作sphinx技術 

sphinx整合到php程式中有兩種方式

sphinx php 模組   

sphinx api類

我們使用sphinx需要做一下幾件事情

1,首先得有資料

2,建立sphinx配置檔案

3,生成索引

4,啟動sphinx的searchd服務程序,並開啟埠9312

5,使用php客戶端程式鏈結sphinx服務

安裝php sphinx 擴充套件

第一步:安裝依賴 libsphinxclient

make && make install
第二步:安裝sphinx的php擴充套件

/usr/bin/phpize #生成乙個指令碼檔案  configure
make && make install  #生成sphinx.so 檔案
第三步:修改php.ini檔案 

新增 extension=sphinx.so  擴充套件
重啟nginx 服務生效

不是載入sphinxapi 類就可以直接使用

require ( "sphinxapi.php" );

$cl = new sphinxclient ();

$mode = sph_match_extended;

$host = "123.57.242.35";

$port = 9312;

$cl->setserver ( $host, $port );

$cl->setmatchmode ( $mode );

$keys = $cl->escapestring('this');

$res = $cl->query('1', '*');

$err = $cl->isconnecterror();

dump($err);

dump($res);exit();

Coreseek 帶中文分詞的Sphinx

sphinx並不支援中文分詞,也就不支援中文搜尋,coreseek sphinx mmseg 中文分詞演算法 2 解壓後有三個資料夾 csft 3.2.14 sphinx mmseg 3.2.14 中文分詞元件 testpack 介面開發包 2.安裝 1 先安裝mmseg,因為coreseek會用到...

為coreseek新增mmseg分詞

1.準備好需要新增的詞表,一般都是每行一詞,注意要儲存為utf 8 例如 林書豪 2.利用ultraedit的查詢替換功能,使詞 式符合mmseg的要求 例如 開啟ultraedit的正則替換功能,將 p 替換為 t1 px 1 p 結果是 林書豪 tab 1 x 1 其他的也行 3.將生成的符合格...

中文分詞 中文分詞及其應用

一 中文分詞原理 中文分詞是指將乙個漢字序列切分成乙個乙個單獨的詞。分詞就是將連續的字序列按照一定的規範重新組合成詞序列的過程。現有的分詞方法可分為三大類,分別是基於字串匹配的分詞方法 基於理解的分詞方法和基於統計的分詞方法。一 基於字串匹配的分詞方法 基於字串匹配的分詞方法又稱機械分詞方法,它是按...