Spaces:
Sleeping
Sleeping
| """ | |
| Hiền Concept — bge-m3 Embedding Service | |
| Lightweight HF Space: gradio + sentence-transformers only (~300MB) | |
| API: POST /api/predict → 1024-dim float list | |
| """ | |
| import gradio as gr | |
| from sentence_transformers import SentenceTransformer | |
| print("📥 Loading BAAI/bge-m3...") | |
| model = SentenceTransformer("BAAI/bge-m3") | |
| print("✅ bge-m3 ready!") | |
| def embed(text: str) -> list: | |
| """Embed text with bge-m3. Called by Vercel chatbot via Gradio API.""" | |
| if not text or not text.strip(): | |
| return [] | |
| vec = model.encode(text.strip(), normalize_embeddings=True) | |
| return vec.tolist() | |
| with gr.Blocks(title="Hiền Embed") as demo: | |
| gr.Markdown("# bge-m3 Embedding API\n1024-dim vectors — used by Hiền Concept chatbot") | |
| txt = gr.Textbox(label="Text", placeholder="chi phí là bao nhiêu?") | |
| btn = gr.Button("Embed") | |
| out = gr.JSON(label="Embedding (1024-dim)") | |
| btn.click(fn=embed, inputs=txt, outputs=out, api_name="embed") | |
| demo.launch() | |