zhparser Kullanım Kılavuzu
zhparser
, PostgreSQL için üçüncü taraf bir genişletme modülüdür ve Çince metinlerin işlenmesi için özel olarak tasarlanmıştır. Çeşitli Çince metin işleme senaryoları için uygun, etkili bir kelime ayırma ve arama işlevi sağlar. ServBay, scws
(Basit Çince Kelime Segmentasyonu) ile birlikte gelir ve zhparser
, özel kelime dağarcıkları oluşturmak için scws
kullanabilir. Bu makalede, ServBay'de nasıl kurulup kullanılacağını detaylı bir şekilde anlatacağız.
zhparser Kurulumu
ServBay, zhparser
genişletme modülünü içermektedir, sadece veritabanında etkinleştirmeniz gerekmektedir. zhparser
'ı etkinleştirme adımları aşağıdadır:
PostgreSQL veritabanına bağlanma:
bashpsql -U your_username -d your_database
1Genişletme oluşturma:
sqlCREATE EXTENSION zhparser;
1Kurulumu doğrulama:
sql\dx
1
zhparser Konfigürasyonu
zhparser
'ı etkinleştirdikten sonra, doğru Çince kelime ayırma ve tam metin arama işlemleri için bir dizi ayar yapmanız gerekecektir.
Metin Arama Konfigürasyonu (Text Search Configuration)
Metin arama konfigürasyonu oluşturma:
sqlCREATE TEXT SEARCH CONFIGURATION chinese (PARSER = zhparser);
1Sözlük ekleme:
sqlALTER TEXT SEARCH CONFIGURATION chinese ADD MAPPING FOR n,v,a,i,e,l WITH simple;
1
zhparser ile Tam Metin Arama
Aşağıda, zhparser
'ı kullanarak tam metin arama işlemlerini nasıl gerçekleştireceğinizi gösteren bir örnek bulunmaktadır.
Örnek Tablo ve Veri Oluşturma
Tablo oluşturma:
sqlCREATE TABLE documents ( id SERIAL PRIMARY KEY, content TEXT );
1
2
3
4Örnek veri ekleme:
sqlINSERT INTO documents (content) VALUES ('我爱自然语言处理'), ('中文分词是文本处理的重要步骤'), ('zhparser是一个很好的中文分词工具');
1
2
3
4
Tam Metin Arama İndeksi Oluşturma
- GIN indeksi oluşturma:sql
CREATE INDEX idx_gin_content ON documents USING gin (to_tsvector('chinese', content));
1
Tam Metin Arama Yürütme
Arama sorgusunu yürütme:
sqlSELECT * FROM documents WHERE to_tsvector('chinese', content) @@ to_tsquery('chinese', '中文 & 分词');
1
2Bu sorgu, "中文" ve "分词" kelimelerini içeren dokümanları döndürecektir.
Özel Sözlük
ServBay, scws
ile birlikte gelir ve belirli uygulama ihtiyaçlarını daha iyi karşılamak için scws
kullanarak özel kelime dağarcıkları oluşturabilirsiniz.
Özel Kelimeler Ekleme
Özel sözlük dosyası oluşturma:
plaintext/Applications/ServBay/etc/scws/custom_dict.txt
1Dosyaya her satıra bir kelime olacak şekilde kelimeler ekleyin:
plaintext自然语言处理 中文分词
1
2zhparser
'ı özel sözlük kullanacak şekilde yapılandırma:sqlSET zhparser.dict_path = '/Applications/ServBay/etc/scws/custom_dict.txt';
1
Sözlüğü Yeniden Yükleme
- Sözlüğü yeniden yükleme:sql
SELECT zhprs_reload_dict();
1
Kelime Ayırma Modunu Ayarlama
zhparser
, çeşitli kelime ayırma modlarını destekler, ihtiyaçlarınıza göre ayarlayabilirsiniz.
Kelime Ayırma Modunu Ayarlama
En ince taneli kelime ayırma modunu ayarlama:
sqlSET zhparser.seg_with_duality = true;
1En büyük taneli kelime ayırma modunu ayarlama:
sqlSET zhparser.seg_with_duality = false;
1
Özet
zhparser
, güçlü bir Çince kelime ayırma aracıdır ve basit konfigürasyon ve kullanımla PostgreSQL'de etkili Çince tam metin aramaları gerçekleştirebilirsiniz. ServBay, zhparser
genişletme modülünü ve scws
'yi içerir, bu sayede özel kelime dağarcıkları oluşturabilirsiniz. Özel sözlük ve kelime ayırma modunu ayarlayarak, belirli uygulama ihtiyaçlarınıza uygun kelime ayırma sonuçlarını daha da optimize edebilirsiniz.