| import gradio as gr |
| from transformers import AutoModel, AutoTokenizer |
| import numpy as np |
|
|
| |
| model_name = "sentence-transformers/all-mpnet-base-v2" |
| model = AutoModel.from_pretrained(model_name) |
| tokenizer = AutoTokenizer.from_pretrained(model_name) |
|
|
| def text_to_vector(texts): |
| |
| inputs = tokenizer(texts, return_tensors="pt", padding=True, truncation=True) |
| outputs = model(**inputs) |
| vectors = outputs.pooler_output.detach().numpy() |
| |
| |
| vector_strings = [", ".join(map(str, vector)) for vector in vectors] |
| return vector_strings |
|
|
| demo = gr.Interface( |
| fn=text_to_vector, |
| inputs=gr.Textbox(label="Enter text", lines=4, placeholder="Enter one or more texts (separate with new lines)"), |
| outputs=gr.Textbox(label="Text Vectors", lines=10), |
| title="Batch Text to Vector", |
| description="This demo converts a batch of texts to vectors." |
| ) |
|
|
| demo.launch() |
|
|
|
|