RubyLLM: A Ruby framework for all major AI providers
Points and comments are a snapshot, not live.
RubyLLM offers a single Ruby framework unifying 12 major AI providers.
RubyLLM aims to replace bloated per-provider clients with a unified interface for GPT, Claude, Gemini, Ollama, and others. It supports chat, vision, audio transcription, image generation, embeddings, moderation, tool calls, agents, structured output, streaming, Rails integration (`acts_as_chat`), and a registry of 800+ models with capability detection. Dependencies: Faraday, Zeitwerk, and Marcel.
The library is battle-tested at Chat with Work, and provides a ready-to-use Rails chat UI via generator.
What commenters are saying
Commenters widely praised RubyLLM's elegance and usability, comparing it favorably to Vercel's AI framework and using it in production. The author responded to criticism about provider-specific parameters, noting temperature and thinking effort can be set generically via methods like `chat.with_temperature` and `chat.with_thinking`, while max tokens remains provider-specific per the docs.
Some noted challenges with observability (addressed by Rails-style instrumentation in v1.16.0) and a missing native Responses API, which the author confirmed is shipping in RubyLLM 2.0 via a protocol/provider refactor. A minority questioned building AI tooling in a dynamically typed language.