first commit

This commit is contained in:
2026-06-12 11:36:33 -03:00
commit 56a420f5f8
69 changed files with 5667 additions and 0 deletions

BIN
configs/.DS_Store vendored Normal file

Binary file not shown.

55
configs/identity.yaml Normal file
View File

@@ -0,0 +1,55 @@
identity:
version: "2"
required:
- session_key
keys:
customer_key:
description: Cliente/assinante/consumidor canônico.
sources:
- business_context.customer_key
- customer_key
- msisdn
- customer_id
- user_id
- ani
- from
contract_key:
description: Contrato, conta, fatura, pedido ou asset principal.
sources:
- business_context.contract_key
- contract_key
- invoice_id
- current_invoice_number
- order_id
- pedido_id
- asset_id
interaction_key:
description: Chave externa da interação/call/chat vinda do canal.
sources:
- business_context.interaction_key
- interaction_key
- ura_call_id
- call_id
- message_id
account_key:
description: Conta de cobrança/conta comercial.
sources:
- business_context.account_key
- account_key
- account_id
- billing_account_id
resource_key:
description: Recurso/linha/produto/asset específico.
sources:
- business_context.resource_key
- resource_key
- asset_id
- product_id
- sku
session_key:
description: Sessão técnica estável já escopada por tenant e agente.
sources:
- business_context.session_key
- session_key
- conversation_key
- session_id

21
configs/judge/agents.yaml Normal file
View File

@@ -0,0 +1,21 @@
agents:
- agent_id: telecom_contas
enabled: true
days_back: 1
percentage: 1.0
langfuse_agent_aliases: [telecom_contas, billing_agent, financeiro_agent]
gcs_prefix: agnt_ai_contas/llm_qa/input
- agent_id: retail_orders
enabled: true
days_back: 1
percentage: 1.0
langfuse_agent_aliases: [retail_orders, orders_agent, retail_agent]
gcs_prefix: agnt_ai_orders/llm_qa/input
- agent_id: financeiro_agent
enabled: true
days_back: 1
percentage: 1.0
langfuse_agent_aliases: [financeiro_agent, billing_agent, telecom_contas]
gcs_prefix: agnt_ai_financeiro/llm_qa/input

View File

@@ -0,0 +1,17 @@
session_metrics: |
Você é um avaliador imparcial de uma sessão completa de conversa entre
cliente e agente. Vai receber a TRANSCRIÇÃO da sessão (alternância
user/agent). Sua tarefa é atribuir três valores:
- inferredCsiScore: sentimento inferido do cliente ao longo da conversa
(0.0 negativo, 0.5 neutro, 1.0 positivo).
- resolution: 1 se o problema do cliente foi resolvido pelo agente,
0 caso contrário.
- conversationPrecision: 1 se o agente manteve foco e precisão na
conversa, 0 se divagou, repetiu desnecessariamente ou ficou em loop.
Retorne SOMENTE um JSON válido, sem texto adicional:
{"inferredCsiScore": <float>, "resolution": <0|1>, "conversationPrecision": <0|1>, "rationale": "<breve justificativa em português>"}
rationale deve ter no máximo 200 caracteres.

View File

@@ -0,0 +1,16 @@
trace_metrics: |
Você é um avaliador imparcial de respostas de agentes conversacionais.
Vai receber o HISTÓRICO da conversa (últimos turnos), a MENSAGEM DO
USUÁRIO e a RESPOSTA DO AGENTE. Sua tarefa é atribuir três notas
numéricas entre 0.0 e 1.0:
- judgeScore: qualidade global da resposta (clareza, utilidade, tom).
- accuracyScore: factualidade da resposta frente ao contexto fornecido.
- alucinationScore: grau em que a resposta contém afirmações NÃO
suportadas pelo contexto (alto = mais alucinação = pior).
Retorne SOMENTE um JSON válido, sem nenhum texto adicional, no formato:
{"judgeScore": <float>, "accuracyScore": <float>, "alucinationScore": <float>, "rationale": "<breve justificativa em português>"}
rationale deve ter no máximo 200 caracteres.

View File

@@ -0,0 +1,11 @@
profiles:
judge:
provider: oci_openai
model: meta.llama-3.3-70b-instruct
temperature: 0
max_tokens: 900
mock:
provider: mock
model: mock-judge
temperature: 0
max_tokens: 300