Skip to content

[BUG] v1.5.0 breaking change in capabilities from Array to Hash ??? #315

@MadBomber

Description

@MadBomber

Basic checks

  • I searched existing issues - this hasn't been reported
  • I can reproduce this consistently
  • This is a RubyLLM bug, not my application code

What's broken?

There may be a breaking change in v1.5.0 which has a Hash object for the model's capabilities object. In previous versions this object was an Array.

My aia gem with the directive for available_models produces a report for v1.4.0 and v1.3.1 but when v1.5.0 is used it throws an exception telling me that I can't use a join on capabilities because its a Hash.

However, if I go into IRB the object is showing as the expected Array:

irb(main):012:0> RubyLLM::VERSION
"1.5.0"
irb(main):013:0> llm.class
RubyLLM::Chat
irb(main):014:0> llm.model.capabilities
["batch", "function_calling", "structured_output"]

So I'm still puzzled as to whether this is a RubyLLM problem (leaning that way because AIA does not throw the exception on versions prior to 1.5.0) This may be associated with the new models that have been added to RubyLLM. Will know more after I dig a little deeper.

BTW i like your issue template.

How to reproduce

config with standard stuff
chat.model.capabilities

Expected behavior

expected Array got a Hash

What actually happened

expected Array got a Hash

Environment

3.4.5
1.5.0
MacOS

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions