refactor: replace SessionDep with explicit Annotated[Session, Depends(get_session)] across all routers

- Replace SessionDep type alias with explicit Annotated[Session, Depends(get_session)]
- Add missing imports for Session and Annotated types
- Update all endpoint function signatures to use explicit dependency annotation
- Apply changes consistently across all router files (admin, agent, marketplace, etc.)
- Add marketplace_gpu router to main.py router includes
This commit is contained in:
oib
2026-03-07 15:11:42 +01:00
parent a24e160b67
commit 93aae0edb3
61 changed files with 542 additions and 419 deletions

View File

@@ -1,3 +1,6 @@
from sqlalchemy.orm import Session
from typing import Annotated
from fastapi import Depends
"""
Adaptive Learning Systems - Phase 5.2
Reinforcement learning frameworks for agent self-improvement
@@ -11,7 +14,7 @@ from enum import Enum
import numpy as np
import json
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
from ..domain import AIAgentWorkflow, AgentExecution, AgentStatus
logger = get_logger(__name__)
@@ -387,7 +390,7 @@ class ReinforcementLearningAgent:
class AdaptiveLearningService:
"""Service for adaptive learning systems"""
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
self.session = session
self.learning_agents = {}
self.environments = {}

View File

@@ -1,12 +1,14 @@
from sqlalchemy.orm import Session
from typing import Annotated
"""
Adaptive Learning Service - FastAPI Entry Point
"""
from fastapi import FastAPI
from fastapi import FastAPI, Depends
from fastapi.middleware.cors import CORSMiddleware
from .adaptive_learning import AdaptiveLearningService, LearningAlgorithm, RewardType
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
from ..routers.adaptive_learning_health import router as health_router
app = FastAPI(
@@ -34,7 +36,7 @@ async def health():
async def create_learning_environment(
environment_id: str,
config: dict,
session: SessionDep = None
session: Annotated[Session, Depends(get_session)] = Depends() = None
):
"""Create safe learning environment"""
service = AdaptiveLearningService(session)
@@ -49,7 +51,7 @@ async def create_learning_agent(
agent_id: str,
algorithm: str,
config: dict,
session: SessionDep = None
session: Annotated[Session, Depends(get_session)] = Depends() = None
):
"""Create reinforcement learning agent"""
service = AdaptiveLearningService(session)
@@ -65,7 +67,7 @@ async def train_agent(
agent_id: str,
environment_id: str,
training_config: dict,
session: SessionDep = None
session: Annotated[Session, Depends(get_session)] = Depends() = None
):
"""Train agent in environment"""
service = AdaptiveLearningService(session)
@@ -79,7 +81,7 @@ async def train_agent(
@app.get("/agent-performance/{agent_id}")
async def get_agent_performance(
agent_id: str,
session: SessionDep = None
session: Annotated[Session, Depends(get_session)] = Depends() = None
):
"""Get agent performance metrics"""
service = AdaptiveLearningService(session)

View File

@@ -1,3 +1,5 @@
from sqlalchemy.orm import Session
from typing import Annotated
"""
Advanced AI Service - Phase 5.2 Implementation
Integrates enhanced RL, multi-modal fusion, and GPU optimization
@@ -7,7 +9,7 @@ Port: 8009
import asyncio
import torch
import torch.nn as nn
from fastapi import FastAPI, HTTPException, BackgroundTasks
from fastapi import FastAPI, HTTPException, BackgroundTasks, Depends
from fastapi.middleware.cors import CORSMiddleware
from pydantic import BaseModel, Field
from typing import Dict, List, Any, Optional, Union
@@ -21,7 +23,7 @@ from .advanced_reinforcement_learning import AdvancedReinforcementLearningEngine
from .multi_modal_fusion import MultiModalFusionEngine
from .gpu_multimodal import GPUAcceleratedMultiModal
from .advanced_learning import AdvancedLearningService
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
logger = get_logger(__name__)

View File

@@ -1,12 +1,15 @@
from sqlalchemy.orm import Session
from typing import Annotated
from fastapi import Depends
from typing import List, Optional
from sqlmodel import select
from ..domain.gpu_marketplace import ConsumerGPUProfile, GPUArchitecture, EdgeGPUMetrics
from ..data.consumer_gpu_profiles import CONSUMER_GPU_PROFILES
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
class EdgeGPUService:
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
self.session = session
def list_profiles(

View File

@@ -1,3 +1,6 @@
from sqlalchemy.orm import Session
from typing import Annotated
from fastapi import Depends
"""
GPU-Accelerated Multi-Modal Processing - Enhanced Implementation
Advanced GPU optimization for cross-modal attention mechanisms
@@ -14,7 +17,7 @@ import numpy as np
from datetime import datetime
import time
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
from .multimodal_agent import ModalityType, ProcessingMode
logger = get_logger(__name__)
@@ -286,7 +289,7 @@ class GPUAttentionOptimizer:
class GPUAcceleratedMultiModal:
"""GPU-accelerated multi-modal processing with enhanced CUDA optimization"""
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
self.session = session
self.device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
self._cuda_available = self._check_cuda_availability()

View File

@@ -1,12 +1,14 @@
from sqlalchemy.orm import Session
from typing import Annotated
"""
GPU Multi-Modal Service - FastAPI Entry Point
"""
from fastapi import FastAPI
from fastapi import FastAPI, Depends
from fastapi.middleware.cors import CORSMiddleware
from .gpu_multimodal import GPUAcceleratedMultiModal
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
from ..routers.gpu_multimodal_health import router as health_router
app = FastAPI(
@@ -34,7 +36,7 @@ async def health():
async def cross_modal_attention(
modality_features: dict,
attention_config: dict = None,
session: SessionDep = None
session: Annotated[Session, Depends(get_session)] = Depends() = None
):
"""GPU-accelerated cross-modal attention"""
service = GPUAcceleratedMultiModal(session)

View File

@@ -1,3 +1,6 @@
from fastapi import Depends
from sqlalchemy.orm import Session
from typing import Annotated
"""
Memory Manager Service for Agent Memory Operations
Handles memory lifecycle management, versioning, and optimization
@@ -12,7 +15,7 @@ from enum import Enum
import json
from .ipfs_storage_service import IPFSStorageService, MemoryMetadata, IPFSUploadResult
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
logger = get_logger(__name__)

View File

@@ -1,3 +1,6 @@
from sqlalchemy.orm import Session
from typing import Annotated
from fastapi import Depends
"""
Modality-Specific Optimization Strategies - Phase 5.1
Specialized optimization for text, image, audio, video, tabular, and graph data
@@ -10,7 +13,7 @@ from datetime import datetime
from enum import Enum
import numpy as np
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
from .multimodal_agent import ModalityType
logger = get_logger(__name__)
@@ -27,7 +30,7 @@ class OptimizationStrategy(str, Enum):
class ModalityOptimizer:
"""Base class for modality-specific optimizers"""
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
self.session = session
self._performance_history = {}
@@ -61,7 +64,7 @@ class ModalityOptimizer:
class TextOptimizer(ModalityOptimizer):
"""Text processing optimization strategies"""
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
super().__init__(session)
self._token_cache = {}
self._embedding_cache = {}
@@ -315,7 +318,7 @@ class TextOptimizer(ModalityOptimizer):
class ImageOptimizer(ModalityOptimizer):
"""Image processing optimization strategies"""
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
super().__init__(session)
self._feature_cache = {}
@@ -859,7 +862,7 @@ class VideoOptimizer(ModalityOptimizer):
class ModalityOptimizationManager:
"""Manager for all modality-specific optimizers"""
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
self.session = session
self._optimizers = {
ModalityType.TEXT: TextOptimizer(session),

View File

@@ -1,12 +1,14 @@
from sqlalchemy.orm import Session
from typing import Annotated
"""
Modality Optimization Service - FastAPI Entry Point
"""
from fastapi import FastAPI
from fastapi import FastAPI, Depends
from fastapi.middleware.cors import CORSMiddleware
from .modality_optimization import ModalityOptimizationManager, OptimizationStrategy, ModalityType
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
from ..routers.modality_optimization_health import router as health_router
app = FastAPI(
@@ -35,7 +37,7 @@ async def optimize_modality(
modality: str,
data: dict,
strategy: str = "balanced",
session: SessionDep = None
session: Annotated[Session, Depends(get_session)] = Depends() = None
):
"""Optimize specific modality"""
manager = ModalityOptimizationManager(session)
@@ -50,7 +52,7 @@ async def optimize_modality(
async def optimize_multimodal(
multimodal_data: dict,
strategy: str = "balanced",
session: SessionDep = None
session: Annotated[Session, Depends(get_session)] = Depends() = None
):
"""Optimize multiple modalities"""
manager = ModalityOptimizationManager(session)

View File

@@ -1,3 +1,6 @@
from sqlalchemy.orm import Session
from typing import Annotated
from fastapi import Depends
"""
Multi-Modal Agent Service - Phase 5.1
Advanced AI agent capabilities with unified multi-modal processing pipeline
@@ -10,7 +13,7 @@ from datetime import datetime
from enum import Enum
import json
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
from ..domain import AIAgentWorkflow, AgentExecution, AgentStatus
logger = get_logger(__name__)
@@ -37,7 +40,7 @@ class ProcessingMode(str, Enum):
class MultiModalAgentService:
"""Service for advanced multi-modal agent capabilities"""
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
self.session = session
self._modality_processors = {
ModalityType.TEXT: self._process_text,

View File

@@ -1,12 +1,14 @@
from sqlalchemy.orm import Session
from typing import Annotated
"""
Multi-Modal Agent Service - FastAPI Entry Point
"""
from fastapi import FastAPI
from fastapi import FastAPI, Depends
from fastapi.middleware.cors import CORSMiddleware
from .multimodal_agent import MultiModalAgentService
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
from ..routers.multimodal_health import router as health_router
app = FastAPI(
@@ -35,7 +37,7 @@ async def process_multimodal(
agent_id: str,
inputs: dict,
processing_mode: str = "fusion",
session: SessionDep = None
session: Annotated[Session, Depends(get_session)] = Depends() = None
):
"""Process multi-modal input"""
service = MultiModalAgentService(session)

View File

@@ -1,3 +1,6 @@
from sqlalchemy.orm import Session
from typing import Annotated
from fastapi import Depends
"""Payment service for job payments"""
from datetime import datetime, timedelta
@@ -13,7 +16,7 @@ from ..schemas import (
EscrowRelease,
RefundRequest
)
from ..storage import SessionDep
from ..storage import Annotated[Session, Depends(get_session)], get_session
logger = get_logger(__name__)
@@ -21,7 +24,7 @@ logger = get_logger(__name__)
class PaymentService:
"""Service for handling job payments"""
def __init__(self, session: SessionDep):
def __init__(self, session: Annotated[Session, Depends(get_session)] = Depends()):
self.session = session
self.wallet_base_url = "http://127.0.0.1:20000" # Wallet daemon URL
self.exchange_base_url = "http://127.0.0.1:23000" # Exchange API URL