25 lines
759 B
Python
25 lines
759 B
Python
|
|
"""Service IA — façade pour le moteur de décision."""
|
||
|
|
from backend.ai.engine.decision_engine import DecisionEngine, FullAdvice
|
||
|
|
from backend.ai.learning.feedback_processor import FeedbackProcessor
|
||
|
|
import structlog
|
||
|
|
|
||
|
|
log = structlog.get_logger()
|
||
|
|
|
||
|
|
|
||
|
|
class AIService:
|
||
|
|
def __init__(self, settings):
|
||
|
|
self.settings = settings
|
||
|
|
self.engine = DecisionEngine(settings)
|
||
|
|
self.feedback = FeedbackProcessor(settings)
|
||
|
|
|
||
|
|
async def initialize(self):
|
||
|
|
await self.engine.initialize()
|
||
|
|
log.info("ai_service.ready")
|
||
|
|
|
||
|
|
async def get_advice(self, state: dict) -> FullAdvice:
|
||
|
|
return await self.engine.get_advice(state)
|
||
|
|
|
||
|
|
async def shutdown(self):
|
||
|
|
await self.engine.shutdown()
|
||
|
|
log.info("ai_service.stopped")
|