Packages

Elixir SDK for Bifrost, the LLM gateway by Maxim

Current section

Files

Jump to
ex_bifrost lib ex_bifrost model anthropic_message_request.ex
Raw

lib/ex_bifrost/model/anthropic_message_request.ex

# NOTE: This file is auto generated by OpenAPI Generator 7.23.0 (https://openapi-generator.tech)
# using the Elixir SDK Generator template (https://github.com/houllette/elixir-sdk-generator).
# Do not edit this file manually — edit the templates and regenerate instead.
defmodule ExBifrost.Model.AnthropicMessageRequest do
@moduledoc """
AnthropicMessageRequest model.
"""
@derive JSON.Encoder
defstruct [
:model,
:max_tokens,
:messages,
:system,
:cache_control,
:metadata,
:stream,
:temperature,
:top_p,
:top_k,
:stop_sequences,
:tools,
:tool_choice,
:mcp_servers,
:thinking,
:output_format,
:fallbacks
]
@type t :: %__MODULE__{
:model => String.t(),
:max_tokens => integer(),
:messages => [ExBifrost.Model.AnthropicMessage.t()],
:system => ExBifrost.Model.AnthropicMessageRequestSystem.t() | nil,
:cache_control => ExBifrost.Model.CacheControl.t() | nil,
:metadata => ExBifrost.Model.AnthropicMessageRequestMetadata.t() | nil,
:stream => boolean() | nil,
:temperature => number() | nil,
:top_p => number() | nil,
:top_k => integer() | nil,
:stop_sequences => [String.t()] | nil,
:tools => [ExBifrost.Model.AnthropicMessageRequestToolsInner.t()] | nil,
:tool_choice => ExBifrost.Model.AnthropicMessageRequestToolChoice.t() | nil,
:mcp_servers => [ExBifrost.Model.AnthropicMessageRequestMcpServersInner.t()] | nil,
:thinking => ExBifrost.Model.AnthropicMessageRequestThinking.t() | nil,
:output_format => map() | nil,
:fallbacks => [String.t()] | nil
}
alias ExBifrost.Deserializer
def decode(value) do
value
|> Deserializer.deserialize(:messages, :list, ExBifrost.Model.AnthropicMessage)
|> Deserializer.deserialize(:system, :struct, ExBifrost.Model.AnthropicMessageRequestSystem)
|> Deserializer.deserialize(:cache_control, :struct, ExBifrost.Model.CacheControl)
|> Deserializer.deserialize(:metadata, :struct, ExBifrost.Model.AnthropicMessageRequestMetadata)
|> Deserializer.deserialize(:tools, :list, ExBifrost.Model.AnthropicMessageRequestToolsInner)
|> Deserializer.deserialize(:tool_choice, :struct, ExBifrost.Model.AnthropicMessageRequestToolChoice)
|> Deserializer.deserialize(:mcp_servers, :list, ExBifrost.Model.AnthropicMessageRequestMcpServersInner)
|> Deserializer.deserialize(:thinking, :struct, ExBifrost.Model.AnthropicMessageRequestThinking)
end
end