Files
FastGPT/docSite/content/docs/development/custom-models/m3e.md
Archer 51bbdf26a3 4.6.8-production (#822)
* Json completion (#16)

* json-completion

* fix duplicate

* fix

* fix: config json

* feat: query extension

* perf: i18n

* 468 doc

* json editor

* perf: doc

* perf: default extension model

* docker file

* doc

* perf: token count

* perf: search extension

* format

* perf: some constants data

---------

Co-authored-by: heheer <71265218+newfish-cmyk@users.noreply.github.com>
2024-02-05 00:51:46 +08:00

2.2 KiB
Raw Blame History

title, description, icon, draft, toc, weight
title description icon draft toc weight
接入 M3E 向量模型 将 FastGPT 接入私有化模型 M3E model_training false true 920

前言

FastGPT 默认使用了 openai 的 embedding 向量模型,如果你想私有部署的话,可以使用 M3E 向量模型进行替换。M3E 向量模型属于小模型资源使用不高CPU 也可以运行。下面教程是基于 “睡大觉” 同学提供的一个的镜像。

部署镜像

镜像名: stawky/m3e-large-api:latest
国内镜像: registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api:latest 端口号: 6008 环境变量:

# 设置安全凭证即oneapi中的渠道密钥
默认值sk-aaabbbcccdddeeefffggghhhiiijjjkkk
也可以通过环境变量引入sk-key。有关docker环境变量引入的方法请自寻教程此处不再赘述。

接入 One API

添加一个渠道,参数如下:

测试

curl 例子:

curl --location --request POST 'https://domain/v1/embeddings' \
--header 'Authorization: Bearer xxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
  "model": "m3e",
  "input": ["laf是什么"]
}'

Authorization 为 sk-key。model 为刚刚在 One API 填写的自定义模型。

接入 FastGPT

修改 config.json 配置文件,在 vectorModels 中加入 M3E 模型:

"vectorModels": [
    {
      "model": "text-embedding-ada-002",
      "name": "Embedding-2",
      "price": 0.2,
      "defaultToken": 500,
      "maxToken": 3000
    },
    {
      "model": "m3e",
      "name": "M3E测试使用",
      "price": 0.1,
      "defaultToken": 500,
      "maxToken": 1800
    }
]

测试使用

  1. 创建知识库时候选择 M3E 模型。

    注意,一旦选择后,知识库将无法修改向量模型。

  2. 导入数据

  3. 搜索测试

  4. 应用绑定知识库

    注意,应用只能绑定同一个向量模型的知识库,不能跨模型绑定。并且,需要注意调整相似度,不同向量模型的相似度(距离)会有所区别,需要自行测试实验。