mirror of
https://github.com/hoshikawa2/agent_platform_oci.git
synced 2026-07-09 14:04:19 +00:00
First commit
This commit is contained in:
16
libs/agent_framework/config/guardrails.yaml
Normal file
16
libs/agent_framework/config/guardrails.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
# Fonte da verdade para quais guardrails rodam.
|
||||
# Se este arquivo existir, somente os rails habilitados aqui serão instanciados.
|
||||
# Se este arquivo não existir, o framework usa o bundle default legado.
|
||||
|
||||
input:
|
||||
- code: MSK
|
||||
enabled: true
|
||||
- code: VLOOP
|
||||
enabled: true
|
||||
|
||||
output:
|
||||
- code: REVPREC
|
||||
enabled: true
|
||||
|
||||
retrieval: []
|
||||
tool: []
|
||||
28
libs/agent_framework/config/judges.yaml
Normal file
28
libs/agent_framework/config/judges.yaml
Normal file
@@ -0,0 +1,28 @@
|
||||
# Source of truth for the judge stage.
|
||||
# The simple schema remains valid. In this adapted version, these names use
|
||||
# calibrated LLM prompts by default:
|
||||
# - response_quality -> RQLT calibrated judge
|
||||
# - groundedness -> ALUC calibrated judge
|
||||
# The model/provider comes from llm_profiles.yaml profile `judge`.
|
||||
# Calibrated LLM judges fail-closed by default. Set fail_closed: false only if you intentionally want fail-open.
|
||||
# To force old heuristic behavior, add `type: deterministic` to an entry.
|
||||
judges:
|
||||
- name: response_quality
|
||||
enabled: true
|
||||
threshold: 0.7
|
||||
- name: groundedness
|
||||
enabled: true
|
||||
threshold: 0.6
|
||||
|
||||
# Optional calibrated judges:
|
||||
# - name: tone
|
||||
# enabled: true
|
||||
# threshold: 0.0
|
||||
# - name: sentiment
|
||||
# enabled: true
|
||||
# fail_on_negative: false
|
||||
# - name: llm_judge
|
||||
# type: llm
|
||||
# enabled: true
|
||||
# profile: judge
|
||||
# fail_closed: true
|
||||
89
libs/agent_framework/config/llm_profiles.yaml
Normal file
89
libs/agent_framework/config/llm_profiles.yaml
Normal file
@@ -0,0 +1,89 @@
|
||||
# Optional file. If this file is absent, the backend keeps using .env exactly as before.
|
||||
# If present, each inference point can override provider/model/params.
|
||||
# Put this files in the same .env file folder
|
||||
profiles:
|
||||
default:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0.2
|
||||
max_tokens: 2048
|
||||
|
||||
# Workflow/routing
|
||||
supervisor:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0
|
||||
max_tokens: 700
|
||||
|
||||
router:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0
|
||||
max_tokens: 500
|
||||
|
||||
# Safety / evaluation
|
||||
guardrail:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0
|
||||
max_tokens: 600
|
||||
|
||||
grl:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0
|
||||
max_tokens: 700
|
||||
|
||||
judge:
|
||||
provider: oci_openai
|
||||
model: xopenai.gpt-4.1
|
||||
temperature: 0
|
||||
max_tokens: 800
|
||||
|
||||
# RAG
|
||||
rag_rewriter:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0
|
||||
max_tokens: 300
|
||||
|
||||
rag_compressor:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0
|
||||
max_tokens: 1200
|
||||
|
||||
rag_generation:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0.1
|
||||
max_tokens: 1800
|
||||
|
||||
# Memory / operations
|
||||
summary_memory:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0.1
|
||||
max_tokens: 1200
|
||||
|
||||
noc:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0
|
||||
max_tokens: 700
|
||||
|
||||
# Agent-specific overrides
|
||||
billing_agent:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0.2
|
||||
|
||||
product_agent:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0.2
|
||||
|
||||
backoffice_agent:
|
||||
provider: oci_openai
|
||||
model: openai.gpt-4.1
|
||||
temperature: 0.2
|
||||
67
libs/agent_framework/config/mcp_parameter_mapping.yaml
Normal file
67
libs/agent_framework/config/mcp_parameter_mapping.yaml
Normal file
@@ -0,0 +1,67 @@
|
||||
mcp_parameter_mapping:
|
||||
defaults:
|
||||
use_mock: false
|
||||
tools:
|
||||
consultar_fatura:
|
||||
map:
|
||||
customer_key: msisdn
|
||||
contract_key: invoice_id
|
||||
interaction_key: ura_call_id
|
||||
session_key: session_id
|
||||
|
||||
extract:
|
||||
parametro_externo:
|
||||
from: message
|
||||
type: string
|
||||
strategy: llm
|
||||
description: >
|
||||
Extraia da mensagem do usuário o valor necessário para o parâmetro
|
||||
parametro_externo. Retorne null quando a informação não estiver
|
||||
presente no texto.
|
||||
|
||||
consultar_pagamentos:
|
||||
map:
|
||||
customer_key: msisdn
|
||||
interaction_key: ura_call_id
|
||||
session_key: session_id
|
||||
consultar_plano:
|
||||
map:
|
||||
customer_key: msisdn
|
||||
resource_key: asset_id
|
||||
contract_key: asset_id
|
||||
session_key: session_id
|
||||
listar_servicos:
|
||||
map:
|
||||
customer_key: msisdn
|
||||
session_key: session_id
|
||||
consultar_pedido:
|
||||
map:
|
||||
customer_key: customer_id
|
||||
contract_key: order_id
|
||||
session_key: session_id
|
||||
consultar_entrega:
|
||||
map:
|
||||
contract_key: order_id
|
||||
session_key: session_id
|
||||
solicitar_troca:
|
||||
map:
|
||||
contract_key: order_id
|
||||
session_key: session_id
|
||||
defaults:
|
||||
reason: Solicitação aberta pelo atendimento conversacional.
|
||||
solicitar_devolucao:
|
||||
map:
|
||||
contract_key: order_id
|
||||
session_key: session_id
|
||||
defaults:
|
||||
reason: Solicitação aberta pelo atendimento conversacional.
|
||||
consultar_titulo_financeiro:
|
||||
map:
|
||||
customer_key: customer_id
|
||||
contract_key: contract_id
|
||||
interaction_key: interaction_id
|
||||
session_key: session_id
|
||||
consultar_pagamentos_financeiro:
|
||||
map:
|
||||
customer_key: customer_id
|
||||
session_key: session_id
|
||||
@@ -0,0 +1,67 @@
|
||||
mcp_parameter_mapping:
|
||||
defaults:
|
||||
use_mock: false
|
||||
tools:
|
||||
consultar_fatura:
|
||||
map:
|
||||
customer_key: msisdn
|
||||
contract_key: invoice_id
|
||||
interaction_key: ura_call_id
|
||||
session_key: session_id
|
||||
|
||||
extract:
|
||||
parametro_externo:
|
||||
from: message
|
||||
type: string
|
||||
strategy: llm
|
||||
description: >
|
||||
Extraia da mensagem do usuário o valor necessário para o parâmetro
|
||||
parametro_externo. Retorne null quando a informação não estiver
|
||||
presente no texto.
|
||||
|
||||
consultar_pagamentos:
|
||||
map:
|
||||
customer_key: msisdn
|
||||
interaction_key: ura_call_id
|
||||
session_key: session_id
|
||||
consultar_plano:
|
||||
map:
|
||||
customer_key: msisdn
|
||||
resource_key: asset_id
|
||||
contract_key: asset_id
|
||||
session_key: session_id
|
||||
listar_servicos:
|
||||
map:
|
||||
customer_key: msisdn
|
||||
session_key: session_id
|
||||
consultar_pedido:
|
||||
map:
|
||||
customer_key: customer_id
|
||||
contract_key: order_id
|
||||
session_key: session_id
|
||||
consultar_entrega:
|
||||
map:
|
||||
contract_key: order_id
|
||||
session_key: session_id
|
||||
solicitar_troca:
|
||||
map:
|
||||
contract_key: order_id
|
||||
session_key: session_id
|
||||
defaults:
|
||||
reason: Solicitação aberta pelo atendimento conversacional.
|
||||
solicitar_devolucao:
|
||||
map:
|
||||
contract_key: order_id
|
||||
session_key: session_id
|
||||
defaults:
|
||||
reason: Solicitação aberta pelo atendimento conversacional.
|
||||
consultar_titulo_financeiro:
|
||||
map:
|
||||
customer_key: customer_id
|
||||
contract_key: contract_id
|
||||
interaction_key: interaction_id
|
||||
session_key: session_id
|
||||
consultar_pagamentos_financeiro:
|
||||
map:
|
||||
customer_key: customer_id
|
||||
session_key: session_id
|
||||
30
libs/agent_framework/config/mcp_servers.yaml
Normal file
30
libs/agent_framework/config/mcp_servers.yaml
Normal file
@@ -0,0 +1,30 @@
|
||||
# MCP servers registry.
|
||||
# transport=http keeps the legacy framework mock contract:
|
||||
# GET <endpoint>/tools/list
|
||||
# POST <endpoint>/tools/call
|
||||
# transport=fastmcp uses official MCP Streamable HTTP, typically endpoint http://host:port/mcp
|
||||
# transport=sse uses official MCP SSE, typically endpoint http://host:port/sse
|
||||
servers:
|
||||
# telecom:
|
||||
# enabled: true
|
||||
# transport: fastmcp
|
||||
# endpoint: http://localhost:8001/mcp
|
||||
# description: Telecom FastMCP server using official MCP protocol
|
||||
#
|
||||
# retail:
|
||||
# enabled: true
|
||||
# transport: fastmcp
|
||||
# endpoint: http://localhost:8002/mcp
|
||||
# description: Retail FastMCP server using official MCP protocol
|
||||
|
||||
telecom:
|
||||
enabled: true
|
||||
transport: http
|
||||
endpoint: http://localhost:8100/mcp
|
||||
description: Telecom legacy HTTP mock MCP server
|
||||
|
||||
retail:
|
||||
enabled: true
|
||||
transport: http
|
||||
endpoint: http://localhost:8200/mcp
|
||||
description: Retail legacy HTTP mock MCP server
|
||||
90
libs/agent_framework/config/tools.yaml
Normal file
90
libs/agent_framework/config/tools.yaml
Normal file
@@ -0,0 +1,90 @@
|
||||
tools:
|
||||
consultar_fatura:
|
||||
description: Consulta dados resumidos de fatura por msisdn/invoice_id.
|
||||
mcp_server: telecom
|
||||
enabled: true
|
||||
cache:
|
||||
enabled: true
|
||||
ttl_seconds: 600
|
||||
args_schema:
|
||||
msisdn: string
|
||||
invoice_id: string
|
||||
|
||||
consultar_pagamentos:
|
||||
description: Consulta histórico de pagamentos do cliente.
|
||||
mcp_server: telecom
|
||||
enabled: true
|
||||
cache:
|
||||
enabled: true
|
||||
ttl_seconds: 300
|
||||
args_schema:
|
||||
msisdn: string
|
||||
|
||||
consultar_plano:
|
||||
description: Consulta plano ativo e atributos comerciais.
|
||||
mcp_server: telecom
|
||||
enabled: true
|
||||
cache:
|
||||
enabled: true
|
||||
ttl_seconds: 300
|
||||
args_schema:
|
||||
msisdn: string
|
||||
asset_id: string
|
||||
|
||||
listar_servicos:
|
||||
description: Lista serviços ativos e adicionais VAS.
|
||||
mcp_server: telecom
|
||||
enabled: true
|
||||
cache:
|
||||
enabled: true
|
||||
ttl_seconds: 300
|
||||
args_schema:
|
||||
msisdn: string
|
||||
|
||||
consultar_pedido:
|
||||
description: Consulta pedido de varejo por order_id/customer_id.
|
||||
mcp_server: retail
|
||||
enabled: true
|
||||
cache:
|
||||
enabled: true
|
||||
ttl_seconds: 300
|
||||
args_schema:
|
||||
order_id: string
|
||||
customer_id: string
|
||||
|
||||
consultar_entrega:
|
||||
description: Consulta entrega e rastreamento do pedido.
|
||||
mcp_server: retail
|
||||
enabled: true
|
||||
cache:
|
||||
enabled: true
|
||||
ttl_seconds: 300
|
||||
args_schema:
|
||||
order_id: string
|
||||
|
||||
solicitar_troca:
|
||||
description: Simula abertura de solicitação de troca.
|
||||
mcp_server: retail
|
||||
enabled: true
|
||||
tool_type: action
|
||||
requires: [order_id, reason]
|
||||
confirmation_required: false
|
||||
cache:
|
||||
enabled: false
|
||||
args_schema:
|
||||
order_id: string
|
||||
reason: string
|
||||
|
||||
solicitar_devolucao:
|
||||
description: Simula abertura de solicitação de devolução.
|
||||
mcp_server: retail
|
||||
enabled: true
|
||||
tool_type: action
|
||||
requires: [order_id, reason]
|
||||
confirmation_required: false
|
||||
cache:
|
||||
enabled: false
|
||||
args_schema:
|
||||
order_id: string
|
||||
reason: string
|
||||
|
||||
Reference in New Issue
Block a user