Skip to main content
O adaptador do LiveKit Agents lê o contexto antes de cada chamada ao modelo, registra cada fala final como turno, entrega as ferramentas do histórico amarradas ao cliente, registra o atestado da operadora e o transbordo. Em Python, NiadraAgent (ou o mixin NiadraMemory na sua própria classe Agent); em Node, NiadraAgent e NiadraMemory em @niadra/sdk/livekit.

Instalar

A integração em TypeScript chega com o @niadra/sdk 0.3.0. Essa versão está pronta no ramo main do repositório e chega ao npm quando for publicada; até lá, o pacote do npm é o 0.1.1, sem os subcaminhos das integrações.

As cinco primitivas

conversation_for(niadra, participant, room=...) abre a conversa com o número SIP como sujeito e o id da ligação (ou o nome da sala) como conversation_id; em Node, sipSubject() e sipConversationId() fazem o mesmo.

Exemplo mínimo

O mesmo código está em examples/livekit_agent.py e examples/livekit.ts nos repositórios dos SDKs. Rode com NIADRA_API_KEY e as credenciais do LiveKit; para testar sem a nuvem da Niadra, niadra-mock e NIADRA_BASE_URL=http://127.0.0.1:8765.

Memória do agente

Com agent_memory=True (ou {"write": True, "max_tokens": 300, "tags": [...]}), as notas do próprio agente vão logo antes do contexto do cliente, na mesma mensagem de sistema, e search_agent_memory (e remember, com write) entram nas ferramentas. Veja Memória do agente.

Limites

  • Nada aqui derruba um turno: um contexto que não chega em 150 ms fica de fora, e uma falha ao registrar vai para o log, sem conteúdo.
  • O atestado STIR/SHAKEN não vem nos atributos sip.* do LiveKit; sem o mapeamento do cabeçalho, a leitura sai em V0 e traz só o que a política libera nesse nível.
  • Em Python, os extras livekit e openai-agents fixam versões incompatíveis de uma dependência comum; instale um por ambiente.
  • Testado contra livekit-agents 1.8.3 e @livekit/agents 1.9.0, com LLM, STT e TTS substituídos por fakes e a Niadra no emulador, na CI de cada SDK.

Próximos passos

Agentes de voz

contexto antes do alô, atestado de rede e transbordo.

Pipecat

o mesmo desenho, como um processador de frames.