enum

Anthropic::Model

Inherits Enum < Comparable < Value < Object

Constants

ClaudeOpus4_6 = 0

Claude 4.6 models (latest)

ClaudeSonnet4_6 = 1
ClaudeOpus4_5 = 2

Claude 4.5 models

ClaudeSonnet4_5 = 3
ClaudeHaiku4_5 = 4
ClaudeOpus4 = 5

Claude 4 models

ClaudeSonnet4 = 6

Constructors

from_friendly(value : String) : Model

Parses a model name from a string, supporting friendly aliases ("opus", "sonnet", "haiku") in addition to the standard enum names accepted by Model.parse (e.g. "ClaudeOpus4_6", "claude_opus_4_6").

Source
haiku
Source
opus

Aliases for convenience (point to latest versions)

Source
sonnet
Source

Class methods

api_strings

Returns the mapping of enum values to their API string identifiers.

Source

Instance methods

claude_haiku4_5?

Returns true if this enum value equals ClaudeHaiku4_5

Source
claude_opus4?

Returns true if this enum value equals ClaudeOpus4

Source
claude_opus4_5?

Returns true if this enum value equals ClaudeOpus4_5

Source
claude_opus4_6?

Returns true if this enum value equals ClaudeOpus4_6

Source
claude_sonnet4?

Returns true if this enum value equals ClaudeSonnet4

Source
claude_sonnet4_5?

Returns true if this enum value equals ClaudeSonnet4_5

Source
claude_sonnet4_6?

Returns true if this enum value equals ClaudeSonnet4_6

Source
to_api_string

Returns the API model identifier string.

Source
to_json(json : JSON::Builder) : Nil

Serializes this enum member by name.

For non-flags enums, the serialization is a JSON string. The value is the member name (see #to_s) transformed with String#underscore.

enum Stages
  INITIAL
  SECOND_STAGE
end

Stages::INITIAL.to_json      # => %("initial")
Stages::SECOND_STAGE.to_json # => %("second_stage")

For flags enums, the serialization is a JSON array including every flagged member individually serialized in the same way as a member of a non-flags enum. None is serialized as an empty array, All as an array containing all members.

@[Flags]
enum Sides
  LEFT
  RIGHT
end

Sides::LEFT.to_json                  # => %(["left"])
(Sides::LEFT | Sides::RIGHT).to_json # => %(["left","right"])
Sides::All.to_json                   # => %(["left","right"])
Sides::None.to_json                  # => %([])

ValueConverter.to_json offers a different serialization strategy based on the member value.

Source