Files
copilot-app/embeddings
2025-08-13 19:03:20 +08:00
..
2025-08-13 19:03:20 +08:00
2025-08-13 19:03:20 +08:00
2025-08-13 19:03:20 +08:00
2025-08-13 19:03:20 +08:00
2025-08-13 19:03:20 +08:00
2025-08-13 19:03:20 +08:00

本地 Embeddings 模型API服务

下载本地 Embedding模型 并转为 OpenAI 接口格式的 API 服务。

准备工作

  • Python 3.9+
  • 选择合适的模型文件 (根据效果自行测试), 程序支持自动提升维度或降级维度到指定维度(接口中传递的 dimensions 参数, 默认为512)
  • 下载模型文件,放置在 ./models 目录下, 国内下载可以去 魔搭社区, 速度不受影响

环境变量参数

  • sk-key: 服务的 API KEY,默认为 sk-aaabbbcccdddeeefffggghhhiiijjjkkk
  • auto-dim: 是否自动进行维度操作, 若为 true 则会自动提升或降级维度到512, 默认为 false
  • model-name: 模型目录名称, 默认为 bge-m3, 注意必须在models文件夹下有对应的模型文件夹

运行服务

pip install -r requirements.txt
python app.py
curl --location --request POST 'http://127.0.0.1:6008/v1/embeddings' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer sk-aaabbbcccdddeeefffggghhhiiijjjkkk' \
--data-raw '{
    "input": [
        "解析当前项目"
    ],
    "model": "text-embedding-3-small",
    "dimensions": 512
}'

Docker 运行

docker-compose.yml 文件放在任意目录下, 然后执行命令:

docker-compose up -d

镜像内已经将模型打包好了, 所以首次执行会比较慢, 如果需要更新或新增模型, 直接将新的模型文件放在 ./models 目录下, 更改环境变量 model-name 即可

然后重新启动服务即可:

docker-compose restart

# 如果未生效, 可以先停止再启动
docker-compose down

docker-compose up -d