Spaces:
Running
Running
File size: 993 Bytes
a7eec35 ee11ba5 a7eec35 c5e1777 a7eec35 2c2b0b3 5cc24e6 a7eec35 5cc24e6 a7eec35 da46074 |
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 |
from typing import List
import gradio as gr
import spaces
import numpy as np
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("nomic-ai/nomic-embed-text-v1.5", trust_remote_code=True)
def embed(document: str) -> List[float]:
"""
Embed text using the Nomic AI model, normalize the embedding, and return a 768-dimension vector.
Args:
document (str): The input text to embed.
Returns:
List[float]: The normalized embedding vector (length 768).
"""
embedding = model.encode(document)
normalized_embedding = embedding / np.linalg.norm(embedding)
return normalized_embedding.tolist()
with gr.Blocks() as app:
text_input = gr.Textbox(label="Enter text to embed")
output = gr.JSON(label="Normalized Text Embedding")
text_input.submit(embed, inputs=text_input, outputs=output)
if __name__ == '__main__':
app.queue().launch(server_name="0.0.0.0", show_error=True, server_port=7860, mcp_server=True) |