import re class IntentParser: def parse(self, message: str): text = message.lower() intent = "unknown" count = 1 theme = text # ========================= # EXPLAIN # ========================= if "explique" in text or "expliquer" in text: intent = "explain" theme = text.replace("explique", "") theme = theme.replace("expliquer", "") theme = theme.strip() return { "intent": intent, "count": 1, "theme": theme } # ========================= # CREATE VIDEO # ========================= if "video" in text or "vidéo" in text: intent = "create_video" numbers = re.findall(r"\d+", text) if numbers: count = int(numbers[0]) elif "plusieurs" in text: count = 5 theme = re.sub( r"cree|crée|video|vidéo|\d+|sur|plusieurs", "", text ) theme = theme.strip() return { "intent": intent, "count": count, "theme": theme } return { "intent": intent, "count": count, "theme": theme }