import transformers from transformers import GraphormerForGraphClassification from transformers.models.graphormer.collating_graphormer import preprocess_item import gradio as gr import json import torch import os try: import toml except ImportError: os.system('pip install toml') import toml model = GraphormerForGraphClassification.from_pretrained("PedroLancharesSanchez/graph-regression") def predict(instancia): with open(instancia, "r") as archivo: datos=json.load(archivo) instancia_preprocesada=preprocess_item(datos) inputs={} inputs['input_nodes'] = torch.tensor([instancia_preprocesada['input_nodes']]) inputs['input_edges'] = torch.tensor([instancia_preprocesada['input_edges']]) inputs['attn_bias'] = torch.tensor([instancia_preprocesada['attn_bias']]) inputs['in_degree'] = torch.tensor([instancia_preprocesada['in_degree']]) inputs['out_degree'] = torch.tensor([instancia_preprocesada['out_degree']]) inputs['spatial_pos'] = torch.tensor([instancia_preprocesada['spatial_pos']]) inputs['attn_edge_type'] = torch.tensor([instancia_preprocesada['attn_edge_type']]) print(inputs) with torch.no_grad(): logits = model(**inputs).logits return str(logits.item()) # Crear la interfaz Gradio interfaz = gr.Interface(fn=predict, inputs="file", outputs='text', examples=['grafo1.json','grafo2.json','grafo3.json']) interfaz.launch(share=False)