微立顶科技

新闻资讯

创新 服务 价值

  效果不错的开源Embedding:M3E-BASE

发布日期:2023/7/28 4:59:55      浏览量:

Moka Massive Mixed Embedding , 简称: M3E-BASE
重要的点:模型开源, 代码开源 , 调用方式(狗哥的测试代码)
模型:https://huggingface.co/moka-ai/m3e-base
项目源码:https://github.com/wangyuxinwhy/uniem
本地调用方式(python):


import numpy as np
from flask import Flask, jsonify, request
from sentence_transformers import SentenceTransformer
model = SentenceTransformer(’m3e-base’) 
app = Flask(__name__)
models = {
扫码加
查看更多
 #’text-embedding-ada-002’: EmbeddingModel() 原来这里一直用openai的ada,现在可
以用m3e替换
}
@app.route(’/v1/embeddings’, methods=[’POST’])
def embed_text():
 data = request.get_json()
 texts = data.get(’input’, [])
 #model_name = data.get(’model’, ’’)
 if not isinstance(texts, list):
 return jsonify({’error’: ’inputs must be a list’}), 400
 #if model_name not in models:
 # return jsonify({’error’: ’model not supported’}), 400
 #model = models[model_name]
#这里直接换车m3e-base
 result = {
 ’data’: [],
 ’model’: ’m3e-base’,
 ’object’: ’list’,
 ’usage’: {
 ’prompt_tokens’: 0,
 ’total_tokens’: 0
 }
 }
 embeddings = model.encode(texts)
 for i, embedding in enumerate(embeddings):
 normalized_embedding = embedding / np.linalg.norm(embedding)
 result[’data’].append({
 ’embedding’: normalized_embedding.tolist(), # Convert numpy array to
list
 ’index’: i,
 ’object’: ’embedding’
 })
 return jsonify(result)
# 结果就在result,你后边自己用哪个向量库,就用哪个,有兴趣的小伙伴可以考虑将这个向
量化流程整合到dify,这样大家都可以使用了。
if __name__ == ’__main__’:
 app.run(host=’0.0.0.0’, port=5000)


  业务实施流程

需求调研 →

团队组建和动员 →

数据初始化 →

调试完善 →

解决方案和选型 →

硬件网络部署 →

系统部署试运行 →

系统正式上线 →

合作协议

系统开发/整合

制作文档和员工培训

售后服务

马上咨询: 如果您有业务方面的问题或者需求,欢迎您咨询!我们带来的不仅仅是技术,还有行业经验积累。
QQ: 39764417/308460098     Phone: 13 9800 1 9844 / 135 6887 9550     联系人:石先生/雷先生