Build

Streaming

Nhận content block dần qua server-sent events

Đặt stream: true hoặc dùng SDK stream helper.

with client.messages.stream(
    model="claude-opus-4-8",
    max_tokens=512,
    messages=[{"role": "user", "content": "Viết ba gạch đầu dòng."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

HTTP trả text/event-stream với các event như message_start, content_block_start, content_block_delta, content_block_stop và message_stop. Client phải chịu được ping, event chưa biết và nhiều loại delta (bao gồm thinking).

Chỉ commit output vào hệ thống sau message_stop. Nếu kết nối đứt, không tự nối hai kết quả; retry toàn request với idempotency/UX phù hợp. Giới hạn buffer, hỗ trợ hủy và escape nội dung trước khi render HTML.