PARA.AI / core /context_builder.py
Carlex22's picture
ParaAIV3.6
2b9d72c
##PARA.AI/core/context_builder.py
"""
Context Builder - Constr贸i contexto para context injection V13.6
"""
import logging
from typing import Dict, Any, Optional
logger = logging.getLogger(__name__)
class ContextBuilder:
"""Constr贸i contexto para cada especialista"""
def __init__(self):
self.context_rules = {
1: [],
2: ['secoes_originais'],
3: ['metadados'],
4: ['metadados', 'classificacao_tematica', 'secoes_originais'],
5: ['metadados', 'classificacao_tematica', 'secoes_originais'],
6: ['metadados', 'secoes_originais'],
7: ['metadados', 'classificacao_tematica', 'RELATORIO', 'FUNDAMENTACAO', 'DECISAO']
}
def build_context(
self,
current_result: Dict[str, Any],
specialist_id: int
) -> Optional[Dict[str, Any]]:
"""Constr贸i contexto para um especialista espec铆fico"""
if specialist_id not in self.context_rules:
return None
fields_needed = self.context_rules[specialist_id]
if not fields_needed:
return None
context = {}
for field in fields_needed:
if field in current_result:
context[field] = current_result[field]
return context if context else None
def add_context_rule(self, specialist_id: int, fields: list):
"""Adiciona/modifica regra de contexto"""
self.context_rules[specialist_id] = fields
def get_context_rules(self) -> Dict[int, list]:
"""Retorna todas as regras de contexto"""
return self.context_rules