Spaces:
Sleeping
Sleeping
| from typing import Dict, Any | |
| from .integration_manager import AwarenessState, AwarenessLevel | |
| import numpy as np | |
| def create_awareness_state_from_dict(awareness_dict: Dict[str, Any]) -> AwarenessState: | |
| """ | |
| Create an AwarenessState object from a dictionary. | |
| Args: | |
| awareness_dict: Dictionary containing awareness state attributes | |
| Returns: | |
| AwarenessState object | |
| """ | |
| # Na integration_manager.py, os níveis disponíveis são: | |
| # UNCONSCIOUS, SUBCONSCIOUS, CONSCIOUS, SELF_AWARE, TRANSCENDENT | |
| # Extract level - lidando com diferentes formatos possíveis | |
| level_value = None | |
| if 'level' in awareness_dict: | |
| level = awareness_dict['level'] | |
| if isinstance(level, AwarenessLevel): | |
| level_value = level | |
| elif hasattr(level, 'value') and isinstance(level.value, int): | |
| # Para casos onde level é um enum de states.py | |
| # Mapeando baseado no valor ordinal | |
| ordinal = level.value | |
| if ordinal <= 1: | |
| level_value = AwarenessLevel.UNCONSCIOUS | |
| elif ordinal == 2: | |
| level_value = AwarenessLevel.SUBCONSCIOUS | |
| elif ordinal == 3: | |
| level_value = AwarenessLevel.CONSCIOUS | |
| elif ordinal == 4: | |
| level_value = AwarenessLevel.SELF_AWARE | |
| else: | |
| level_value = AwarenessLevel.TRANSCENDENT | |
| # Se não conseguimos determinar o nível, use o padrão | |
| if level_value is None: | |
| level_value = AwarenessLevel.UNCONSCIOUS | |
| # Mapeie cognitive_state para cognition_state se necessário | |
| cognition_state = awareness_dict.get('cognition_state', {}) | |
| if not cognition_state and 'cognitive_state' in awareness_dict: | |
| cognition_state = awareness_dict['cognitive_state'] | |
| # Mapeie perception_data se estiver faltando | |
| perception_data = awareness_dict.get('perception_data', {}) | |
| # Garanta que emotional_valence esteja presente | |
| emotional_valence = awareness_dict.get('emotional_valence', 0.0) | |
| # Crie o objeto AwarenessState | |
| return AwarenessState( | |
| level=level_value, | |
| perception_data=perception_data, | |
| cognition_state=cognition_state, | |
| emotional_valence=emotional_valence, | |
| semantic_context=awareness_dict.get('semantic_context'), | |
| temporal_awareness=awareness_dict.get('temporal_awareness') | |
| ) | |