主要观点总结
本文介绍了关于SGLang和Infinity框架在embedding模型服务上的使用体验和问题反馈。首先描述了项目需求以及使用的模型,然后对比了两个框架的优缺点和使用难度。接着详细描述了采用SGLang框架进行embedding模型服务部署的过程和优点。同时提到了SGLang目前存在的问题和改进思路。
关键观点总结
关键观点1: 项目需求和使用模型
项目需要使用embedding进行简单的聚类算法,采用了sentence_transformers中的模型进行示例。
关键观点2: Infinity框架的缺点
作者尝试使用Infinity框架进行embedding模型服务部署,但遇到了显存管理不稳定和模型支持有限的问题。
关键观点3: SGLang框架的优点
相比Infinity框架,SGLang在latency和显存稳定性方面表现更好,支持更多的模型,并且可以复用已有的模型类。但也有一些缺点,如暂不支持batch embedding和某些模型的support有限。
关键观点4: 迁移gte模型到SGLang的思路和解决方法
介绍了迁移gte模型到SGLang的思路和步骤,包括找到模型的真实architecture和复用已有的模型类等。同时提出了解决architecture冲突的方法,即通过添加参数来区分不同的返回类型。
文章预览
作者丨Chayenne Zhao 来源丨https://zhuanlan.zhihu.com/p/715805386 编辑丨GiantPandaCV 书接上文,继续入坑 SGLang 项目: 需求描述 这段时间的项目需要利用 embedding 进行一些简单的聚类算法。作为一个长期把模型当做黑盒使用的前 NLP 小将,很显然我们可以通过如下的方式来获得字符串的 embedding: from sentence_transformers import SentenceTransformermodel = SentenceTransformer( "Alibaba-NLP/gte-Qwen2-7B-instruct" , trust_remote_code = True )documents = [ "As a general guideline, the CDC's average requirement of protein for women ages 19 to 70 is 46 grams per day. But, as you can see from this chart, you'll need to increase that if you're expecting or training for a marathon. Check out the chart below to see how much protein you should be eating each day." , "Definition of summit for English Language Learners. : 1 the highest point of a mountain : the top of a mountain. : 2 the highest l
………………………………