Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| from transformers import AutoProcessor, LayoutLMForSequenceClassification | |
| from PIL import Image | |
| import torch | |
| # Charger le modèle et le processeur | |
| model_name = "impira/layoutlm-document-classifier" | |
| processor = AutoProcessor.from_pretrained(model_name) | |
| model = LayoutLMForSequenceClassification.from_pretrained(model_name) | |
| def classify_document(image): | |
| # Préparer l'image pour le modèle | |
| inputs = processor(images=image, return_tensors="pt") | |
| # Obtenir la prédiction | |
| with torch.no_grad(): | |
| logits = model(**inputs).logits | |
| # Convertir les logits en probabilités | |
| probabilities = torch.nn.functional.softmax(logits, dim=-1) | |
| predicted_class = torch.argmax(probabilities, dim=-1).item() | |
| # Retourner la classe prédite et les probabilités | |
| return f"Classe prédite : {model.config.id2label[predicted_class]}" | |
| # Interface Gradio | |
| interface = gr.Interface( | |
| fn=classify_document, | |
| inputs=gr.Image(type="pil", label="Téléchargez votre document"), | |
| outputs="text", | |
| title="Classification de Documents avec LayoutLM", | |
| description="Ce modèle classifie les documents en fonction de leur contenu et de leur mise en page." | |
| ) | |
| # Lancer l'application | |
| interface.launch() |