rwitz commited on
Commit
306e5e3
·
verified ·
1 Parent(s): 4aeb392

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -0
app.py ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from transformers import AutoTokenizer, AutoModel
3
+ import torch
4
+
5
+ # Load model and tokenizer
6
+ tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-Embedding-0.6B")
7
+ model = AutoModel.from_pretrained("Qwen/Qwen3-Embedding-0.6B")
8
+
9
+ def get_embedding(text):
10
+ if len(text) > 250:
11
+ return "❌ Error: Input exceeds 250 character limit."
12
+
13
+ inputs = tokenizer(text, return_tensors="pt", truncation=True)
14
+ with torch.no_grad():
15
+ outputs = model(**inputs)
16
+ # Use [CLS] token embedding (or mean pooling)
17
+ embedding = outputs.last_hidden_state[:, 0, :].squeeze().tolist()
18
+
19
+ # Show only first 10 dimensions for readability
20
+ return f"✅ Embedding (first 10 values): {embedding[:10]}..."
21
+
22
+ demo = gr.Interface(
23
+ fn=get_embedding,
24
+ inputs=gr.Textbox(label="Enter a sentence (max 250 characters)", max_lines=3, placeholder="Type your sentence here...", lines=2),
25
+ outputs="text",
26
+ title="Qwen3 Embedding Demo",
27
+ description="Generates sentence embeddings using Qwen/Qwen3-Embedding-0.6B. Input must be 250 characters or fewer."
28
+ )
29
+
30
+ if __name__ == "__main__":
31
+ demo.launch()