Spaces:
Sleeping
Sleeping
File size: 2,115 Bytes
6a3db50 14d687d bbe00e4 24e0354 e9a5f57 6a3db50 e9a5f57 6a3db50 e9a5f57 6a3db50 e9a5f57 6a3db50 e9a5f57 6a3db50 e9a5f57 6a3db50 75dd854 6a3db50 e9a5f57 6a3db50 e9a5f57 6a3db50 e9a5f57 6a3db50 c2e012d e9a5f57 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
import streamlit as st
import requests
from huggingface_hub import HfApi
import transformers
from transformers import AutoModelForSeq2SeqLM
# Define la funci贸n para procesar el documento con el prompt
def process_document(document, prompt, model_name):
# Carga el modelo
model = transformers.AutoModelForSeq2SeqLM.from_pretrained(model_name)
# Carga el tokenizer
tokenizer = transformers.AutoTokenizer.from_pretrained(model_name)
# Tokeniza el texto del documento y del prompt
input_ids = tokenizer.encode(document + prompt, return_tensors="pt")
# Genera la respuesta del modelo
response = model.generate(input_ids, max_length=512)
# Decodifica la respuesta en texto
model_response = tokenizer.decode(response[0], skip_special_tokens=True)
# Devuelve la respuesta del modelo
return model_response
# Crea la interfaz de usuario de Streamlit
st.title("Aplicaci贸n de Procesamiento de Documentos con Prompt")
# Campo de texto para el documento
document_input = st.text_area("Ingrese el documento:")
# Campo de texto para el prompt
prompt_input = st.text_area("Ingrese el prompt:")
# Selector de modelo
model_options = ["v2ray/Mixtral-8x22B-v0.1", "facebook/bart-large-cnn", ...]
selected_model = st.selectbox("Seleccione un modelo:", model_options)
# Bot贸n para procesar el documento
if st.button("Procesar"):
# Procesa el documento con el prompt y el modelo seleccionado
model_response = process_document(document_input, prompt_input, selected_model)
# Muestra la respuesta del modelo
st.write("**Respuesta del modelo:**")
st.write(model_response)
# Define la configuraci贸n de la aplicaci贸n
app_config = {
"title": "Aplicaci贸n de Procesamiento de Documentos con Prompt",
"description": "Esta aplicaci贸n permite ingresar un documento, un prompt y enviarlos a un modelo para obtener una respuesta.",
"keywords": ["procesamiento de lenguaje natural", "prompt", "modelo"],
"category": "apps",
}
# Despliega la aplicaci贸n en Hugging Face Spaces (descomentar para desplegar)
# push_to_hub(app=app, config=app_config)
|