#!/usr/bin/env python3 """ Module pour simuler un LLM lors des tests. """ from typing import Callable class LLMMock: """ Classe simulant un modèle LLM pour les tests. """ def __init__(self, response_generator: Callable[[str], str]): """ Initialise le modèle simulé avec un générateur de réponses. Args: response_generator: Fonction qui génère une réponse à partir d'un prompt """ self.response_generator = response_generator self.prompt_system = "" self.modele = "LLMMock" self.version = "1.0" self.dureeTraitement = "0s" def interroger(self, prompt: str) -> str: """ Simule l'interrogation d'un modèle LLM. Args: prompt: Prompt à envoyer au modèle Returns: Réponse simulée """ return self.response_generator(prompt) def interroger_avec_image(self, image_path: str, prompt: str) -> str: """ Simule l'interrogation d'un modèle LLM avec une image. Args: image_path: Chemin vers l'image prompt: Prompt à envoyer au modèle Returns: Réponse simulée """ return self.response_generator(f"[IMAGE: {image_path}]\n{prompt}") def configurer(self, **kwargs): """ Simule la configuration du modèle. Args: **kwargs: Paramètres de configuration """ for key, value in kwargs.items(): setattr(self, key, value) return self