Article
RubyLLM: Ein einheitliches Ruby-Framework für alle AI-Provider
RubyLLM ist ein neues Open-Source-Framework, das die Fragmentierung der AI-APIs löst. Statt für jeden Provider eine eigene Bibliothek zu lernen, bietet RubyLLM eine einheitliche Schnittstelle für alle großen AI-Anbieter.
Das Problem
Jeder AI-Provider liefert seine eigene Client-Bibliothek mit unterschiedlichen APIs, Response-Formaten und Konventionen. Das macht den Wechsel zwischen Modellen mühsam und Multi-Provider-Architekturen komplex.
Die Lösung
RubyLLM abstrahiert diese Unterschiede mit nur drei Dependencies: Faraday, Zeitwerk und Marcel. Die gleiche API funktioniert mit GPT, Claude oder lokalem Ollama.
# Einfaches Beispiel
chat = RubyLLM.chat
chat.ask "Erkläre Quantencomputer in 3 Sätzen"
# Mit beliebigem Model
chat = RubyLLM.chat(model: "claude-sonnet-4")
chat.ask "Was ist Ruby?"
Unterstützte Features
- Chat: Konversationale AI mit
RubyLLM.chat - Vision: Analyse von Bildern und Videos
- Audio: Transkription mit
RubyLLM.transcribe - Dokumente: Extraktion aus PDFs, CSVs, JSON und mehr
- Bildgenerierung:
RubyLLM.paintfür KI-Bilder - Embeddings:
RubyLLM.embedfür Vektoren - Tools: AI kann Ruby-Methoden aufrufen
- Agents: Wiederverwendbare Assistenten
- Structured Output: JSON-Schemas funktionieren direkt
- Streaming: Echtzeit-Antworten mit Blocks
- Rails Integration:
acts_as_chatfür ActiveRecord
Unterstützte Provider
Anthropic (Claude), OpenAI, xAI, Gemini, VertexAI, Bedrock, DeepSeek, Mistral, Ollama, OpenRouter, Perplexity, GPUStack und alle OpenAI-kompatiblen APIs.
Installation
# Gemfile
gem 'ruby_llm'
# Konfiguration
RubyLLM.configure do |config|
config.openai_api_key = ENV['OPENAI_API_KEY']
config.anthropic_api_key = ENV['ANTHROPIC_API_KEY']
end
Das Projekt wird bereits in Produktion bei Chat with Work eingesetzt und hat über 4.000 GitHub-Stars. Die Dokumentation ist unter rubyllm.com verfügbar, der Quellcode auf GitHub.
Für Entwickler, die AI-Features in Ruby-Anwendungen integrieren wollen, ist RubyLLM ein eleganter Weg, Provider-Unabhängigkeit zu erreichen – besonders wertvoll für die wachsende Ollama-Community, die lokale LLMs bevorzugt.