注:当前项目为 Serverless Devs 应用,由于应用中会存在需要初始化才可运行的变量(例如应用部署地区、函数名等等),所以不推荐直接 Clone 本仓库到本地进行部署或直接复制 s.yaml 使用,强烈推荐通过
s init ${模版名称}
的方法或应用中心进行初始化,详情可参考部署 & 体验 。
使用serverless devs将 开源bge-m3, bge-reranker, bge-large-zh-1.5 等模型合并部署
使用该项目,您需要有开通以下服务并拥有对应权限:
服务/业务 | 权限 | 相关文档 |
---|---|---|
函数计算 | 创建函数 | 帮助文档 计费文档 |
- 🔥 通过 Serverless 应用中心 , 该应用。
- 通过 Serverless Devs Cli 进行部署:
- 安装 Serverless Devs Cli 开发者工具 ,并进行授权信息配置 ;
- 初始化项目:
s init fc-bge-collection -d fc-bge-collection
- 进入项目,并进行项目部署:
cd fc-bge-collection && s deploy -y
本应用实现将检索增强LLMS的基础模型
-
多种检索模式、多语言、多粒度检索的嵌入 BAAI/bge-m3
-
重新排序器 BAAI/bge-reranker-v2-m3
等部署到阿里云函数计算,并且提供了API的访问能力
部署成功之后我们访问域名进入 swagger Ui界面
访问 /compare_sentences 接口进行调试,该接口的参数如下:
{
"source": "string",
"compare_to": [
"string"
]
}
其中 source 是字符串类型,表示用来对照的问题, compare_to 是字符串的数组, 该问题相似的问题
比如输入的测试内容:
{
"source": "什么是函数计算",
"compare_to": [
"你好",
"函数计算是阿里云Serverless计算服务,提供专业的Serverless架构服务托管",
"今天天气怎么样",
"函数计算是什么",
"怎么用函数计算"
]
}
最终的答案如下:
{
"data": [
0.38152584433555603,
0.7851519584655762,
0.36474600434303284,
0.9892725944519043,
0.8413630723953247
],
"object": "list"
}
其中,data的结果展示了跟问题的近似值情况, 根据实际的表现也是符合预期
访问 /reank 接口进行调试,该接口的参数如下:
{
"query": "string",
"compare_to": [
"string"
]
}
其中 query 是字符串类型,表示查询语句, 取值一般是用户输入的问题, compare_to 是字符串的数组, 表示跟查询语句对照的相关答案, 取值一般是经过 向量检索或者全文检索之后的答案
比如输入的测试内容:
{
"query": "什么是函数计算",
"compare_to": [
"你好",
"函数计算是阿里云Serverless计算服务,提供专业的Serverless架构服务托管",
"今天天气怎么样"
]
}
最终的答案如下:
{
"data": [
0.0014783033167132958,
0.9987711227165861,
0.000016219460204138508
],
"object": "list"
}
其中,data的结果展示了这几个答案跟问题的近似度,可以看到第二个答案的值最高,符合预期
访问 /embedding 进行接口调试,该接口的参数如下:
{
"input": "string"
}
比如输入测试的内容
{
"input": "你好"
}
最终答案如下:
{
"data": [
{
"object": "embedding",
"embedding": [
0.011645832099020481,
...
],
"index": 0
}
],
"object": "list"
}
已经完成向量转化,符合预期
目前暂时不支持模型更换
您如果有关于错误的反馈或者未来的期待,您可以在 Serverless Devs repo Issues 中进行反馈和交流。如果您想要加入我们的讨论组或者了解 FC 组件的最新动态,您可以通过以下渠道进行:
微信公众号:serverless |
微信小助手:xiaojiangwh |
钉钉交流群:33947367 |