Class: RubyLLM::Model::Modalities

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby_llm/model/modalities.rb

Overview

A Model::Modalities lists the kinds of content a model accepts and produces, as arrays of Strings. Instances come from Model#modalities.

model = RubyLLM.models.find('gpt-5.6')
model.modalities.input   # => ["text", "image", "pdf"]
model.modalities.output  # => ["text"]

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data) ⇒ Modalities

:nodoc:



21
22
23
24
# File 'lib/ruby_llm/model/modalities.rb', line 21

def initialize(data) # :nodoc:
  @input = Array(data[:input]).map(&:to_s)
  @output = Array(data[:output]).map(&:to_s)
end

Instance Attribute Details

#inputObject (readonly)

The input modalities as an array of Strings, e.g. ["text", "image", "pdf"].



15
16
17
# File 'lib/ruby_llm/model/modalities.rb', line 15

def input
  @input
end

#outputObject (readonly)

The output modalities as an array of Strings, e.g. ["text"] or ["embeddings"].



19
20
21
# File 'lib/ruby_llm/model/modalities.rb', line 19

def output
  @output
end

Instance Method Details

#to_hObject

Returns the modalities as a Hash with :input and :output keys.



27
28
29
30
31
32
# File 'lib/ruby_llm/model/modalities.rb', line 27

def to_h
  {
    input: input,
    output: output
  }
end