Ir para o conteúdo principal
Voltar aos artigos

Acessibilidade em chats de IA: streaming não pode virar uma fila de interrupções

Um chat útil precisa de anúncios previsíveis, foco estável e navegação por teclado. A resposta gerada também exige estrutura acessível.

·3 min de leitura·4 visualizações

Eric Bailey publicou um guia de acessibilidade para chats imersivos com LLM, incluindo aplicações web empacotadas com Electron ou Tauri.[15] Entre as recomendações estão uma região de anúncios dedicada, comunicação do estado de processamento e navegação previsível entre conversa e prompt.[15] Para quem desenvolve essas interfaces, a resposta correta do modelo é apenas parte da entrega: o usuário precisa conseguir perceber, alcançar e explorar o conteúdo.

O que muda para quem desenvolve

O autor recomenda uma região de anúncios compartilhada ao final do DOM, em vez de adicionar aria-live a cada resposta, e anunciar o conteúdo ao término do streaming.[15] A ideia é evitar uma leitura entrecortada por fragmentos sucessivos.[15] Isso sugere separar a representação visual progressiva da comunicação destinada a tecnologias assistivas.

Para a conversa, o guia propõe mensagens como article, títulos acessíveis visualmente ocultos e foco programático com tabindex="-1".[15] Também recomenda links de salto e organização por grandes áreas, sem transformar cada mensagem em um landmark.[15] A estrutura precisa oferecer atalhos úteis sem produzir outra camada de ruído.

Na lista de sessões, um widget composto pode concentrar a entrada em uma parada de Tab e usar setas, Home, End e busca por caracteres para navegação interna.[15] O ganho pretendido é evitar que um histórico longo se torne uma sequência interminável de tabulações.[15]

Como aplicar

Monte um protótipo com envio de prompt, resposta em streaming, lista de conversas e um bloco de código. Faça o percurso completo apenas com teclado: entrar na conversa, enviar, acompanhar processamento, alcançar a resposta e voltar ao campo de entrada.

Depois repita com leitor de tela, ampliação de texto e redução de movimento. Registre onde o foco está, o que é anunciado e quanto conteúdo precisa ser atravessado. Não marque a tarefa como concluída apenas porque todos os controles possuem rótulos.

O guia observa que anúncios lineares perdem a semântica de tabelas e código e sugere resumos úteis, preservando o conteúdo completo com HTML semântico no histórico.[15] Para o experimento, compare o anúncio integral de um bloco longo com uma descrição breve que permita encontrá-lo depois. Valide a preferência com pessoas que usam essas tecnologias.

Cuidados e limites

Na web, o autor sugere Control+F6 e Control+Shift+F6 para alternar grandes áreas, preservando F6 do navegador; os atalhos devem ser descobríveis e ajustáveis quando oferecidos.[15] Não copie atalhos de aplicativos nativos sem considerar o ambiente.

O texto também pede cautela com suporte real a ariaNotify() e com o custo de manter transformações de conteúdo, localização e testes.[15] Minha recomendação é priorizar uma interação simples e previsível. Acessibilidade não deve depender de o usuário aprender a contornar uma interface visualmente sofisticada.

Fonte

[15] Fonte: Smashing Magazine

Continue lendo