File size: 707 Bytes
1e732dd
 
 
 
 
 
 
 
 
 
696f787
1e732dd
 
 
 
 
 
9659593
 
 
 
 
 
696f787
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
"""
MediGuard AI — Agentic RAG Context

Runtime dependency injection dataclass — passed to every LangGraph node
so nodes can access services without globals.
"""

from __future__ import annotations

from dataclasses import dataclass
from typing import Any


@dataclass(frozen=True)
class AgenticContext:
    """Immutable runtime context for agentic RAG nodes."""

    llm: Any  # LangChain chat model
    embedding_service: Any  # EmbeddingService
    opensearch_client: Any  # OpenSearchClient
    cache: Any  # RedisCache
    tracer: Any  # LangfuseTracer
    guild: Any | None = None  # ClinicalInsightGuild (original workflow)
    retriever: Any | None = None  # BaseRetriever (FAISS or OpenSearch)