Stage 1 & 2 refactor of AI engine

This commit is contained in:
alorig
2025-11-09 19:22:15 +05:00
parent 8cd036d8ce
commit 375473308d
18 changed files with 2396 additions and 76 deletions

View File

@@ -5,7 +5,7 @@ import logging
from typing import Dict, Any, Optional
from igny8_core.ai.base import BaseAIFunction
from igny8_core.ai.tracker import StepTracker, ProgressTracker, CostTracker
from igny8_core.ai.processor import AIProcessor
from igny8_core.ai.ai_core import AICore
logger = logging.getLogger(__name__)
@@ -61,7 +61,7 @@ class AIEngine:
self.tracker.update("PREP", 25, f"Data prepared: {data_count} items", meta=self.step_tracker.get_meta())
# Phase 3: AI_CALL - Provider API Call (25-70%)
processor = AIProcessor(account=self.account)
ai_core = AICore(account=self.account)
model = fn.get_model(self.account)
# Track AI call start
@@ -69,15 +69,13 @@ class AIEngine:
self.tracker.update("AI_CALL", 30, f"Sending to {model or 'default'}...", meta=self.step_tracker.get_meta())
try:
raw_response = processor.call(
prompt,
# Use centralized run_ai_request() with console logging
raw_response = ai_core.run_ai_request(
prompt=prompt,
model=model,
# Don't pass response_steps - the processor ignores it anyway
# Step tracking is handled by the engine
progress_callback=lambda state, meta: self.tracker.update_ai_progress(state, {
**meta,
**self.step_tracker.get_meta()
})
max_tokens=4000,
temperature=0.7,
function_name=fn.get_name()
)
except Exception as e:
error_msg = f"AI call failed: {str(e)}"