File size: 1,741 Bytes
a8bb7b0 f85145e a8bb7b0 8e89b38 a8bb7b0 8e89b38 a8bb7b0 5bd9cf6 a8bb7b0 f85145e |
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 |
import spacy
import torch
import gradio as gr
from transformers import AutoModelForCausalLM, AutoTokenizer
nlp = spacy.load('es_core_news_sm')
models = {
"https://huggingface.co/OpenAssistant/oasst-sft-6-llama-30b-xor": AutoModelForCausalLM.from_pretrained("https://huggingface.co/OpenAssistant/oasst-sft-6-llama-30b-xor"),
}
tokenizers = {
"https://huggingface.co/OpenAssistant/oasst-sft-6-llama-30b-xor": AutoTokenizer.from_pretrained("https://huggingface.co/OpenAssistant/oasst-sft-6-llama-30b-xor"),
}
def generate(model_name: str):
model = models[model_name]
tokenizer = tokenizers[model_name]
# Encode input for the model
input_ids = tokenizer.encode('El', return_tensors='pt')
# Generate text
output = model.generate(input_ids, max_length=50, num_return_sequences=1, temperature=1.0)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
return generated_text
def process(sentence: str):
doc = nlp(sentence)
tagged_words = [(token.text, token.pos_) for token in doc]
return tagged_words
inputs_generate = gr.inputs.Dropdown(choices=list(models.keys()), label="Model")
outputs_generate = gr.outputs.Textbox(label="Generated Sentence")
inputs_process = gr.inputs.Textbox(label="Sentence")
outputs_process = gr.outputs.Textbox(label="Processed Sentence")
generate_interface = gr.Interface(fn=generate, inputs=inputs_generate, outputs=outputs_generate)
process_interface = gr.Interface(fn=process, inputs=inputs_process, outputs=outputs_process)
interface = gr.Interface(
fn=generate,
inputs=gr.inputs.Dropdown(choices=list(models.keys()), label="Model"),
outputs=gr.outputs.Textbox(label="Generated Sentence")
)
interface.launch(share=True)
|