♻️ refactor(orquestrador): migrar decisoes para LLM e isolar memoria por assunto
- centraliza configuracoes do orquestrador em orchestrator_config.py (TTLs, campos obrigatorios, respostas deterministicas e low-value) - migra extracao de entidades e intents para o modelo, mantendo no codigo apenas normalizacao/validacao e execucao - troca heuristicas locais de intencao/roteamento por contratos de intents e roteamento multiassunto via LLM - melhora observabilidade da extracao com logs para payload vazio/invalido e falhas do extrator - corrige continuidade de contexto no slot-filling de revisao e normaliza datas relativas (hoje/amanha) - adiciona fluxos incrementais para criar/cancelar pedido e integra com fila de assuntos - implementa memoria compartilhada + memoria de trabalho por assunto (estilo nova aba) para reduzir contaminacao entre contextosmain
parent
29faec5464
commit
e79be95264
@ -0,0 +1,48 @@
|
||||
USER_CONTEXT_TTL_MINUTES = 60
|
||||
|
||||
PENDING_REVIEW_TTL_MINUTES = 30
|
||||
PENDING_REVIEW_DRAFT_TTL_MINUTES = 30
|
||||
PENDING_ORDER_DRAFT_TTL_MINUTES = 30
|
||||
PENDING_CANCEL_ORDER_DRAFT_TTL_MINUTES = 30
|
||||
|
||||
REVIEW_REQUIRED_FIELDS = (
|
||||
"placa",
|
||||
"data_hora",
|
||||
"modelo",
|
||||
"ano",
|
||||
"km",
|
||||
"revisao_previa_concessionaria",
|
||||
)
|
||||
|
||||
ORDER_REQUIRED_FIELDS = (
|
||||
"cpf",
|
||||
"valor_veiculo",
|
||||
)
|
||||
|
||||
CANCEL_ORDER_REQUIRED_FIELDS = (
|
||||
"numero_pedido",
|
||||
"motivo",
|
||||
)
|
||||
|
||||
LOW_VALUE_RESPONSES = {
|
||||
"certo.",
|
||||
"certo",
|
||||
"ok.",
|
||||
"ok",
|
||||
"entendi.",
|
||||
"entendi",
|
||||
"claro.",
|
||||
"claro",
|
||||
}
|
||||
|
||||
DETERMINISTIC_RESPONSE_TOOLS = {
|
||||
"consultar_estoque",
|
||||
"validar_cliente_venda",
|
||||
"avaliar_veiculo_troca",
|
||||
"agendar_revisao",
|
||||
"listar_agendamentos_revisao",
|
||||
"cancelar_agendamento_revisao",
|
||||
"editar_data_revisao",
|
||||
"cancelar_pedido",
|
||||
"realizar_pedido",
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue