import os import ollama from pdf2image import convert_from_path # Chemin du PDF script_dir = os.path.dirname(os.path.abspath(__file__)) pdf_path = os.path.join( script_dir, "..", "01 - Sources", "2025", "CNP Assurances-SFCR-Solo-2025.pdf" ) # Pages à traiter pages = [90] prompt = """Extrais uniquement les cellules contenant : - des codes de lignes (ex: R0010, R0020...) - des codes de colonnes (ex: C0010, C0020...) - des valeurs numériques (nombres, %, montants) Ignore complètement tout texte descriptif. Pour chaque cellule retourne : - R : numéro de ligne dans le tableau - C : numéro de colonne dans le tableau - value : contenu exact de la cellule Aucun commentaire, aucun texte supplémentaire. """ for page in pages: # Convertir une page PDF en image images = convert_from_path(pdf_path, first_page=page, last_page=page,dpi=80) image_path = f"page_{page}.png" images[0].save(image_path, "PNG") # Appel au modèle Ollama (Qwen-VL) response = ollama.chat( model="minicpm-v", messages=[ { "role": "user", "content": prompt, "images": [image_path] } ] ) print(f"Page {page} :") print(response["message"]["content"])