Repolode
BoxcarsAI

BoxcarsAI/boxcars

Ruby-фреймворк для создания приложений на базе LLM из компонуемых инструментов, агентов и движков для разных провайдеров.

Звёзды
462
Форки
41
Открытые issues
7
Последний коммит
24 дня назад

Что это?

Boxcars — Ruby-фреймворк для создания систем на базе LLM, особенно подходящий командам, работающим с Ruby и Rails. Доменная логика оформляется в виде объектов Boxcar — инструментов для конкретных задач: поиска, математических вычислений, запросов к SQL или ActiveRecord и вызовов API. Train координирует набор Boxcar вместе с Engine и разбивает задачу на шаги: через устаревший текстовый ReAct (ZeroShot) или встроенный вызов инструментов провайдера (ToolTrain).

Фреймворк поддерживает несколько провайдеров LLM на основе общих шаблонов движков, включая OpenAI, Anthropic, Groq, Gemini, Ollama и Perplexity. Также доступны проверка выходных данных по JSON Schema, интеграция с векторными хранилищами и подключение к MCP-серверам через stdio с объединением внешних инструментов MCP и локальных инструментов. Более высокоуровневый StationAgent добавляет колбэки жизненного цикла, вложенность агентов, передачу управления и потоковую передачу событий.

Для SQL и ActiveRecord в Boxcar по умолчанию включён режим только для чтения; операции записи отклоняются, если их явно не разрешить. Необязательные гемы провайдеров загружаются только при использовании, а для проекта требуется Ruby версии 3.3 или новее.

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

  • 01Оформляет доменную логику в виде повторно используемых инструментов Boxcar для SQL, ActiveRecord, поиска и вызовов API.
  • 02Предоставляет оркестрацию с текстовым ReAct в ZeroShot и встроенным вызовом инструментов в ToolTrain.
  • 03Поддерживает OpenAI, Anthropic, Groq, Gemini, Ollama и других провайдеров через общие движки.
  • 04Проверяет структурированный вывод по JSON Schema с помощью JSONEngineBoxcar.
  • 05Подключается к MCP-серверам через stdio и объединяет их инструменты с локальными Boxcar.
  • 06Предоставляет StationAgent с колбэками, передачей управления и потоковой передачей событий.

Сценарии использования

  • Создание внутренних копилотов, которые ищут информацию в документах и запрашивают данные ActiveRecord или SQL.
  • Создание ботов для операционных задач, которые вызывают API, описанные в Swagger, для выполнения многошаговых действий.
  • Объединение векторного поиска с последующими вызовами инструментов в ассистентах, начинающих работу с поиска.
  • Совместное использование собственных Ruby-инструментов и инструментов, обнаруженных на MCP-серверах.

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

  1. 1

    Добавьте gem в Gemfile (требуется Ruby 3.3 или новее)

    gem 'boxcars'
  2. 2

    Установите зависимости с помощью Bundler

    bundle install
  3. 3

    Или установите gem напрямую

    gem install boxcars

Что важно знать

  • Требуется Ruby 3.3 или новее.
  • Для многих функций нужно отдельно добавить необязательные provider gems и ключи API.

В подборках

Темы

Частые вопросы

Что такое boxcars?
Ruby-фреймворк для создания приложений на базе LLM из компонуемых инструментов, агентов и движков для разных провайдеров. Boxcars — Ruby-фреймворк для создания систем на базе LLM, особенно подходящий командам, работающим с Ruby и Rails. Доменная логика оформляется в виде объектов Boxcar — инструментов для конкретных задач: поиска, математических вычислений, запросов к SQL или ActiveRecord и вызовов API. Train координирует набор Boxcar вместе с Engine и разбивает задачу на шаги: через устаревший текстовый ReAct (ZeroShot) или встроенный вызов инструментов провайдера (ToolTrain).
boxcars можно использовать бесплатно? Какая у него лицензия?
boxcars распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
boxcars всё ещё поддерживается?
Активно поддерживается. Последний коммит в boxcars — 13 окт. 2026 г..
Для чего можно использовать boxcars?
Создание внутренних копилотов, которые ищут информацию в документах и запрашивают данные ActiveRecord или SQL. Создание ботов для операционных задач, которые вызывают API, описанные в Swagger, для выполнения многошаговых действий. Объединение векторного поиска с последующими вызовами инструментов в ассистентах, начинающих работу с поиска. Совместное использование собственных Ruby-инструментов и инструментов, обнаруженных на MCP-серверах.
Как установить boxcars?
Добавьте gem в Gemfile (требуется Ruby 3.3 или новее): gem 'boxcars' Установите зависимости с помощью Bundler: bundle install Или установите gem напрямую: gem install boxcars
Где скачать boxcars?
Исходный код и инструкции по установке — на GitHub: https://github.com/BoxcarsAI/boxcars

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты