Pular para o conteúdo principal
Por padrão, uma completion retorna quando a resposta inteira está pronta. Com stream: true, a API começa a responder assim que o modelo produz os primeiros tokens, então você pode mostrar progresso a um usuário ou começar a processar mais cedo. Streaming está disponível com canvas_id e version_id. Tarefas criadas com application_id sempre rodam de forma assíncrona e não usam streaming.

Habilitando o stream

Acrescente stream: true à requisição. Com os SDKs, a completion retornada passa a ser um iterável de chunks.

O que cada chunk contém

Cada chunk é um objeto de stream de chat.completion. Os campos que você vai usar: Use delta.content para exibir o texto conforme ele chega, e leia message.structured_content quando precisar dos campos do Formato de Saída em vez do texto. O schema completo está em Run Canvas.
O formato do stream por HTTP puro (como os chunks são delimitados no corpo da resposta) não está documentado aqui. Os SDKs cuidam disso para você; se você consumir o stream com o seu próprio cliente HTTP, inspecione a resposta bruta antes.

Quando não usar streaming

O streaming mantém a conexão HTTP aberta durante toda a execução. Para documentos longos processados em segundo plano, ou quando quem chama não precisa da saída parcial, prefira async ou uma webhook_url e leia o resultado quando ele estiver pronto.