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, 2020, 3:13 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 19d
MIT

Ruby wrapper for Apache Spark

221
25
3y 96d
MIT

Simplifying Kafka for ruby apps

168
24
30d
Apache-2.0

Ruby: parallel processing made simple and fast

3.6K
236
12d
MIT

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

57
3
10m
MIT

Multipurpose Engines

Ruby bindings to the OpenNLP Java toolkit.

89
11
6y 66d
n/a

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

424
68
8m
n/a

Natural language processing framework for Ruby.

1.35K
129
3y 7m
n/a

wrapper for basic nlp tools

2
1
2y 7m
MIT

JRuby tools wrapper for Apache OpenNLP

11
2
2y 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
4y 68d
Apache-2.0

Ruby library for Wit.ai

264
68
5m
n/a

Ruby based API for the project Wortschatz Leipzig.

19
7
3y 5d
MIT

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

76
13
7m
MIT

Google Cloud Client Library for Ruby

1K
391
92d
Apache-2.0

Language Identification

29
7
5m
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

83
10
5d
MIT

Natural language processing algorithms implemented in pure Ruby with minimal dependencies

19
0
3y 7m
MIT

Simple and customizable text tokenization gem.

30
5
1y 6m
MIT

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

452
35
4m
MIT

Ruby port of the NLTK Punkt sentence segmentation algorithm

88
9
7y 36d
n/a

Accurate Bayesian sentence tokenizer in Ruby.

76
11
6y 7m
n/a

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

52
5
4y 11m
n/a

Stemming

Expose libstemmer_c to Ruby

251
17
50d
MIT

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

49
6
9m
Apache-2.0

Lemmatization

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

94
14
1y 7m
MIT

Lexical Statistics: Counting Types and Tokens

Your Word Counter Gem

6
0
9y 22d
MIT

A word counter for String and Hash in Ruby

3
1
7y 56d
MIT

A Ruby natural language processor.

146
25
2y 9d
MIT

Filtering Stop Words

Project for filtering stopwords

65
28
3y 9m
MIT

Phrasal Level Processing

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

37
6
10y 11m
MIT

Break words and phrases into ngrams.

11
1
6y 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
8y 7m
MIT

Constituency Parsing

An Earley parser written in Ruby

28
3
15d
MIT

Syntax tree generator made with Ruby and RMagic

51
7
1y 4m
n/a

Semantic Analysis

Approximate String Matching library

337
32
3y 5m
Apache-2.0

Calculates edit distance using Damerau-Levenshtein algorithm

110
14
4m
MIT

Fast Ruby FFI string edit distance algorithms

78
2
7y 9m
n/a

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

145
15
6y 117d
BSD-2-Clause

Term Frequency - Inverse Document Frequency in Ruby

36
7
8y 10m
MIT

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

592
56
78d
MIT

Pragmatical Analysis

A simple and extensible sentiment analysis gem

10
2
7y 10m
MIT

Spelling and Error Correction

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

476
20
1y 5m
n/a

Ruby bindings to Hunspell 1.2.x with iconv support

4
2
8y 113d
n/a

Ruby FFI bindings for Hunspell.

43
23
6d
MIT

Ruby wrapper for the famous spell checker library hunspell.

34
12
2y 16d
LGPL-3.0

Text Alignment

Alignment functions for corpus linguistics

1
1
6y 6m
n/a

Machine Translation

REST client for Google APIs

2.34K
749
1d
Apache-2.0

Ruby client for the microsoft translator API

21
11
7y 10m
MIT

Translations with speech synthesis in your terminal as a ruby gem

506
22
3y 6m
MIT

Ruby NLP library

2
1
4y 11m
MIT

Sentiment Analysis

Sentiment analysis for the German language

17
5
4y 7m
n/a

Numbers, Dates, and Time Parsing

Chronic is a pure Ruby natural language date parser.

3.08K
453
2y 10m
MIT

A natural language parser for validating complex date ranges

27
3
108d
MIT

A simple Ruby natural language parser for elapsed time

335
65
5y 95d
MIT

A dirt simple library for parsing and formatting human readable dates

152
12
6y 118d
MIT

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

108
16
5y 8m
MIT

Natural language parser for recurring events

70
10
77d
MIT

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

31
12
9m
MIT

Named Entity Recognition

Named entity recognition with Stanford NER and Ruby

17
3
8y 6m
n/a

Ruby Binding for Stanford Pos-Tagger and Name Entity Recognizer

86
12
6y 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.

140
18
2y 6m
MIT

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

82
22
6m
MIT

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

20
6
6y 8m
MIT

Ruby speech recognition with Pocketsphinx

246
37
3y 4m
MIT

Dialog Agents, Assistants, and Chatbots

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

466
110
2y 64d
MIT

ChatOps for Ruby.

1.62K
161
11m
MIT

Linguistic Resources

A pure Ruby interface to the WordNet database

85
21
1y 6m
n/a

A Ruby interface to the WordNetยฎ Lexical Database.

133
27
3y 48d
n/a

Machine Learning Libraries

Ruby language bindings for LIBSVM

276
34
91d
n/a

Machine Learning & Data Mining with JRuby

63
8
8m
MIT

ID3-based implementation of the ML Decision Tree algorithm

1.24K
128
2y 39d
n/a

A Ruby interface to the Timbl machine-learning library

5
2
11y 45d
MIT

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

503
96
79d
LGPL-2.1

A Ruby wrapper for Latent Dirichlet Allocation (LDA).

131
34
1y 7m
LGPL-2.1

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

83
12
8y 117d
n/a

A redis-backed Bayesian classifier

35
12
5y 26d
MIT

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

9
5
11y 5m
n/a

Simple Naive Bayes classifier

44
7
8y 10m
MIT

A robust, full-featured Ruby implementation of Naive Bayes

144
29
5m
MIT

A generalized rack framework for text classifications.

10
2
6y 9m
MIT

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

30
3
6y 9m
MIT

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

423
34
27d
MIT

library for nlp with ruby

1
1
4y 4m
MIT

Optical Character Recognition

A Ruby wrapper library to the tesseract-ocr API.

596
76
4y 7m
n/a

Text Extraction

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

457
101
5y 4d
MIT

Full Text Search, Information Retrieval, Indexing

A Ruby client for Apache Solr

414
145
10m
n/a

Solr-powered search for Ruby objects

2.91K
916
14d
MIT

Sphinx plugin for ActiveRecord/Rails

1.6K
477
11d
MIT

Ruby integrations for Elasticsearch

1.78K
518
1d
Apache-2.0

Elasticsearch integrations for ActiveModel/Record and Ruby on Rails

2.78K
710
94d
Apache-2.0

REST client for Google APIs

2.34K
749
1d
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.

621
47
5y 67d
MIT

fuzzy string matching library for ruby

266
39
3y 5m
Apache-2.0

Ruby on Rails

47.04K
18.88K
2d
MIT

Fuzzy document finding in Ruby

18
6
6y 11m
n/a

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

80
6
4y 5m
n/a

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

68
4
5y 47d
n/a

Generate strings that match a given regular expression

481
25
11m
MIT

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

575
23
6y 6m
MIT

Hebrew - English Transliteration Engine

5
1
20d
MIT

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

64
6
7m
BSD-3-Clause

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

1
1
3y 4m
MIT

Articles, Posts, Talks, and Presentations

Projects and Code Examples

Distance Measurements are Awesome!

60
6
4y 89d
n/a

Named entity recognition with Stanford NER and Ruby

17
3
8y 6m
n/a

Books

Community

Needs your Help!

Ferret: the extensible information retrieval library for ruby.

277
49
2y 11m
MIT

A Ruby C wrapper for Open Text Summarizer

203
17
8y 7m
n/a

Related Resources

A list of Neural MT implementations

356
71
2y 6m
Apache-2.0

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

11.25K
1.58K
28d
n/a

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

1.19K
97
2y 6m
n/a

A curated list of speech and natural language processing resources

1.99K
278
5y 4m
n/a

Official gem repository: Ruby kernel for Jupyter/IPython Notebook

585
69
76d
MIT

Links to awesome OCR projects

1.62K
254
31d
n/a

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

16.12K
2.96K
5m
CC0-1.0