The Best Go Libraries For Natural Language Processing (27)
Discover the best Go libraries for Natural Language Processing! Find the perfect tools to streamline your development and boost productivity. From gounidecode to getlang, we've got you covered. Let the coding begin!
gounidecode
Unicode transliterator (also known as unidecode) for Go.
getlang
Fast natural language detection package.
guesslanguage
Functions to determine the natural language of a unicode text.
lingua-go
An accurate natural language detection library, suitable for long and short text alike. Supports detecting multiple languages in mixed-language text.
whatlanggo
Natural language detection package for Go. Supports 84 languages and 24 scripts (writing systems e.g. Latin, Cyrillic, etc).
go-stem
Implementation of the porter stemming algorithm.
gosentiwordnet
Sentiment analyzer using sentiwordnet lexicon in Go.
govader
Go implementation of [VADER Sentiment Analysis](https://github.com/cjhutto/vaderSentiment).
libtextcat
Cgo binding for libtextcat C library. Guaranteed compatibility with version 2.2.
nlp
Extract values from strings and fill your structs with nlp.
nlp
Go Natural Language Processing library supporting LSA (Latent Semantic Analysis).
RAKE.go
Go port of the Rapid Automatic Keyword Extraction Algorithm (RAKE).
snowball
Snowball stemmer port (cgo wrapper) for Go. Provides word stem extraction functionality [Snowball native](http://snowball.tartarus.org/).
spaGO
Self-contained Machine Learning and Natural Language Processing library in Go.
spelling-corrector
A spelling corrector for the Spanish language or create your own.
gse
Go efficient text segmentation; support english, chinese, japanese and other.
MMSEGO
This is a GO implementation of [MMSEG](http://technology.chtsai.org/mmseg/) which a Chinese word splitting algorithm.
prose
Library for text processing that supports tokenization, part-of-speech tagging, named-entity extraction, and more. English only.
segment
Go library for performing Unicode Text Segmentation as described in [Unicode Standard Annex #29](https://www.unicode.org/reports/tr29/)
sentences
Sentence tokenizer: converts text into a list of sentences.
shamoji
The shamoji is word filtering package written in Go.
stemmer
Stemmer packages for Go programming language. Includes English and German stemmers.
textcat
Go package for n-gram based text categorization, with support for utf-8 and raw text.
t
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.
enca
Minimal cgo bindings for [libenca](https://cihar.com/software/enca/), which detects character encodings.
go-unidecode
ASCII transliterations of Unicode text.
transliterator
Provides one-way string transliteration with supporting of language-specific transliteration rules.