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: Feb. 26, 2021, 9:10 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.

47
6
5y 103d
MIT

Ruby wrapper for Apache Spark

221
25
3y 6m
MIT

Simplifying Kafka for ruby apps

174
24
29d
Apache-2.0

Ruby: parallel processing made simple and fast

3.62K
236
96d
MIT

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

57
3
1y 42d
MIT

Multipurpose Engines

Ruby bindings to the OpenNLP Java toolkit.

89
11
6y 5m
n/a

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

423
69
11m
n/a

Natural language processing framework for Ruby.

1.35K
128
3y 9m
n/a

wrapper for basic nlp tools

2
1
2y 10m
MIT

JRuby tools wrapper for Apache OpenNLP

11
2
2y 91d
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
4y 5m
Apache-2.0

Ruby library for Wit.ai

268
69
8m
n/a

Ruby based API for the project Wortschatz Leipzig.

19
7
3y 89d
MIT

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

76
13
10m
MIT

Google Cloud Client Library for Ruby

1K
391
5m
Apache-2.0

Language Identification

29
7
7m
MIT

Segmentation

A simple tokenizer in Ruby for NLP tasks.

43
11
4y 11m
n/a

A multilingual tokenizer to split a string into tokens

84
10
89d
MIT

Natural language processing algorithms implemented in pure Ruby with minimal dependencies

19
0
3y 10m
MIT

Simple and customizable text tokenization gem.

30
5
1y 9m
MIT

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

463
37
7m
MIT

Ruby port of the NLTK Punkt sentence segmentation algorithm

88
9
7y 4m
n/a

Accurate Bayesian sentence tokenizer in Ruby.

77
12
6y 10m
n/a

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

52
5
5y 68d
n/a

Stemming

Expose libstemmer_c to Ruby

252
19
81d
MIT

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

49
6
12m
Apache-2.0

Lemmatization

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

94
14
1y 10m
MIT

Lexical Statistics: Counting Types and Tokens

Your Word Counter Gem

6
0
9y 106d
MIT

A word counter for String and Hash in Ruby

4
1
7y 4m
MIT

A Ruby natural language processor.

146
27
2y 93d
MIT

Filtering Stop Words

Project for filtering stopwords

65
30
4y 11d
MIT

Phrasal Level Processing

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

37
6
11y 54d
MIT

Break words and phrases into ngrams.

11
1
7y 78d
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
8y 10m
MIT

Constituency Parsing

An Earley parser written in Ruby

29
3
27d
MIT

Syntax tree generator made with Ruby and RMagic

53
7
9d
n/a

Semantic Analysis

Approximate String Matching library

341
32
3y 7m
Apache-2.0

Calculates edit distance using Damerau-Levenshtein algorithm

112
15
19d
MIT

Fast Ruby FFI string edit distance algorithms

79
1
8y 2d
n/a

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

146
15
6y 6m
BSD-2-Clause

Term Frequency - Inverse Document Frequency in Ruby

36
7
9y 20d
MIT

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

601
56
5m
MIT

Pragmatical Analysis

A simple and extensible sentiment analysis gem

11
2
8y 35d
MIT

Spelling and Error Correction

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

478
19
1y 7m
n/a

Ruby bindings to Hunspell 1.2.x with iconv support

4
2
8y 6m
n/a

Ruby FFI bindings for Hunspell.

45
23
13d
MIT

Ruby wrapper for the famous spell checker library hunspell.

34
12
2y 100d
LGPL-3.0

Text Alignment

Alignment functions for corpus linguistics

1
1
6y 8m
n/a

Machine Translation

REST client for Google APIs

2.38K
757
7d
Apache-2.0

Ruby client for the microsoft translator API

21
11
8y 27d
MIT

Translations with speech synthesis in your terminal as a ruby gem

506
22
3y 9m
MIT

Ruby NLP library

2
1
5y 50d
MIT

Sentiment Analysis

Sentiment analysis for the German language

18
5
4y 10m
n/a

Numbers, Dates, and Time Parsing

Chronic is a pure Ruby natural language date parser.

3.09K
458
3y 46d
MIT

A natural language parser for validating complex date ranges

27
3
6m
MIT

A simple Ruby natural language parser for elapsed time

343
66
5y 5m
MIT

A dirt simple library for parsing and formatting human readable dates

152
11
6y 6m
MIT

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

107
16
5y 11m
MIT

Natural language parser for recurring events

71
10
5m
MIT

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

31
14
49d
MIT

Named Entity Recognition

Named entity recognition with Stanford NER and Ruby

17
3
8y 9m
n/a

Ruby Binding for Stanford Pos-Tagger and Name Entity Recognizer

85
12
6y 6m
n/a

Text-to-Speech-to-Text

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

145
18
2y 9m
MIT

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

84
23
8m
MIT

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

20
6
6y 11m
MIT

Ruby speech recognition with Pocketsphinx

247
37
3y 7m
MIT

Dialog Agents, Assistants, and Chatbots

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

464
110
2y 4m
MIT

ChatOps for Ruby.

1.64K
161
1y 58d
MIT

Linguistic Resources

A pure Ruby interface to the WordNet database

84
21
1y 9m
n/a

A Ruby interface to the WordNetยฎ Lexical Database.

133
27
3y 4m
n/a

Machine Learning Libraries

Ruby language bindings for LIBSVM

278
35
5m
n/a

Machine Learning & Data Mining with JRuby

63
8
36d
MIT

ID3-based implementation of the ML Decision Tree algorithm

1.26K
130
2y 4m
n/a

A Ruby interface to the Timbl machine-learning library

5
2
11y 4m
MIT

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

508
101
5m
LGPL-2.1

A Ruby wrapper for Latent Dirichlet Allocation (LDA).

132
34
1y 10m
LGPL-2.1

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

83
11
8y 6m
n/a

A redis-backed Bayesian classifier

35
12
5y 110d
MIT

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

9
5
11y 7m
n/a

Simple Naive Bayes classifier

44
7
9y 31d
MIT

A robust, full-featured Ruby implementation of Naive Bayes

144
29
8m
MIT

A generalized rack framework for text classifications.

10
2
7y 9d
MIT

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

30
3
7y 9d
MIT

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

424
35
111d
MIT

library for nlp with ruby

1
1
4y 6m
MIT

Optical Character Recognition

A Ruby wrapper library to the tesseract-ocr API.

602
76
4y 9m
n/a

Text Extraction

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

457
102
5y 88d
MIT

Full Text Search, Information Retrieval, Indexing

A Ruby client for Apache Solr

416
147
1y 45d
n/a

Solr-powered search for Ruby objects

2.92K
916
38d
MIT

Sphinx plugin for ActiveRecord/Rails

1.6K
480
54d
MIT

Ruby integrations for Elasticsearch

1.8K
527
4d
Apache-2.0

Elasticsearch integrations for ActiveModel/Record and Ruby on Rails

2.81K
716
52d
Apache-2.0

REST client for Google APIs

2.38K
757
7d
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.

625
47
5y 5m
MIT

fuzzy string matching library for ruby

266
39
3y 8m
Apache-2.0

Ruby on Rails

47.61K
19.14K
7d
MIT

Fuzzy document finding in Ruby

18
6
7y 56d
n/a

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

81
7
4y 7m
n/a

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

69
4
5y 4m
n/a

Generate strings that match a given regular expression

483
25
1y 49d
MIT

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

576
23
6y 8m
MIT

Hebrew - English Transliteration Engine

5
1
104d
MIT

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

66
8
9m
BSD-3-Clause

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

1
1
3y 7m
MIT

Articles, Posts, Talks, and Presentations

Projects and Code Examples

Distance Measurements are Awesome!

60
6
4y 5m
n/a

Named entity recognition with Stanford NER and Ruby

17
3
8y 9m
n/a

Books

Community

Needs your Help!

Ferret: the extensible information retrieval library for ruby.

277
50
3y 72d
MIT

A Ruby C wrapper for Open Text Summarizer

203
17
8y 10m
n/a

Related Resources

A list of Neural MT implementations

359
72
2y 8m
Apache-2.0

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

11.38K
1.6K
14d
n/a

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

1.2K
97
2y 9m
n/a

A curated list of speech and natural language processing resources

2K
283
5y 6m
n/a

Official gem repository: Ruby kernel for Jupyter/IPython Notebook

593
3
10d
MIT

Links to awesome OCR projects

1.7K
261
10d
n/a

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

16.23K
2.98K
7m
CC0-1.0