docs(newwhats): nota técnica da transcrição de áudios (server-side via Gemini)
Registra o desenho recomendado p/ a prioridade 2: transcrever no servidor via API gerenciada do Google (economiza CPU; funciona com a IA automática), salvar o texto e arquivar/descartar o áudio; client-side só p/ áudio gravado pelo operador. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -42,6 +42,25 @@ Frameworks de mercado (2026):
|
||||
4. **Resposta em áudio (TTS)** — opcional, alto impacto, custo por uso.
|
||||
5. **Mem0/Zep cloud** — só se a memória própria não escalar.
|
||||
|
||||
## Nota técnica — transcrição de áudios (prioridade 2)
|
||||
|
||||
**Desenho recomendado: transcrever no SERVIDOR via API gerenciada do Google.**
|
||||
|
||||
- O áudio recebido **nasce no servidor** (Baileys roda no backend) — não há como o
|
||||
dispositivo do operador interceptar antes. Além disso, a secretária responde
|
||||
**automaticamente, sem operador na tela**, então a transcrição client-side não
|
||||
serviria para o fluxo automático.
|
||||
- A economia real de servidor vem de **não rodar o modelo localmente**: usar a
|
||||
**API gerenciada do Google** (Gemini — já há `gemini_key` — ou Cloud
|
||||
Speech-to-Text). O modelo roda no Google; o servidor só faz I/O.
|
||||
- **Salvar a transcrição (texto)** na mensagem; o **áudio é opcional**
|
||||
(arquivar/descartar para economizar storage).
|
||||
- **Client-side só faz sentido** para áudios que o **operador grava** (nascem no
|
||||
navegador) e para **cache de UI** (IndexedDB) — não para áudio recebido.
|
||||
|
||||
Fluxo: áudio recebido → backend transcreve via Gemini → grava transcrição na
|
||||
`messages` (e a secretária passa a "entender" o áudio) → áudio opcionalmente arquivado.
|
||||
|
||||
## Fontes
|
||||
- Mem0 — State of Agent Memory 2026: https://mem0.ai/blog/state-of-ai-agent-memory-2026
|
||||
- Atlan — Best Memory Frameworks 2026: https://atlan.com/know/best-ai-agent-memory-frameworks-2026/
|
||||
|
||||
Reference in New Issue
Block a user