Adds final version of documentation

This commit is contained in:
2026-01-28 14:09:59 -03:00
parent 4e9e18faea
commit 442acd7d1d
3 changed files with 299 additions and 25 deletions

View File

@@ -7,8 +7,7 @@ Este documento descreve a aplicação web Streamlit localizada na pasta `front/a
```
front/app/
├── front.py # Aplicação principal Streamlit (74 linhas)
── st_auth.py # Módulo de autenticação AWS Secrets Manager (28 linhas)
└── __pycache__/ # Bytecode Python compilado
── st_auth.py # Módulo de autenticação AWS Secrets Manager (28 linhas)
```
## Visão Geral da Arquitetura
@@ -118,24 +117,9 @@ A aplicação mantém três variáveis de estado de sessão:
| `chat_answer_history` | `List[str]` | Lista de respostas da IA |
| `chat_history` | `List[dict]` | Histórico completo da conversa com papéis |
##### 4. Função Utilitária: `create_sources_string()`
```python
def create_sources_string(source_urls: Set[str]) -> str:
"""
Formata fontes de citação para exibição.
Args:
source_urls: Conjunto de URLs de fontes únicas para formatar.
Retorna:
str: Lista numerada de fontes para exibição.
"""
```
*Nota: Atualmente definida mas não utilizada ativamente no código.*
##### 5. Fluxo Principal do Chat
##### 4. Fluxo Principal do Chat
Quando um usuário envia uma mensagem, a seguinte sequência ocorre:
@@ -244,7 +228,7 @@ x-api-key: <Chave API do AWS Secrets Manager>
| Cenário | Comportamento |
|---------|---------------|
| Timeout da API | Exibe: "Desculpe, a busca pode ter demorado mais que o esperado. Por favor tente novamente." |
| Timeout da API | Exibe: Mensagem padrão definada anteriormente para enviar a equipe |
| Erros gerais da API | Resposta pode não ser exibida corretamente |
## Comportamento da Sessão
@@ -261,9 +245,3 @@ A aplicação foi projetada para executar atrás de um AWS Application Load Bala
A aplicação executa em um container Docker (veja `front/Dockerfile`) e expõe a porta 8501.
## Considerações Conhecidas
1. **Endpoint de API Hardcoded:** A URL do AWS API Gateway está hardcoded no código fonte
2. **Funcionalidades Não Utilizadas:** Dependências `streamlit-authenticator` e `sseclient` são importadas mas não utilizadas
3. **Sem Validação de Entrada:** Perguntas dos usuários e respostas da API não são validadas antes do uso
4. **Persistência Apenas na Sessão:** Conversas não persistem entre sessões