Class: LLM::OpenAI::RequestAdapter::Moderation

Inherits:
Object
  • Object
show all
Defined in:
lib/llm/providers/openai/request_adapter/moderation.rb

Instance Method Summary collapse

Constructor Details

#initialize(inputs) ⇒ LLM::OpenAI::RequestAdapter::Moderation

Parameters:

  • inputs (String, URI, Array<String, URI>)

    The inputs to format



11
12
13
# File 'lib/llm/providers/openai/request_adapter/moderation.rb', line 11

def initialize(inputs)
  @inputs = inputs
end

Instance Method Details

#adaptArray<Hash>

Adapts the inputs for the OpenAI moderations API

Returns:

  • (Array<Hash>)


18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/llm/providers/openai/request_adapter/moderation.rb', line 18

def adapt
  [*inputs].flat_map do |input|
    if String === input
      {type: :text, text: input}
    elsif URI === input
      {type: :image_url, url: input.to_s}
    else
      raise LLM::FormatError, "The given object (an instance of #{input.class}) " \
                              "is not supported by OpenAI moderations API"
    end
  end
end