class Anthropic::Resources::Messages
def stream(params)
- See: Anthropic::Models::MessageCreateParams -
Returns:
-
(Anthropic::Streaming::MessageStream)
-
Parameters:
-
request_options
(Anthropic::RequestOptions, Hash{Symbol=>Object}, nil
) -- -
top_p
(Float
) -- Use nucleus sampling. -
top_k
(Integer
) -- Only sample from the top K options for each subsequent token. -
tools
(Array
) -- Definitions of tools that the model may use. -
tool_choice
(Anthropic::Models::ToolChoiceAuto, Anthropic::Models::ToolChoiceAny, Anthropic::Models::ToolChoiceTool, Anthropic::Models::ToolChoiceNone
) -- How the model should use the provided tools. The model can use a specific tool, -
thinking
(Anthropic::Models::ThinkingConfigEnabled, Anthropic::Models::ThinkingConfigDisabled
) -- Configuration for enabling Claude's extended thinking. -
temperature
(Float
) -- Amount of randomness injected into the response. -
system_
(String, Array
) -- System prompt. -
stop_sequences
(Array
) -- Custom text sequences that will cause the model to stop generating. -
service_tier
(Symbol, Anthropic::Models::MessageCreateParams::ServiceTier
) -- Determines whether to use priority capacity (if available) or standard capacity -
metadata
(Anthropic::Models::Metadata
) -- An object describing metadata about the request. -
model
(Symbol, String, Anthropic::Models::Model
) -- The model that will complete your prompt.\n\nSee [models](https://docs.anthropic -
messages
(Array
) -- Input messages. -
max_tokens
(Integer
) -- The maximum number of tokens to generate before stopping.
Overloads:
-
stream(max_tokens:, messages:, model:, metadata: nil, service_tier: nil, stop_sequences: nil, system_: nil, temperature: nil, thinking: nil, tool_choice: nil, tools: nil, top_k: nil, top_p: nil, request_options: {})
def stream(params) parsed, options = Anthropic::Models::MessageCreateParams.dump_request(params) unless parsed.fetch(:stream, true) message = "Please use `#create` for the non-streaming use case." raise ArgumentError.new(message) end parsed.store(:stream, true) raw_stream = @client.request( method: :post, path: "v1/messages", headers: {"accept" => "text/event-stream"}, body: parsed, stream: Anthropic::Internal::Stream, model: Anthropic::Models::RawMessageStreamEvent, options: options ) Anthropic::Streaming::MessageStream.new(raw_stream: raw_stream) end