Recuperar com segurança streams LLM interrompidos

Recuperar com segurança streams LLM interrompidos: guia de produção com decisão explícita, artefato reutilizável, testes de falha, sinais operacionais e limites com fontes.

Recuperar com segurança streams LLM interrompidos: guia de produção com decisão explícita, artefato reutilizável, testes de falha, sinais operacionais e limites com fontes.

Resposta direta

Implemente Recuperar com segurança streams LLM interrompidos como contrato de controle de confiabilidade, não como configuração isolada. Fixe protocolo, owner, evidência e rollback antes de mover tráfego. Pontos de controle: first_event, partial_output, terminal_event, replay_policy.

A conclusão é fixada pela tabela de contrato e pelo exemplo determinístico. llm-stream-disconnect-recovery não entra em rollout se um controle obrigatório não tiver evidência de wire, releitura persistente ou owner.

Escopo e responsabilidades

Separe a tarefa do cliente do plano de controle. O cliente controla arquivo ou variável; o gateway controla autenticação, rotas, limites, contabilidade e tentativas; o provedor controla protocolo nativo e capacidades voláteis. Uma resposta de texto comprova apenas um caminho.

O artigo possui decisão, riscos e verificação; a documentação viva mantém comandos e passos de interface voláteis. Isso cria uma árvore de capacidades sem duplicar o owner da intenção.

O registro owner desta página é llm-stream-disconnect-recovery; os controles fixos são first_event, partial_output, terminal_event, replay_policy. Cada valor é verificado no limite de wire ou estado persistente, nunca inferido de marketing.

Artefato prático: Recuperar com segurança streams LLM interrompidos

Este registro de revisão é o artefato entregável. Valores técnicos explícitos permitem comparar configuração, evidência de wire e estado persistente sem depender de captura de tela.

Controle Decisão fixa Evidência
stream_identity one_attempt_id_per_connection logical_request_id + attempt_id + provider_request_id
first_effective_event record_exact_transition event_type + timestamp + bytes_received
partial_output incomplete_not_success last_event_type + buffered_item_ids + incomplete_marker
tool_arguments decode_only_after_terminal_boundary call_id + fragment_sequence + completion_event
replay policy_depends_on_side_effect_risk replay_decision + new_attempt_id + prior_attempt_link
billing retain_each_attempt_and_final_settlement attempt_usage + terminal_state + charge_record

Exemplo determinístico

O exemplo usa placeholders e entradas determinísticas. Troque apenas identificadores revisados, nunca segredos ou conteúdo de clientes, e preserve o snapshot exato.

CONNECTING -> STREAMING -> TERMINAL_SUCCESS
     |             |  \
     |             |   -> DISCONNECTED_AFTER_PARTIAL -> INCOMPLETE
     |             -> CLIENT_CANCELLED -> CANCELLED
     -> DISCONNECTED_BEFORE_FIRST_EVENT -> RETRY_ELIGIBLE?

Never concatenate output from two attempt IDs.
Never execute partial tool arguments.

Escada de verificação

Execute as etapas em ordem. Um teste posterior não compensa um limite anterior ausente; toda tentativa deve ligar-se a uma solicitação lógica.

  1. Congele cliente, política do gateway, alias de modelo, rotas e baseline observável. Registro de evidência para stream_identity: aplicar one_attempt_id_per_connection e manter logical_request_id + attempt_id + provider_request_id.
  2. Execute prova positiva determinística e guarde resposta, request ID, rota, estado final e uso. Registro de evidência para first_effective_event: aplicar record_exact_transition e manter event_type + timestamp + bytes_received.
  3. Execute o caso negativo, limite ou desconexão e confirme a camada de falha. Registro de evidência para partial_output: aplicar incomplete_not_success e manter last_event_type + buffered_item_ids + incomplete_marker.
  4. Repita pelo protocolo real; não deduza suporte nativo de outro endpoint compatível. Registro de evidência para tool_arguments: aplicar decode_only_after_terminal_boundary e manter call_id + fragment_sequence + completion_event.
  5. Faça rollout para coorte limitada com owner, expiração, limite de parada e rollback. Registro de evidência para replay: aplicar policy_depends_on_side_effect_risk e manter replay_decision + new_attempt_id + prior_attempt_link.
  6. Releia configuração e contabilidade persistentes; remova acesso e dados temporários. Registro de evidência para billing: aplicar retain_each_attempt_and_final_settlement e manter attempt_usage + terminal_state + charge_record.

Falhas a evitar

Cada item abaixo bloqueia a publicação. HTTP 200, dashboard ou demonstração não substituem esses controles.

  • blind_reconnect — Se ocorrer blind_reconnect, interrompa o rollout e use owner, evidência e rollback definidos; uma prova positiva não anula a falha.
  • partial_success — Se ocorrer partial_success, interrompa o rollout e use owner, evidência e rollback definidos; uma prova positiva não anula a falha.
  • cross_attempt_splice — Se ocorrer cross_attempt_splice, interrompa o rollout e use owner, evidência e rollback definidos; uma prova positiva não anula a falha.
  • partial_tool_execution — Se ocorrer partial_tool_execution, interrompa o rollout e use owner, evidência e rollback definidos; uma prova positiva não anula a falha.

Sinais e condições de parada

Observe sucesso e dano juntos. O limite pertence à política do workload; fixe SLO e denominador antes da janela.

Sinal Limite Ação
disconnect_before_first_event_rate workload_SLO_threshold inspect_connect_and_header_phases
disconnect_after_partial_rate workload_SLO_threshold mark_incomplete_and_stop_auto_retry
stream_without_terminal_event 0_success_classifications reclassify_and_investigate
cross_attempt_fragment_count 0 disable_recovery_path

Limites do Modelflare

Modelflare centraliza rotas compatíveis e nativas, chaves limitadas, grupos, uso e falhas. Um canal não prova todos os campos, aliases, retenção, regiões ou fallbacks. Verifique pelo protocolo nativo e use a liquidação persistente como verdade financeira.

É um método de implementação, não certificação, conclusão legal, histórico de uptime ou benchmark universal. Revalide contrato, modelos, preços, retenção e regiões em T-1; altere a data se um fato central mudar.

Continuar pelo cluster temático

O artigo pai cobre a decisão ampla, o irmão o próximo passo e a documentação a configuração atual. Links no corpo são necessários porque o CMS gerenciado não possui related-slug.

Perguntas frequentes

Recuperar com segurança streams LLM interrompidos: Uma solicitação correta aprova o rollout?

Não. Caso negativo, rollout limitado, releitura persistente e parada são gates separados.

Recuperar com segurança streams LLM interrompidos: Fixar modelos e preços meses antes?

Não. Use placeholders ou snapshots e revalide em T-1.

Recuperar com segurança streams LLM interrompidos: Que evidência guardar?

IDs sem conteúdo sensível, versão, horários, estado, uso, cobrança final e decisão.

Fontes e data de verificação

Fontes verificadas em 2026-08-07. Elas definem contratos e princípios, não rotas sem teste ou estados futuros.