yanyiwu/gojieba

"结巴"中文分词的Golang版本

What it solves

GoJieba provides a high-performance implementation of the "Jieba" Chinese word segmentation tool for the Go language. It allows developers to break down Chinese text into individual words or tokens, which is a critical first step for many natural language processing (NLP) tasks in Go applications.

How it works

The project is a Go wrapper around a C++ core (CppJieba), which is bundled directly into the repository to ensure ease of installation. It uses cgo to interface between Go and C++, leveraging C++ for the heavy lifting of the segmentation algorithms.

Who it’s for

Developers building Go-based applications that require Chinese text processing, such as search engines, text analysis tools, or any software needing to understand the structure of Chinese sentences.

Highlights

  • Multiple Segmentation Modes: Supports Maximum Probability, HMM (Hidden Markov Model) for new word discovery, Search Engine mode, and Full mode.
  • Customizable Dictionaries: Allows users to configure dictionary paths or add specific words to the dictionary at runtime to improve accuracy.
  • High Performance: Core algorithms are implemented in C++ for efficiency.
  • Advanced Features: Includes support for part-of-speech (POS) tagging and keyword extraction with weights.

Related

  • Project
  • Project
  • Project
  • Project
  • Project