这是一个基于Flask的HTTP服务,用于将文本转换为稠密向量和稀疏向量。该服务使用BAAI/bge-m3模型进行向量化处理。
pip install -r requirements.txtpython main.py服务将在 http://localhost:5000 上运行。
- URL:
/encode - 方法: POST
- 请求体:
{ "texts": ["需要向量化的文本1", "需要向量化的文本2"], // 字符串数组,包含需要向量化的文本 "return_dense": true, // 可选,是否返回稠密向量,默认为true "return_sparse": true // 可选,是否返回稀疏向量,默认为true } - 响应:
{ "dense_embeddings": [ // 稠密向量数组(当return_dense=true时返回) [...], // 第一个文本的稠密向量 [...] // 第二个文本的稠密向量 ], "sparse_embeddings": [ // 稀疏向量数组(当return_sparse=true时返回) { // 第一个文本的稀疏向量 "raw": {"token_id": weight, ...}, // 原始token_id和权重 "readable": {"token": weight, ...} // 可读的token和权重 }, { // 第二个文本的稀疏向量 "raw": {"token_id": weight, ...}, "readable": {"token": weight, ...} } ], "model_info": { "name": "BAAI/bge-m3", "type": "hybrid_embedding" } }
- URL:
/health - 方法: GET
- 响应:
{ "status": "ok" }
- 确保已登录HuggingFace,以便能够下载和使用BAAI/bge-m3模型
- 对于Mac用户,已默认设置
use_fp16=False