Skip to content

Conversation

@dependabot
Copy link

@dependabot dependabot bot commented on behalf of github Nov 4, 2025

Bumps ruby_llm from 1.6.2 to 1.9.0.

Release notes

Sourced from ruby_llm's releases.

1.9.0

RubyLLM 1.9.0: Tool Schemas, Prompt Caching & Transcriptions ✨🎙️

Major release that makes tool definitions feel like Ruby, lets you lean on Anthropic prompt caching everywhere, and turns audio transcription into a one-liner—plus better Gemini structured output and Nano Banana image responses.

🧰 JSON Schema Tooling That Feels Native

The new RubyLLM::Schema params DSL supports full JSON Schema for tool parameter definitions, including nested objects, arrays, enums, and nullable fields.

class Scheduler < RubyLLM::Tool
  description "Books a meeting"
params do
object :window, description: "Time window to reserve" do
string :start, description: "ISO8601 start"
string :finish, description: "ISO8601 finish"
end
array :participants, of: :string, description: &quot;Email invitees&quot;
any_of :format, description: &quot;Optional meeting format&quot; do
string enum: %w[virtual in_person]
null
end

end
def execute(window:, participants:, format: nil)
Booking.reserve(window:, participants:, format:)
end
end

  • Powered by RubyLLM::Schema, the same awesome Ruby DSL we recommend to use for Structured Output's chat.with_schema.
  • Already handles Anthropic/Gemini quirks like nullable unions and enums - no more ad-hoc translation layers.
  • Prefer raw hashes? Pass params schema: { ... } to keep your existing JSON Schema verbatim.

🧱 Raw Content Blocks & Anthropic Prompt Caching Everywhere

When you need to handcraft message envelopes:

chat = RubyLLM.chat(model: "claude-sonnet-4-5")
raw_request = RubyLLM::Content::Raw.new([
  { type: "text", text: File.read("prompt.md"), cache_control: { type: "ephemeral" } },
  { type: "text", text: "Summarize today’s work." }
])
chat.ask(raw_request)

We also provide an helper specifically for Anthropic Prompt Caching:

... (truncated)

Commits
  • be250ce Version bump to 1.9.0
  • 57c8852 Fix Gemini schema conversion from JSON
  • 593eef0 Use responseJsonSchema for Gemini 2.5 structured output (Fixes #478)
  • 9e35e6a Fix Gemini parallel tool calls + tool results use role: "function"
  • 18870af New RubyLLM::Schema/JSON schema powered params DSL for Tools
  • cf27430 Removing gemfile locks for appraisal
  • 1d03869 Added Rails 8.1 Appraisal gemfile
  • 09d7312 Test on Rails 8.1
  • 95829ca Added provider_class to Model::Info and Model's ActiveRecord integration
  • aaece94 Updated appraisals
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [ruby_llm](https://github.com/crmne/ruby_llm) from 1.6.2 to 1.9.0.
- [Release notes](https://github.com/crmne/ruby_llm/releases)
- [Commits](crmne/ruby_llm@1.6.2...1.9.0)

---
updated-dependencies:
- dependency-name: ruby_llm
  dependency-version: 1.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file ruby Pull requests that update ruby code labels Nov 4, 2025
@dependabot @github
Copy link
Author

dependabot bot commented on behalf of github Nov 6, 2025

Superseded by #29.

@dependabot dependabot bot closed this Nov 6, 2025
@dependabot dependabot bot deleted the dependabot/bundler/ruby_llm-1.9.0 branch November 6, 2025 04:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file ruby Pull requests that update ruby code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant