Cute Gopher Mascot

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.

See More! 🚀

getlang

Fast natural language detection package.

See More! 🚀

guesslanguage

Functions to determine the natural language of a unicode text.

See More! 🚀

lingua-go

An accurate natural language detection library, suitable for long and short text alike. Supports detecting multiple languages in mixed-language text.

See More! 🚀

whatlanggo

Natural language detection package for Go. Supports 84 languages and 24 scripts (writing systems e.g. Latin, Cyrillic, etc).

See More! 🚀

go-stem

Implementation of the porter stemming algorithm.

See More! 🚀

gosentiwordnet

Sentiment analyzer using sentiwordnet lexicon in Go.

See More! 🚀

govader

Go implementation of [VADER Sentiment Analysis](https://github.com/cjhutto/vaderSentiment).

See More! 🚀

libtextcat

Cgo binding for libtextcat C library. Guaranteed compatibility with version 2.2.

See More! 🚀

nlp

Extract values from strings and fill your structs with nlp.

See More! 🚀

nlp

Go Natural Language Processing library supporting LSA (Latent Semantic Analysis).

See More! 🚀

RAKE.go

Go port of the Rapid Automatic Keyword Extraction Algorithm (RAKE).

See More! 🚀

snowball

Snowball stemmer port (cgo wrapper) for Go. Provides word stem extraction functionality [Snowball native](http://snowball.tartarus.org/).

See More! 🚀

spaGO

Self-contained Machine Learning and Natural Language Processing library in Go.

See More! 🚀

spelling-corrector

A spelling corrector for the Spanish language or create your own.

See More! 🚀

gse

Go efficient text segmentation; support english, chinese, japanese and other.

See More! 🚀

MMSEGO

This is a GO implementation of [MMSEG](http://technology.chtsai.org/mmseg/) which a Chinese word splitting algorithm.

See More! 🚀

prose

Library for text processing that supports tokenization, part-of-speech tagging, named-entity extraction, and more. English only.

See More! 🚀

segment

Go library for performing Unicode Text Segmentation as described in [Unicode Standard Annex #29](https://www.unicode.org/reports/tr29/)

See More! 🚀

sentences

Sentence tokenizer: converts text into a list of sentences.

See More! 🚀

shamoji

The shamoji is word filtering package written in Go.

See More! 🚀

stemmer

Stemmer packages for Go programming language. Includes English and German stemmers.

See More! 🚀

textcat

Go package for n-gram based text categorization, with support for utf-8 and raw text.

See More! 🚀

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.

See More! 🚀

enca

Minimal cgo bindings for [libenca](https://cihar.com/software/enca/), which detects character encodings.

See More! 🚀

go-unidecode

ASCII transliterations of Unicode text.

See More! 🚀

transliterator

Provides one-way string transliteration with supporting of language-specific transliteration rules.

See More! 🚀