User Experience on mobile might not be great yet, but I'm working on it.

Your first time on this page? Allow me to give some explanations.

Awesome NLP with Ruby

Curated List: Practical Natural Language Processing done in Ruby

Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.

Last Update: Dec. 4, 2021, 11:19 a.m.

Thank you arbox & contributors
View Topic on GitHub:
arbox/nlp-with-ruby

Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.

Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.

Pipeline Generation

Composable Operations is a tool set for creating operations and assembling multiple of these operations in operation pipelines.

46
6
5y 73d
MIT

Ruby wrapper for Apache Spark

222
26
4y 96d
MIT

Simplifying Kafka for ruby apps

190
28
93d
Apache-2.0

Ruby: parallel processing made simple and fast

3.74K
245
14d
MIT

Parallel Workflow extension for Rake, runs on multicores, clusters, clouds.

57
3
1y 10m
MIT

Multipurpose Engines

Ruby bindings to the OpenNLP Java toolkit.

89
11
7y 66d
n/a

Ruby bindings to the Stanford Core NLP tools (English, French, German).

428
68
1y 8m
n/a

Natural language processing framework for Ruby.

1.35K
129
4y 7m
n/a

wrapper for basic nlp tools

2
1
3y 7m
MIT

JRuby tools wrapper for Apache OpenNLP

11
2
3y 7d
MIT

On-line APIs

A sdk for AlchemyAPI using Ruby - Please note that this legacy AlchemyAPI SDK is no longer supported by IBM. Please use the Watson SDKs https://github.com/watson-developer-cloud?utf8=โœ“&query=sdk

36
28
5y 68d
Apache-2.0

Ruby library for Wit.ai

276
71
94d
n/a

Ruby based API for the project Wortschatz Leipzig.

19
8
4y 5d
MIT

Official Ruby client for the MonkeyLearn API. Build and consume machine learning models for language processing from your Ruby apps.

79
13
4m
MIT

Google Cloud Client Library for Ruby

1.13K
474
30d
Apache-2.0

Language Identification

28
7
60d
MIT

Segmentation

A simple tokenizer in Ruby for NLP tasks.

43
11
4y 8m
n/a

A multilingual tokenizer to split a string into tokens

87
9
11m
MIT

Natural language processing algorithms implemented in pure Ruby with minimal dependencies

19
0
4y 7m
MIT

Simple and customizable text tokenization gem.

30
4
67d
MIT

Pragmatic Segmenter is a rule-based sentence boundary detection gem that works out-of-the-box across many languages.

484
37
7m
MIT

Ruby port of the NLTK Punkt sentence segmentation algorithm

90
9
3y 5m
n/a

Accurate Bayesian sentence tokenizer in Ruby.

79
12
7y 7m
n/a

A fast and accurate rule-based sentence segmentation tool for Ruby.

53
5
5y 11m
n/a

Stemming

Expose libstemmer_c to Ruby

255
20
12m
MIT

Ruby port of UEALite Stemmer - a conservative stemmer for search and indexing

50
6
68d
Apache-2.0

Lemmatization

Lemmatizer for text in English. Inspired by Python's nltk.corpus.reader.wordnet.morphy

100
15
51d
MIT

Lexical Statistics: Counting Types and Tokens

Your Word Counter Gem

6
0
10y 22d
MIT

A word counter for String and Hash in Ruby

4
1
2y 8m
MIT

A Ruby natural language processor.

149
28
51d
MIT

Filtering Stop Words

Project for filtering stopwords

64
31
44d
MIT

Phrasal Level Processing

N-Gram generator in Ruby - http://en.wikipedia.org/wiki/N-gram

36
7
63d
MIT

Break words and phrases into ngrams.

11
1
7y 11m
MIT

A flexible and general-purpose ngrams library written in Ruby. Raingrams supports ngram sizes greater than 1, text/non-text grams, multiple parsing styles and open/closed vocabulary models.

69
7
9m
MIT

Constituency Parsing

An Earley parser written in Ruby

31
3
34d
MIT

Syntax tree generator made with Ruby and RMagic

60
10
9m
n/a

Semantic Analysis

Approximate String Matching library

344
32
2y 4m
Apache-2.0

Calculates edit distance using Damerau-Levenshtein algorithm

122
14
4m
MIT

Fast Ruby FFI string edit distance algorithms

79
1
8y 9m
n/a

Fast string edit distance computation, using the Damerau-Levenshtein algorithm.

147
17
6y 96d
BSD-2-Clause

Term Frequency - Inverse Document Frequency in Ruby

35
7
9y 10m
MIT

Ruby gem to calculate the similarity between texts using tf*idf

623
58
1y 56d
MIT

Pragmatical Analysis

A simple and extensible sentiment analysis gem

13
2
8y 10m
MIT

Spelling and Error Correction

Ruby wrapper for correcting spelling and grammar mistakes based on the context of complete sentences.

481
20
2y 98d
n/a

Ruby bindings to Hunspell 1.2.x with iconv support

4
2
9y 113d
n/a

Ruby FFI bindings for Hunspell.

46
24
9m
MIT

Ruby wrapper for the famous spell checker library hunspell.

34
12
3y 16d
LGPL-3.0

Text Alignment

Alignment functions for corpus linguistics

1
1
7y 6m
n/a

Machine Translation

REST client for Google APIs

2.46K
794
31d
Apache-2.0

Ruby client for the microsoft translator API

22
11
4y 6m
MIT

Translations with speech synthesis in your terminal as a ruby gem

507
21
4y 6m
MIT

Ruby NLP library

2
1
5y 9m
MIT

Sentiment Analysis

Sentiment analysis for the German language

18
5
5y 7m
n/a

Numbers, Dates, and Time Parsing

Chronic is a pure Ruby natural language date parser.

3.12K
463
3y 10m
MIT

A natural language parser for validating complex date ranges

27
3
5m
MIT

A simple Ruby natural language parser for elapsed time

344
67
89d
MIT

A dirt simple library for parsing and formatting human readable dates

152
11
7y 118d
MIT

Nickel extracts date, time, and message information from naturally worded text.

105
16
4y 35d
MIT

Natural language parser for recurring events

75
10
1y 77d
MIT

Parse numbers in natural language from strings (ex forty two).

33
13
10m
MIT

Named Entity Recognition

Named entity recognition with Stanford NER and Ruby

17
3
9y 6m
n/a

Ruby Binding for Stanford Pos-Tagger and Name Entity Recognizer

87
12
7y 4m
n/a

Text-to-Speech-to-Text

Ruby wrapper for โ€˜espeakโ€™ and โ€˜lameโ€™ with sugar on top to create Text-To-Speech mp3 files.

147
19
83d
MIT

A ruby gem for Text-To-Speech by using google translate service.

87
26
67d
MIT

A Ruby library for consuming the AT&T Speech API for speech to text.

20
6
7y 8m
MIT

Ruby speech recognition with Pocketsphinx

252
37
4y 4m
MIT

Dialog Agents, Assistants, and Chatbots

A straightforward ruby-based Twitter Bot Framework, using OAuth to authenticate.

489
110
6m
MIT

ChatOps for Ruby.

1.66K
165
4m
MIT

Linguistic Resources

A pure Ruby interface to the WordNet database

85
22
2y 105d
n/a

A Ruby interface to the WordNetยฎ Lexical Database.

133
28
4y 48d
n/a

Machine Learning Libraries

Ruby language bindings for LIBSVM

277
32
1y 91d
n/a

Machine Learning & Data Mining with JRuby

65
8
10m
MIT

ID3-based implementation of the ML Decision Tree algorithm

1.3K
132
3y 39d
n/a

A Ruby interface to the Timbl machine-learning library

5
2
12y 45d
MIT

A general classifier module to allow Bayesian and other types of classifications. A fork of cardmagic/classifier.

510
106
1y 79d
LGPL-2.1

A Ruby wrapper for Latent Dirichlet Allocation (LDA).

132
34
1y 64d
LGPL-2.1

This is the Ruby interface to LIBLINEAR (much more efficient than LIBSVM for text classification and other large linear classifications)

82
11
9y 117d
n/a

A redis-backed Bayesian classifier

37
12
5y 11m
MIT

a JRuby maximum entropy classifier for string data, based on the OpenNLP Maxent framework

9
5
12y 5m
n/a

Simple Naive Bayes classifier

46
7
9y 10m
MIT

A robust, full-featured Ruby implementation of Naive Bayes

147
30
117d
MIT

A generalized rack framework for text classifications.

10
2
10m
MIT

Naive Bayes text classification implementation as an OmniCat classifier strategy. (#ruby #naivebayes)

31
3
10m
MIT

Ruby library for interfacing with FANN (Fast Artificial Neural Network)

434
37
1y 27d
MIT

library for nlp with ruby

1
1
5y 4m
MIT

Optical Character Recognition

A Ruby wrapper library to the tesseract-ocr API.

601
76
4y 5m
n/a

Text Extraction

Read text and metadata from files and documents (.doc, .docx, .pages, .odt, .rtf, .pdf)

466
105
6m
MIT

Full Text Search, Information Retrieval, Indexing

A Ruby client for Apache Solr

417
147
54d
n/a

Solr-powered search for Ruby objects

2.93K
921
92d
MIT

Sphinx plugin for ActiveRecord/Rails

1.61K
475
51d
MIT

Ruby integrations for Elasticsearch

1.84K
565
10d
Apache-2.0

Elasticsearch integrations for ActiveModel/Record and Ruby on Rails

2.88K
738
86d
Apache-2.0

REST client for Google APIs

2.46K
794
31d
Apache-2.0

Language Aware String Manipulation

Find a needle (a document or record) in a haystack using string similarity and (optionally) regular expression rules. Uses Dice's Coefficient (aka Pair Similiarity) and Levenshtein Distance internally.

637
49
6m
MIT

fuzzy string matching library for ruby

265
40
1y 9m
Apache-2.0

Ruby on Rails

49.47K
19.88K
10d
MIT

Fuzzy document finding in Ruby

20
6
4y 48d
n/a

Unicode normalization library. (Mirror of Yoshida-san's code base to maintain the RubyGem.)

81
7
10m
n/a

Find a lot of kinds of common information in a string. CommonRegex port for Ruby

74
4
5y 9m
n/a

Generate strings that match a given regular expression

501
27
8m
MIT

Make difficult regular expressions easy! Ruby port of the awesome VerbalExpressions repo - https://github.com/jehna/VerbalExpressions

574
23
94d
MIT

Hebrew - English Transliteration Engine

5
2
31d
MIT

Ruby bindings to re2, an "efficient, principled regular expression library".

73
9
8m
BSD-3-Clause

Regex to sample value. Ruby gem. RegexSample.generate(/(a|b)/) #=> a or b

1
1
4y 4m
MIT

Russian transliteration using nalgeon/iuliia schemas

8
2
8m
MIT

Articles, Posts, Talks, and Presentations

Projects and Code Examples

Distance Measurements are Awesome!

60
6
5y 89d
n/a

Named entity recognition with Stanford NER and Ruby

17
3
9y 6m
n/a

Books

Community

Needs your Help!

Ferret: the extensible information retrieval library for ruby.

275
49
3y 11m
MIT

A Ruby C wrapper for Open Text Summarizer

205
17
9y 7m
n/a

Related Resources

A list of Neural MT implementations

366
70
2y 50d
Apache-2.0

A collection of awesome Ruby libraries, tools, frameworks and software

11.79K
1.65K
34d
n/a

A collection of links to Ruby Natural Language Processing (NLP) libraries, tools and software

1.22K
100
7m
n/a

A curated list of speech and natural language processing resources

2.04K
284
2y 8m
n/a

Official gem repository: Ruby kernel for Jupyter/IPython Notebook

662
9
22d
MIT

Links to awesome OCR projects

1.93K
292
7m
n/a

TensorFlow - A curated list of dedicated resources http://tensorflow.org

16.48K
3.02K
86d
CC0-1.0