📈 GH Trending Explorer 🎲 Surprise me

← all repos

crmne / ruby_llm

git clone https://github.com/crmne/ruby_llm.git v2.1.1 · 9d ago 🔥 on GitHub Trending today

The Ruby AI framework.

—
stars, 24h
—
stars, 7 days
+92
stars, 30 days · #2,514
4.5k
★ total
517
forks · 8 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageRuby
LicenseMIT
Created2025-01-30 (1y ago)
Last pushtoday
Watchers32
OwnerUser

Seen on GitHub Trending

  • 2026-10-20 — #10 monthly in ruby · +92 ★

GitHub topics

Links

README excerpt
The Ruby AI framework 
 Build AI features the Ruby way: models, tools, agents, sandboxed code, evaluations, and Rails conventions, designed together, with one consistent API. 
Website · Getting Started · What's New in 2.1
Battle tested at - *Fully private work AI*
https://github.com/user-attachments/assets/519fcb20-ab8c-4af3-9185-0953b3ba7b81
> [!NOTE]
> Using RubyLLM? Share your story! Takes 5 minutes.
---
## 23 providers. One API.
Build with the models you want. Move between hosted and local providers without rewriting your application, or connect an OpenAI-compatible endpoint.
Browse models and pricing · Connect a provider
## A complete AI framework for Ruby
More than a client for model APIs. RubyLLM gives your application the conventions, the runtime, and every piece in between: agents that run code safely, workflows, evaluations, observability, and the data they need, designed to work together.
* **Code execution (main):** Let the model run Ruby, Python, JavaScript, and shell in a sandbox on your servers with `with_code_execution`
* **Skills (main):** Teach the model your workflows with folders of instructions and scripts in the Agent Skills format with `with_skills`
* **MCP:** Connect agents to your systems with server classes in `app/mcp`, per-user inputs, tool filtering, and OAuth with `RubyLLM::MCP`
* **Agents:** Reusable assistants with `RubyLLM::Agent`
* **The agentic loop:** Drive it yourself with `ask_later`, `step`, and `complete?`
* **Evaluations (main):** Reusable datasets, model criteria, and Ruby assertions with `RubyLLM::Evaluation`
* **Chat:** Conversational AI with `RubyLLM.chat`
* **Vision:** Analyze images and videos
* **Audio:** Transcribe speech with `RubyLLM.transcribe` and generate it with `RubyLLM.speak`
* **Documents:** Ask questions about PDFs, text files, and other supported formats
* **OCR:** Turn documents into markdown with `RubyLLM.ocr`
* **Image generation:** Create images with `RubyLLM.paint`
* **Video generation:** Create videos with `RubyLLM.animate`
* **Embeddings:** Generate embeddings with `RubyLLM.embed`
* **Reranking:** Order retrieval candidates by relevance with `RubyLLM.rerank`
* **Moderation:** Content flags, categories, and scores with `RubyLLM.moderate`
* **Judgments:** Probabilities, choices, and scores with `RubyLLM::Judge` and `RubyLLM.judge`
* **Tools:** Let AI call your Ruby methods
* **Tool approval:** Park a run until a human approves with `requires_approval`
* **Provider tools:** Web search, code execution, and MCP connectors with `with_provider_tools`
* **Prompt templates:** ERB prompts in `app/prompts`, rendered with `RubyLLM.render_prompt`
* **Workflows:** Correlate multi-agent runs in your telemetry with `RubyLLM.workflow`
* **Structured output:** Define a Ruby schema and read the result with `response.parsed`
* **Streaming:** Real-time responses with blocks
* **Rails:** Active Record persistence, Active Storage attachments, Hotwire streaming, and generators
* **Files:** Upload once an