RubyLLM: Единый фреймворк Ruby для всех крупных AI-провайдеров

✍️ OpenClawRadar📅 Опубликовано: 25 июня 2026 г.🔗 Source
RubyLLM: Единый фреймворк Ruby для всех крупных AI-провайдеров
Ad

RubyLLM 1.16.0 — это Ruby-фреймворк, предоставляющий единый интерфейс для всех основных AI-провайдеров, включая OpenAI, xAI, Anthropic, Gemini, VertexAI, Bedrock, DeepSeek, Mistral, Ollama, OpenRouter, Perplexity, GPUStack и любые API, совместимые с OpenAI. Поддерживает чат, зрение, аудио, документы, генерацию изображений, эмбеддинги, модерацию, инструменты, агентов, структурированный вывод, стриминг и интеграцию с Rails.

Быстрый старт

Добавьте в Gemfile: gem 'ruby_llm', затем выполните bundle install.

Настройте API-ключи:

RubyLLM.configure do |config|
config.openai_api_key = ENV['OPENAI_API_KEY']
end

Ключевые возможности

  • Чат: RubyLLM.chat.ask('вопрос')
  • Зрение: Анализ изображений и видео — chat.ask('Опиши', with: 'photo.jpg')
  • Аудио: Расшифровка и понимание речи — RubyLLM.transcribe('meeting.wav')
  • Документы: Извлечение данных из PDF, CSV, JSON и любых других файлов
  • Генерация изображений: RubyLLM.paint('запрос')
  • Эмбеддинги: RubyLLM.embed('текст')
  • Модерация: RubyLLM.moderate('текст')
  • Инструменты: Позвольте AI вызывать ваши Ruby-методы, создав подкласс RubyLLM::Tool
  • Агенты: Многоразовые ассистенты с RubyLLM::Agent
  • Структурированный вывод: JSON-схемы с RubyLLM::Schema
  • Стриминг: Ответы в реальном времени с помощью блоков
  • Rails: Интеграция с ActiveRecord через acts_as_chat и опциональный UI для чата
  • Асинхронность: Конкурентность на основе файберов
  • Реестр моделей: 800+ моделей с определением возможностей и ценами
Ad

Примеры кода

Чат с зрением:

chat = RubyLLM.chat
chat.ask('Что изображено на этой картинке?', with: 'ruby_conf.jpg')
chat.ask('Резюмируй этот документ', with: 'contract.pdf')

Использование инструментов:

class Weather < RubyLLM::Tool
desc 'Получить текущую погоду'
def execute(latitude:, longitude:)
JSON.parse(Faraday.get('https://api.open-meteo.com/...').body)
end
end
chat.with_tool(Weather).ask('Какая погода в Берлине?')

Структурированный вывод:

class ProductSchema < RubyLLM::Schema
string :name
number :price
array :features do
string
end
end
response = chat.with_schema(ProductSchema).ask('Проанализируй', with: 'product.txt')

Интеграция с Rails

bin/rails generate ruby_llm:install
bin/rails db:migrate
bin/rails generate ruby_llm:chat_ui

Затем создайте модель Chat с acts_as_chat и перейдите по адресу /chats для готового к использованию интерфейса.

У RubyLLM всего три зависимости: Faraday, Zeitwerk и Marcel.

📖 Читать полный источник: HN AI Agents

Ad

👀 Смотрите также

Rift CLI: Управление рабочими деревьями Git для параллельных рабочих процессов AI-агентов
Инструменты

Rift CLI: Управление рабочими деревьями Git для параллельных рабочих процессов AI-агентов

Rift — это инструмент командной строки, который создает изолированные рабочие деревья Git и ветки для одновременного запуска нескольких ИИ-агентов для программирования, таких как Claude Code, в одном репозитории. Он включает хуки жизненного цикла, детерминированное сопоставление портов и поддержку рабочего пространства для нескольких редакторов.

OpenClawRadar
Использование нескольких сеансов Claude Code параллельно с Git Worktrees
Инструменты

Использование нескольких сеансов Claude Code параллельно с Git Worktrees

Разработчик рассказывает, как использовать git worktrees для запуска нескольких сессий Claude Code на отдельных ветках без stash и переключения контекста. Просматривайте diff, сливайте ветки и двигайтесь дальше.

OpenClawRadar
Visdiff: Визуальная петля обратной связи для генерации фронтенд-кода Claude
Инструменты

Visdiff: Визуальная петля обратной связи для генерации фронтенд-кода Claude

Visdiff решает проблему визуальной точности в генерации фронтенд-кода Claude, сравнивая отрендеренный результат пиксель за пикселем с дизайнами Figma и передавая различия обратно в цикл до полного совпадения.

OpenClawRadar
wmux: Электронный Терминальный Мультиплексер для Windows с Управлением через Браузер через MCP
Инструменты

wmux: Электронный Терминальный Мультиплексер для Windows с Управлением через Браузер через MCP

wmux — это открытый терминальный мультиплексор на Electron для Windows 10/11, который предоставляет tmux-подобное разделение экрана, постоянные сессии и управление браузером через Chrome DevTools Protocol для AI-агентов программирования, таких как Claude Code. Он автоматически регистрируется как MCP-сервер и позволяет агентам взаимодействовать с браузерами, одновременно запуская несколько сессий бок о бок.

OpenClawRadar