module

Smith::LLM::AnthropicStream

Reads Anthropic's Messages streaming format, which is shaped quite differently from OpenAI's: named events carrying indexed content blocks rather than a single delta object.

message_start -> input tokens content_block_start -> block type (text | tool_use), id and name content_block_delta -> text_delta, or input_json_delta for tool args content_block_stop message_delta -> stop_reason, output tokens

Class methods

read(io : IO, default_model : String, on_thinking : Proc(String, Nil) | Nil = nil, &on_delta : String -> Nil) : Response
Source