01 Streaming

Streaming de tokens

A resposta não chega pronta. Eu leio um fluxo, mostro os pedaços e, se a conexão cair, retomo do último token. O DOM só é atualizado uma vez por frame.

Como usar

O texto chega em pedaços. Eu junto esses pedaços e pinto a tela uma vez por frame, em vez de uma vez por token.

  1. Deixe a rajada em 8, ou aumente, e a chance de pausa em 0.
  2. Aperte Enviar.
  3. Compare as escritas de cada token com as escritas de cada frame.

Olhe os dois cartões e a frase de conclusão quando o estado ficar concluído.

Ver o código, abre no GitHub em uma nova aba

Pedido

Resposta

Modo ...
Estado pronto
Tentativa 0
Tokens 0
Escritas no DOM 0

A cada token

Uma pintura por pedaço

0 escritas

Uma vez por frame

Uma pintura por frame

0 escritas

Parado Pronto

Tokens conta o que chegou. Escritas no DOM conta quantas vezes eu pintei a tela. Com rajada maior que 1, o segundo número fica menor: eu junto os pedaços e escrevo no próximo frame. Cancelar usa AbortController. Um corte no meio dispara retry com espera que dobra.