Natural Language Processing
49 libraries in this category
Package and an accompanying tool to work with localized text
Library for text processing that supports tokenization, part-of-speech tagging, named-entity extraction, and more. English only.
Go efficient text segmentation; support english, chinese, japanese and other
This is a Go implementation of [jieba](https://github.com/fxsjy/jieba) which a Chinese word splitting algorithm
Self-contained Machine Learning and Natural Language Processing library in Go
CN Hanzi to Hanyu Pinyin converter
An accurate natural language detection library, suitable for long and short text alike. Supports detecting multiple languages in mixed-language text
URL-friendly slugify with multiple languages support
JP morphological analyzer written in pure Go
Natural language detection package for Go. Supports 84 languages and 24 scripts (writing systems e.g. Latin, Cyrillic, etc)
GNU gettext utilities for Go
Go Natural Language Processing library supporting LSA (Latent Semantic Analysis)
Sentence tokenizer: converts text into a list of sentences
Extract values from strings and fill your structs with nlp.
Fast natural language detection package
ASCII transliterations of Unicode text
Go port of the Rapid Automatic Keyword Extraction Algorithm (RAKE)
Make pretty slug with multiple languages support
Context aware i18n with a short and consise API, pluralization, interpolation, and `fs.FS` support. YAML locale definitions are based on [Rails i18n](https://guides.rubyonrails.org/i18n.html)
Flexible translation and humanization library for Go, based on the concepts behind gettext
Go library for performing Unicode Text Segmentation as described in [Unicode Standard Annex #29](https://www.unicode.org/reports/tr29/)
Implementation of the porter stemming algorithm
Unicode transliterator (also known as unidecode) for Go
Go package for n-gram based text categorization, with support for utf-8 and raw text
This is a GO implementation of [MMSEG](http://technology.chtsai.org/mmseg/) which a Chinese word splitting algorithm
Functions to determine the natural language of a unicode text
Reader and utility functions for word2vec embeddings
Stemmer packages for Go programming language. Includes English and German stemmers
Transliterate Cyrillic → Latin in every possible way
Go implementation of [VADER Sentiment Analysis](https://github.com/cjhutto/vaderSentiment)
Really fast Porter 2 stemmer
Provides one-way string transliteration with supporting of language-specific transliteration rules
Snowball stemmer port (cgo wrapper) for Go. Provides word stem extraction functionality [Snowball native](http://snowball.tartarus.org/)
CGo bindings to Yandex.Mystem - russian morphology analyzer
Go slugify application that handles string
Golang implementation of the Paice/Husk Stemming Algorithm
Language Detection API Go Client. Supports batch requests, short phrase or single word language detection
Another i18n pkg for golang, which follows GNU gettext style and supports .po/.mo files: `t.T (gettext)`, `t.N (ngettext)`, etc. And it contains a cmd tool [xtemplate](https://github.com/youthlin/t/blob/main/cmd/xtemplate), which can extract messages as a pot file from text/html template
Go bindings for the snowball libstemmer library including porter 2
A tokenizer based on the dictionary and Bigram language models for Golang. (Now only support chinese segmentation)
Minimal cgo bindings for [libenca](https://cihar.com/software/enca/), which detects character encodings
This is a fairly straightforward port of Martin Porter's C implementation of the Porter stemming algorithm
Cgo binding for libtextcat C library. Guaranteed compatibility with version 2.2
The shamoji is word filtering package written in Go
Sentiment analyzer using sentiwordnet lexicon in Go
A words table and text resource library for Golang projects
Microservice implementation of [GoVader](https://github.com/jonreiter/govader)
Convert numbers to Russian words with correct grammatical gender and noun declension
A spelling corrector for the Spanish language or create your own