Machine learning development continues to evolve rapidly, and while Python dominates the landscape, Ruby offers compelling alternatives for developers who prefer its elegant syntax and design philosophy. This update explores both established Ruby machine learning gems and exciting new additions in 2025, providing a complete picture of the current Ruby ML ecosystem.
Established Libraries with 2025 Status
1. Numo::NArray
Numo::NArray is Ruby's numerical computation cornerstone, serving a role similar to NumPy in Python. It enables efficient manipulation of multi-dimensional numerical data, making it essential for many machine learning algorithms.
Current Status (March 2025):
- Latest version: 0.9.2.1 (released August 20, 2022)
- GitHub activity: 45 open issues, 8 open pull requests
- Last merged PR: Approximately 2 years ago
While Numo hasn't seen new releases in early 2025, its issue tracker shows ongoing discussions, including TruffleRuby compatibility issues (#220, February 2025) and build problems on macOS (#215, March 2024). Feature requests for SIMD support and Ractor compatibility indicate users are seeking performance enhancements. Despite slower development, Numo remains referenced in recent guides for building language models in Ruby, confirming its continued relevance for numerical computing.
2. Rumale
Rumale (Ruby machine learning) has emerged as the most actively maintained comprehensive machine learning library in the Ruby ecosystem, with an API deliberately modeled after scikit-learn.
Current Status (March 2025):
- Latest version: 1.0.0 (released January 2, 2025)
- Supports a wide array of algorithms: SVM, Logistic Regression, Ridge, Lasso, Factorization Machine, Multi-layer Perceptron, Naive Bayes, Decision Tree, Gradient Tree Boosting, Random Forest, K-Means, Gaussian Mixture Model, DBSCAN, and many others
- The coordinated release of rumale-pipeline 1.0.0 on the same date demonstrates a unified development effort
- Integration with Numo::Linalg for optimized linear algebra operations
The milestone 1.0.0 release firmly establishes Rumale as the leading actively developed machine learning toolkit for Ruby developers in 2025, making it the recommended choice for new ML projects.
3. Daru (Data Analysis in RUby)
Daru provides comprehensive data structures and tools for data manipulation, analysis, and visualization in Ruby through its Daru::DataFrame and Daru::Vector classes.
Current Status (March 2025):
- No specific releases noted in early 2025
- No security advisories reported
- GitHub stats: 1k stars, 140 forks
- Continues to support data manipulation, analysis, visualization (via plugins), time series functionality, and import/export from various formats
While not showing significant updates in early 2025, Daru maintains a solid foundation and established user base. Its comprehensive feature set and integration capabilities with visualization libraries make it a valuable tool for data manipulation in Ruby.
4. Classifier Reborn
Classifier Reborn offers general classification tools in Ruby, including Bayesian classification and Latent Semantic Indexing (LSI).
Current Status (March 2025):
- No direct gem releases noted in early 2025
- The Jekyll organization (which hosts the gem) released a bug fix (v4.4.1) on January 29, 2025
- Website provides guidance for Ruby 3 compatibility, recommending Numo over GSL
- Listed in curated collections of machine learning libraries
While not experiencing rapid development, Classifier Reborn shows indirect signs of maintenance and continues to be referenced in Ruby machine learning resources.
5. Decision Tree
The decisiontree gem implements ID3 algorithm for decision tree learning, supporting both continuous and discrete datasets.
Current Status (March 2025):
- No clear signs of active development in 2025
- The original repository (igrigorik/decisiontree) shows historical interest (1.4k stars, 129 forks)
- The rdytech fork appears inactive (last release in 2016)
- Recent guides point to alternatives like ruby-ml and Rumale for decision tree functionality
For decision tree implementation, Rumale (with its January 2025 v1.0.0 release) appears to be the more actively maintained option in 2025.
6. Lurn
Lurn aims to provide an elegant API for machine learning tasks in Ruby, inspired by scikit-learn.
Current Status (March 2025):
- Not included in popular gem releases for March 2025
- Absent from recent Ruby ecosystem updates
- GitHub stats: 290 stars, 13 forks
- No clear indication of recent development activity
The maintenance status of Lurn appears uncertain in early 2025. Given the active development of Rumale, which shares similar goals of providing scikit-learn-like functionality, users might want to explore that alternative.
7. Yomu
Yomu is designed for extracting text and metadata from various file formats using Apache Tika.
Current Status (March 2025):
- Original yomu: Last updated December 2015, flagged as "Not Healthy" maintenance status
- Yomu2: Last updated June 2018, flagged with "Very High" vulnerability score on Socket.dev
- Security concerns include native code, network access, and shell access risks
Both Yomu variants appear unmaintained as of 2025, with significant security concerns, especially for Yomu2. New projects should avoid these libraries and existing implementations should urgently seek alternatives.
8. Nyaplot
Nyaplot was designed for creating interactive plots in Ruby, aiming to enable fast prototyping and customization.
Current Status (March 2025):
- Not mentioned in recent Ruby updates or newsletters
- Last GitHub activity approximately 10 years ago (originally a Google Summer of Code 2014 project)
- No clear signs of maintenance
Nyaplot appears largely abandoned as of 2025. Developers seeking visualization capabilities should explore more actively maintained alternatives or integrations with modern JavaScript charting libraries.
9. Other Previously Established Gems
Several other gems from previous years show limited recent activity:
- Disco: Collaborative filtering library
- xLearn: High-performance machine learning library
- fastText: Text classification and representation learning
- Menoh Ruby Extension: ONNX runtime engine
- PyCall: Interoperability with Python (may be particularly useful given Python's ML ecosystem)
New Gems and Tools (2025)
The Ruby machine learning ecosystem has expanded in 2025 with several promising new gems that bring advanced AI capabilities to Ruby developers:
1. RubyLLM
A unified interface for working with large language models (LLMs) from providers like OpenAI, Anthropic, Google, and DeepSeek.
Current Status (March 2025):
- Active development with multiple updates in 2025
- Supports features like chat, PDF analysis, and image generation
- Simplifies integration with leading AI platforms
- RubyLLM GitHub
RubyLLM provides Ruby developers with easy access to cutting-edge AI capabilities, making it a significant addition to the ecosystem in 2025.
2. Torch.rb
A deep learning library for Ruby based on LibTorch, the C++ backend of PyTorch.
Current Status (March 2025):
- Updated in February 2025 (version 0.19.1)
- Supports neural networks and tensor operations
- Offers Ruby-friendly interfaces to powerful deep learning tools
- Torch.rb GitHub
Although initially released in 2021, Torch.rb continues to receive regular updates and has become increasingly relevant in 2025 as deep learning applications expand in Ruby.
3. Aoororachain
An opinionated library for building AI applications with Ruby and open-source LLMs.
Current Status (March 2025):
- Focuses on private data and local models like Llama
- Provides Ruby-centric tooling for AI workflows
- Aoororachain GitHub
Aoororachain offers Ruby developers tools for working with emerging open-source AI models, emphasizing privacy and local deployment.
4. Boxcars
Inspired by LangChain, Boxcars enables composability with LLMs in Ruby.
Current Status (March 2025):
- Supports OpenAI, Anthropic, and vector search
- Repository updated in late 2024
- Focuses on building modular AI applications
- Boxcars GitHub
Boxcars brings the composable AI application architecture popularized by LangChain to the Ruby ecosystem.
5. LangChain.rb
A Ruby port of the LangChain framework for advanced ML/AI applications.
Current Status (March 2025):
- Supports vector search databases and LLMs
- Ongoing development focused on Ruby-specific optimizations
- LangChain.rb GitHub
LangChain.rb offers Ruby developers access to the powerful application patterns pioneered by the LangChain ecosystem.
6. tensorflow-ruby
A Ruby wrapper for TensorFlow, providing access to this powerful machine learning framework.
Current Status (March 2025):
- Archived in October 2024, but remains relevant for legacy projects
- Provided Ruby access to TensorFlow's extensive capabilities
- tensorflow-ruby GitHub
While not in active development, tensorflow-ruby represents an important part of Ruby's machine learning history and may still be useful for certain applications.
Additional Resources
For natural language processing (NLP) in Ruby, there's a curated list available at NLP with Ruby, which includes tools for text and metadata extraction.
Other valuable resources include:
- Machine Learning with Ruby: A curated list of ML resources
- The Ruby Toolbox - Machine Learning Category: Community-maintained directory of gems
Conclusion
The Ruby machine learning landscape in 2025 presents a mixed but evolving picture. Rumale stands as the clear leader among traditional ML libraries with active development and a comprehensive feature set, evidenced by its milestone 1.0.0 release in January 2025. Numo::NArray remains relevant despite slower development, while Daru continues to offer solid data manipulation capabilities.
Exciting new additions like RubyLLM, Torch.rb, and LangChain-inspired tools are expanding Ruby's AI capabilities, particularly for working with large language models and deep learning frameworks. These new gems demonstrate that the Ruby ecosystem is adapting to the AI revolution, albeit with a different emphasis than Python's ecosystem.
When selecting Ruby gems for machine learning projects in 2025, prioritize:
- Recent releases and active maintenance
- Security considerations
- Community engagement
- Integration with other modern tools in your stack
While Ruby may not match Python's breadth in machine learning, it continues to offer viable and increasingly sophisticated options for developers committed to the language, with a particular strength in elegant APIs and seamless integration with Ruby applications.
Top comments (2)
Ankane has several Ruby ML-related gems that I have found to be extremely helpful. ankane.org/
Great reminder of alternatives for machine learning besides Python! Thanks Davide