File size: 1,292 Bytes
02d44c3 |
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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
from llm_factory import get_llm
from langchain_core.prompts import PromptTemplate
import os
from dotenv import load_dotenv
load_dotenv()
def get_imaging_agent():
llm = get_llm(model_type="text", temperature=0.1)
template = """
Tu es un Radiologue Expert (IA).
TA MISSION :
Analyser la description d'une imagerie médicale (Radio, Scanner, IRM, Échographie) pour en extraire les anomalies significatives et suggérer une conclusion clinique.
DESCRIPTION DE L'IMAGERIE / COMPTE-RENDU :
{imaging_desc}
CONTEXTE CLINIQUE :
{clinical_context}
RÉPONSE ATTENDUE (En Français) :
1. 🔍 ANOMALIES DÉTECTÉES : [Liste à puces]
2. 🩺 INTERPRÉTATION CLINIQUE : [Ce que cela signifie pour le patient]
3. ⚠️ RECOMMANDATION : [Ex: Avis spécialisé, examen complémentaire, urgence]
"""
prompt = PromptTemplate(
input_variables=["imaging_desc", "clinical_context"],
template=template,
)
return prompt | llm
async def run_imaging_agent(imaging_desc: str, clinical_context: str) -> str:
agent = get_imaging_agent()
response = await agent.ainvoke({
"imaging_desc": imaging_desc,
"clinical_context": clinical_context
})
return response.content
|