Class: ActiveAgent::Providers::OpenRouter::Requests::MaxPrice

Inherits:
Common::BaseModel show all
Defined in:
lib/active_agent/providers/open_router/requests/provider_preferences/max_price.rb

Overview

Maximum price configuration for provider routing

Specifies maximum acceptable prices (in USD per million tokens or per operation) for filtering providers. OpenRouter will only route to providers within these price constraints.

Examples:

Setting prompt and completion limits

max_price = MaxPrice.new(
  prompt: 0.01,      # $0.01 per million input tokens
  completion: 0.03   # $0.03 per million output tokens
)

Setting all constraints

max_price = MaxPrice.new(
  prompt: 0.01,
  completion: 0.03,
  image: 0.001,
  audio: 0.002,
  request: 0.0001
)

See Also:

Instance Attribute Summary collapse

Method Summary

Methods inherited from Common::BaseModel

#<=>, #==, attribute, #deep_compact, #deep_dup, delegate_attributes, drop_attributes, inherited, #initialize, #inspect, keys, #merge!, required_attributes, #serialize, #to_h, #to_hash

Constructor Details

This class inherits a constructor from ActiveAgent::Providers::Common::BaseModel

Instance Attribute Details

#audioFloat?

Returns maximum price per audio operation.

Returns:

  • (Float, nil)

    maximum price per audio operation



45
# File 'lib/active_agent/providers/open_router/requests/provider_preferences/max_price.rb', line 45

attribute :audio,      :float

#completionFloat?

Returns maximum price per million completion tokens (output).

Returns:

  • (Float, nil)

    maximum price per million completion tokens (output)



37
# File 'lib/active_agent/providers/open_router/requests/provider_preferences/max_price.rb', line 37

attribute :completion, :float

#imageFloat?

Returns maximum price per image operation.

Returns:

  • (Float, nil)

    maximum price per image operation



41
# File 'lib/active_agent/providers/open_router/requests/provider_preferences/max_price.rb', line 41

attribute :image,      :float

#promptFloat?

Returns maximum price per million prompt tokens (input).

Returns:

  • (Float, nil)

    maximum price per million prompt tokens (input)



33
# File 'lib/active_agent/providers/open_router/requests/provider_preferences/max_price.rb', line 33

attribute :prompt,     :float

#requestFloat?

Returns maximum price per request.

Returns:

  • (Float, nil)

    maximum price per request



49
# File 'lib/active_agent/providers/open_router/requests/provider_preferences/max_price.rb', line 49

attribute :request,    :float