Spaces:
Sleeping
Sleeping
Create app.py
Browse files
app.py
ADDED
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import gradio as gr
|
2 |
+
from transformers import pipeline
|
3 |
+
|
4 |
+
# Creamos un modelo de resumen
|
5 |
+
resumidor = pipeline("summarization", model="facebook/bart-large-cnn")
|
6 |
+
|
7 |
+
# Creamos un modelo de generaci贸n de di谩logo
|
8 |
+
dialogador = pipeline("text-generation", model="microsoft/DialoGPT-medium")
|
9 |
+
|
10 |
+
def transformar_texto(archivo):
|
11 |
+
# Leemos el contenido del archivo subido
|
12 |
+
texto = archivo.read().decode('utf-8')
|
13 |
+
|
14 |
+
# Limitaci贸n para la versi贸n gratuita
|
15 |
+
max_palabras = 1000 # Puedes ajustar este n煤mero
|
16 |
+
num_palabras = len(texto.split())
|
17 |
+
if num_palabras > max_palabras:
|
18 |
+
return f"El texto excede el l铆mite de {max_palabras} palabras para la versi贸n gratuita."
|
19 |
+
|
20 |
+
# Resumimos el texto
|
21 |
+
resumen = resumidor(texto, max_length=130, min_length=30, do_sample=False)[0]['summary_text']
|
22 |
+
|
23 |
+
# Generamos una conversaci贸n basada en el resumen
|
24 |
+
prompt = f"Crear una conversaci贸n entre dos personas sobre: {resumen}"
|
25 |
+
conversacion = dialogador(prompt, max_length=500)[0]['generated_text']
|
26 |
+
|
27 |
+
return conversacion
|
28 |
+
|
29 |
+
# Creamos la interfaz de usuario
|
30 |
+
interfaz = gr.Interface(
|
31 |
+
fn=transformar_texto,
|
32 |
+
inputs=gr.inputs.File(label="Sube tu documento de texto"),
|
33 |
+
outputs="text",
|
34 |
+
title="Transformador de Texto a Conversaci贸n",
|
35 |
+
description="Sube un documento de texto y convi茅rtelo en una conversaci贸n tipo podcast entre dos personas. Versi贸n gratuita con l铆mite de 1000 palabras."
|
36 |
+
)
|
37 |
+
|
38 |
+
interfaz.launch()
|