github crmne/ruby_llm v2.0.0.rc3
RubyLLM 2.0.0.rc3

pre-release3 hours ago

RubyLLM 2.0.0.rc3 improves the Rails upgrade path and fixes issues found while testing RC2.

  • Support online copy upgrades on PostgreSQL, MySQL, and SQLite. Prepared 1.16 processes can keep serving during preparation and backfill, with a controlled pause for the final switch. Follow the upgrade guide for the required deployment order.
  • Keep chat pricing scoped to the provider that handled the request when model IDs overlap, including streamed responses and Rails reloads (#923). Previously recorded costs are unchanged.
  • Preserve a child Agent's own instructions or conventional prompt when inheriting configuration (#915).
  • Handle empty tool arguments in Gemini Interactions (#911).
  • Reject invalid reranking document indices and duplicate Gemini embedding batch positions instead of associating results with the wrong inputs (#917, #918).
  • Send text attachments to Mistral OCR as data URIs (#919).
  • Avoid polynomial regex backtracking when normalizing Bedrock video output prefixes.
  • Refresh the bundled model catalog and aliases from the provider APIs and models.dev.
  • Reject DeepSeek's unsupported :web_search alias with RubyLLM::UnsupportedServerToolError. Its current Responses API silently ignores built-in web search. Patch tools, raw tool definitions, and existing search history remain supported.
  • Validate uploaded files in the Rails attachment example. If your application copied the older example, check that the parameter is an ActionDispatch::Http::UploadedFile before passing it to with:. Updating the gem alone does not fix an application's unchecked upload parameter. String paths and URLs remain supported.

Install this release with:

gem 'ruby_llm', '2.0.0.rc3'

Coming from 1.x? Read the 2.0 upgrade guide before upgrading an existing application.

Changes since RC2

Don't miss a new ruby_llm release

NewReleases is sending notifications on new releases.