############################################################################### # AI AGENT PLATFORM - CONFIGURAÇÃO ÚNICA # Este arquivo é lido por Pydantic Settings no framework e no backend template. ############################################################################### APP_NAME=ai-agent-template APP_ENV=local LOG_LEVEL=INFO API_HOST=0.0.0.0 API_PORT=8000 CORS_ORIGINS=http://localhost:5173,http://127.0.0.1:5173 ############################################################################### # LLM - OCI Generative AI como provider principal ############################################################################### # Opções: mock, oci_openai, oci_sdk, openai_compatible LLM_PROVIDER=oci_openai LLM_TEMPERATURE=0.2 LLM_MAX_TOKENS=2048 LLM_TIMEOUT_SECONDS=120 # OCI OpenAI-compatible endpoint OCI_GENAI_BASE_URL=https://inference.generativeai.us-chicago-1.oci.oraclecloud.com/openai/v1 OCI_GENAI_MODEL=openai.gpt-4.1 OCI_GENAI_API_KEY=sk-ph3FgX6ph3FgX6ph3FgX6ph3FgX6ph3FgX6ph3FgX6 OCI_GENAI_PROJECT_OCID= # OCI_AUTH_MODE=config_file|instance_principal|resource_principal OCI_AUTH_MODE=config_file # OCI SDK / signer / profiles OCI_CONFIG_FILE=~/.oci/config OCI_PROFILE=DEFAULT OCI_COMPARTMENT_ID=ocid1.compartment.oc1..aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa OCI_REGION=us-chicago-1 ############################################################################### # Persistência ############################################################################### # Opções: memory, autonomous, mongodb SESSION_REPOSITORY_PROVIDER=autonomous MEMORY_REPOSITORY_PROVIDER=autonomous CHECKPOINT_REPOSITORY_PROVIDER=autonomous # Autonomous Database ADB_USER=admin ADB_PASSWORD=fjhsdf04954hf ADB_DSN=oradb23aidev_high ADB_WALLET_LOCATION=/ORACLE/DEFAULT/Wallet_ORADB23aiDev ADB_WALLET_PASSWORD=fjhsdf04954hf ADB_TABLE_PREFIX=AGENTFW # MongoDB - também pode representar Autonomous usando API compatível com Mongo, se habilitada no ambiente MONGODB_URI=mongodb://mongo:mongopassword@localhost:27017 MONGODB_DATABASE=agent_platform # Redis REDIS_URL=redis://localhost:6379/0 ENABLE_REDIS_CACHE=false ############################################################################### # RAG / Vector / Graph ############################################################################### VECTOR_STORE_PROVIDER=memory GRAPH_STORE_PROVIDER=memory RAG_TOP_K=5 EMBEDDING_PROVIDER=mock OCI_EMBEDDING_MODEL=cohere.embed-multilingual-v3.0 RAG_FILE_GLOBS=*.md,*.txt,*.yaml,*.yml,*.json ############################################################################### # Observabilidade ############################################################################### ENABLE_LANGFUSE=true LANGFUSE_PUBLIC_KEY=pk-lf-bd9b0c7e-2b8b-4e5b-a382-284a9b4413b3 LANGFUSE_SECRET_KEY=sk-lf-5f5cc18d-0bb5-424e-b5d0-cb3664d58c20 LANGFUSE_HOST=http://localhost:3005 ENABLE_OTEL=false OTEL_EXPORTER_OTLP_ENDPOINT= OTEL_SERVICE_NAME=ai-agent-template ENABLE_LANGFUSE_OPENAI_AUTO_INSTRUMENTATION=true ############################################################################### # Analytics / Observer corporativo ############################################################################### # Quando true, AgentObserver publica eventos IC.*, NOC.* e GRL.* nos providers abaixo. ENABLE_ANALYTICS=false # Providers aceitos: oci_streaming,pubsub,noop ANALYTICS_PROVIDERS=oci_streaming # Compatibilidade FIRST/TIM: pode informar AGENT_PUBSUB_TOPIC diretamente. AGENT_PUBSUB_TOPIC= GCP_PUBSUB_TOPIC_PATH= GCP_PROJECT_ID= GCP_PUBSUB_TOPIC= GCP_PUBSUB_TIMEOUT_SECONDS=30 # Credencial GCP segue padrão Google: # GOOGLE_APPLICATION_CREDENTIALS=/secrets/gcp-service-account.json ############################################################################### # OCI Streaming ############################################################################### ENABLE_OCI_STREAMING=false OCI_STREAM_ENDPOINT= OCI_STREAM_OCID= OCI_STREAM_PARTITION_KEY=agent-events ############################################################################### # Guardrails, Judges, Supervisor ############################################################################### ENABLE_INPUT_GUARDRAILS=true ENABLE_OUTPUT_GUARDRAILS=true ENABLE_JUDGES=true ENABLE_SUPERVISOR=true ENABLE_OUTPUT_SUPERVISOR=true ENABLE_PARALLEL_GUARDRAILS=true GUARDRAILS_FAIL_FAST=true OUTPUT_SUPERVISOR_MAX_RETRIES=3 GUARDRAILS_CONFIG_PATH=./config/guardrails.yaml JUDGES_CONFIG_PATH=./config/judges.yaml PROMPT_POLICY_PATH=./config/prompt_policy.yaml ############################################################################### # Gateway de canais ############################################################################### DEFAULT_CHANNEL=web # embedded = backend may parse simple/native channel payloads. # external = backend only accepts GatewayRequest normalized by an external Channel Gateway. FRAMEWORK_CHANNEL_INPUT_MODE=embedded ENABLE_VOICE_ADAPTER=true ENABLE_WHATSAPP_ADAPTER=true ENABLE_TEXT_ADAPTER=true ################################################# # ENTERPRISE ROUTING ################################################# # Arquivo YAML com intents, keywords, políticas de estado e fallback. ROUTING_CONFIG_PATH=./config/routing.yaml # true = usa LLM para classificar quando keywords/estado não resolverem. # Em produção, costuma ser útil; em desenvolvimento, false evita custo e latência. ENABLE_LLM_ROUTER=true ############################################################################### # MCP / Tools ############################################################################### ENABLE_MCP_TOOLS=true MCP_SERVERS_CONFIG_PATH=./config/mcp_servers.yaml TOOLS_CONFIG_PATH=./config/tools.yaml MCP_TOOL_TIMEOUT_SECONDS=30 # router = EnterpriseRouter seleciona um agente; supervisor = pode acionar múltiplos agentes ROUTING_MODE=router # Usage/cost accounting USAGE_REPOSITORY_PROVIDER=autonomous IDENTITY_CONFIG_PATH=./config/identity.yaml MCP_PARAMETER_MAPPING_PATH=./config/mcp_parameter_mapping.yaml # ----------------------------------------------------------------------------- # ConversationSummaryMemory / compressão de contexto conversacional # ----------------------------------------------------------------------------- ENABLE_CONVERSATION_SUMMARY_MEMORY=true MEMORY_CONTEXT_STRATEGY=summary MEMORY_HISTORY_LIMIT=80 MEMORY_RECENT_MESSAGES_LIMIT=8 MEMORY_SUMMARY_TRIGGER_MESSAGES=20 MEMORY_MAX_SUMMARY_CHARS=6000 MEMORY_SUMMARY_USE_LLM=true MEMORY_INJECT_RECENT_MESSAGES=true MEMORY_INJECT_SUMMARY=true ############################################################################### # MCP Gateway ############################################################################### # true = framework routes tool calls to the dedicated MCP Gateway. # false = framework calls MCP servers directly from mcp_servers.yaml. MCP_GATEWAY_ENABLED=true MCP_GATEWAY_URL=http://localhost:8300 MCP_GATEWAY_TIMEOUT_SECONDS=60 # MCP_GATEWAY_TOKEN= MCP_GATEWAY_AGENT_ID=telecom_contas MCP_GATEWAY_TENANT_ID=default