diff --git a/projetos/newwhats.clube67.com/secretaria-ia-evolucao.md b/projetos/newwhats.clube67.com/secretaria-ia-evolucao.md index ac6901d..888f881 100644 --- a/projetos/newwhats.clube67.com/secretaria-ia-evolucao.md +++ b/projetos/newwhats.clube67.com/secretaria-ia-evolucao.md @@ -35,7 +35,8 @@ Frameworks de mercado (2026): | Modelo mais natural | Claude / GPT-4o no diálogo | médio | ## Prioridade sugerida -1. **Memória própria por contato** (reusa o RAG; sem infra nova) — maior ganho. +1. ✅ **Memória própria por contato** — IMPLEMENTADA (28/jun/2026). Ver + `secretaria-ia.md` → "Memória de longo prazo por contato" (`sec_contact_memory`). 2. **Transcrição de áudios** (Whisper) — destrava entender quem manda áudio. 3. **Ritmo humano** (typing + delay + chunks) — barato, muda a percepção. 4. **Resposta em áudio (TTS)** — opcional, alto impacto, custo por uso. diff --git a/projetos/newwhats.clube67.com/secretaria-ia.md b/projetos/newwhats.clube67.com/secretaria-ia.md index 566342f..714c305 100644 --- a/projetos/newwhats.clube67.com/secretaria-ia.md +++ b/projetos/newwhats.clube67.com/secretaria-ia.md @@ -34,6 +34,18 @@ VPS3 nem na imagem do `pgdev`, e o role `newwhats` **não é superuser** > Para bases pequenas (clínica/empresa) é rápido e suficiente. Quando a VPS3 > tiver `pgvector`, dá para migrar a busca ao banco sem mudar a interface. +## Memória de longo prazo por contato + +A secretária **lembra do cliente entre conversas** (tabela `sec_contact_memory`): + +- **Extração** (na sumarização, a cada ~10 trocas): um LLM extrai *fatos + duradouros* do cliente a partir da conversa; cada fato vira embedding e é salvo + com **dedup** (cosseno > 0.92). Chave do contato = `ext_chat_id` (ou `contact_name`). +- **Recuperação**: `buildSystemPrompt` injeta `=== MEMÓRIA DO CLIENTE ===` com os + fatos mais relevantes à pergunta (cosseno). Sem chave de embedding → usa os mais + recentes. Fallback silencioso em qualquer falha (não regride). +- Reusa o mesmo embedding do RAG (`openai_key`/`gemini_key`); **sem pgvector**. + ## Modo teste / segurança - `DISABLE_OUTBOUND=true` (kill switch global, ver `ambiente-dev.md`) bloqueia