使用Docker快速搭建OpenAI兼容的Embeddings与Rerank双API服务

news2025/3/19 2:55:58

使用Docker快速搭建OpenAI兼容的Embeddings与Rerank双API服务

    • 前言
    • 环境准备
      • 硬件要求
      • 软件依赖
    • 双服务部署指南
      • 1. Embeddings API部署
        • 启动容器
        • 参数说明
      • 2. Rerank API部署
        • 启动容器
    • 服务验证与测试
      • 通用验证方法
      • 1. Embeddings API测试
        • 请求示例
        • 响应特征
      • 2. Rerank API测试
        • 请求示例
        • 响应解析
    • 双API联合工作流
      • 典型应用场景
      • 联合调用示例
    • 性能优化建议
    • 常见问题解答
    • 总结

前言

在构建智能搜索、推荐系统等AI应用时,**文本向量化(Embeddings)结果重排序(Reranking)**是两个关键环节。本文将手把手教您通过Docker快速部署两大核心服务:

  1. Embeddings API:基于multilingual-e5-large-instruct模型的文本向量生成服务
  2. Rerank API:采用bce-reranker-base_v1模型的语义相关性排序服务

二者配合使用可构建完整的语义检索流水线,先通过向量搜索召回候选集,再通过语义重排序提升结果精度。


环境准备

硬件要求

  • 推荐配置:16GB内存 + NVIDIA GPU(支持CUDA)
  • 最低配置:8GB内存(仅CPU模式)

软件依赖

  • Docker 20.10+
  • NVIDIA Container Toolkit(GPU版需要)
  • 端口可用性:7965(Embeddings)、7987(Rerank)

双服务部署指南

1. Embeddings API部署

启动容器
docker run -d --name embeddings-api \
  -p 7965:7965 \
  --gpus all \
  engchina/embeddings-api:multilingual-e5-large-instruct
参数说明
参数 作用
--gpus all 启用GPU加速(CPU模式可删除)
-p 7965:7965 服务暴露端口

2. Rerank API部署

启动容器
docker run -d --name rerank-api \
  -p 7987:7987 \
  engchina/rerank-api:bce-reranker-base_v1

服务验证与测试

通用验证方法

访问API文档页面(服务启动约1分钟后生效):

  • Embeddings API文档:http://localhost:7965/docs
  • Rerank API文档:http://localhost:7987/docs

1. Embeddings API测试

请求示例
curl -X POST "http://localhost:7965/v1/embeddings" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "text-embedding-3-large",
    "input": "OpenAI API兼容测试",
    "encoding_format": "float"
  }'
响应特征
{
   
  "data": [
    {
   
      "embedding": [0.017, -0.032, ..., 0.021], // 1024维向量
      "index": 0,
      "object": "embedding"
    }
  ],
  "model": "text-embedding-3-large",
  "usage": {
   
    "prompt_tokens": 5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2317534.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Python+MySQL编写的(WinForm)图书管理系统

一、项目需求分析 1.1 项目介绍 项目背景 图书馆管理系统是一些单位不可缺少的部分,书籍是人类不可缺少的精神食粮,尤其对于学校来说,尤其重要。所以图书馆管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管…

[贪心算法] 摆动序列

1.解析 这里我们的贪心体现在,这里我们只需要找到每一个拐点位置的数字即可, 证明: 当我们在A点时,我们下一步的选择有四种 A到D这个线段内的数字(不包括D)选择D点D到F的点F之后的点 对于A到D来说&#xf…

WPF未来展望:紧跟技术发展趋势,探索新的可能性

WPF未来展望:紧跟技术发展趋势,探索新的可能性 一、前言二、WPF 与.NET 技术的融合发展2.1 拥抱.NET Core2.2 利用.NET 5 及后续版本的新特性 三、WPF 在新兴技术领域的应用拓展3.1 与云计算的结合3.2 融入物联网生态 四、WPF 在用户体验和设计方面的创新…

低空经济腾飞:无人机送货、空中通勤,未来已来

近年来,低空经济逐渐成为社会关注的焦点。从无人机送货到“空中的士”,再到飞行培训的火热进行,低空经济正迎来前所未有的发展机遇。随着技术进步和政策支持,这一曾经看似遥远的未来场景,正逐步变为现实。 低空经济如何…

QT编译器mingw与msvc区别及环境配置

一.QT编译器mingw与msvc主要区别 二.QT开发环境配置 1. MinGW 配置 安装步骤: 通过 Qt 官方安装器 安装时勾选 MinGW 组件(如 Qt 6.7.0 MinGW 64-bit)。 确保系统环境变量包含 MinGW 的 bin 目录(如 C:\Qt\Tools\mingw1120_64…

【css酷炫效果】纯CSS实现进度条加载动画

【css酷炫效果】纯CSS实现进度条加载动画 缘创作背景html结构css样式完整代码基础版进阶版 效果图 通过CSS渐变与背景位移动画,无需JavaScript即可创建流体动态进度条。 想直接拿走的老板,链接放在这里:https://download.csdn.net/download/u…

Feedback-Guided Autonomous Driving

Feedback-Guided Autonomous Driving idea 问题设定:基于 CARLA 的目标驱动导航任务,通过知识蒸馏,利用特权智能体的丰富监督信息训练学生传感器运动策略函数 基于 LLM 的端到端驱动模型:采用 LLaVA 架构并添加航点预测头&#…

图解AUTOSAR_CP_WatchdogDriver

AUTOSAR WatchdogDriver模块详解 AUTOSAR MCAL层看门狗驱动模块详细解析 目录 1. 模块概述2. 架构位置 2.1. 组件架构 3. 主要功能4. API接口5. 配置参数 5.1. 配置模型 6. 错误代码7. 状态管理 7.1. 状态机 8. 处理流程 8.1. 活动流程 9. 操作序列 9.1. 典型操作序列 10. 硬件…

大数据学习(65)- Hue详解

🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一…

C语言学习笔记(第三部份)

说明:由于所有内容放在一个md文件中会非常卡顿,本文件将接续C_1.md文件的第三部分 整型存储和大小端 引例: int main(void) {// printf("%d\n", SnAdda(2, 5));// PrintDaffodilNum(10000);// PrintRhombus(3);int i 0;int arr[…

深入理解蒸馏、Function Call、React、Prompt 与 Agent

AI基础概念与实操 一、什么是蒸馏二、如何理解Function Call、React、Prompt与Agent(一)Function Call与Agent(二)Agent中的React概念(三)Prompt与Agent的关联 实操演练function callprompt 一、什么是蒸馏…

记录一个SQL自动执行的html页面

在实际工作场景中,需要运用到大量SQL语句更新业务逻辑,对程序员本身,写好的sql语句执行没有多大问题(图1),但是对于普通用户来说还是有操作难度的。因此我们需要构建一个HTML页面(图2&#xff0…

qt介绍图表 charts 一

qt chartsj基于Q的Graphics View框架,其核心组件是QChartView和QChart.QChartView是一个显示图表的独立部件,基类为QGraphicsView.QChar类管理图表的序列,图例和轴示意图。 绘制一个cos和sin曲线图,效果如下 实现代码 #include…

Transformer:GPT背后的造脑工程全解析(含手搓过程)

Transformer:GPT背后的"造脑工程"全解析(含手搓过程) Transformer 是人工智能领域的革命性架构,通过自注意力机制让模型像人类一样"全局理解"上下文关系。它摒弃传统循环结构,采用并行计算实现高…

S32K144入门笔记(十):TRGMUX的初始化

目录 1. 概述 2. 代码配置 1. 概述 书接上回,TRGMUX本质上是一个多路选择开关,根据用户手册中的描述,它可以实现多个输入的选择输出,本篇文章将验证如何通过配置工具来生成初始化配置代码。 2. 代码配置 笔者通过配置TRGMUX实现…

有了大模型为何还需要Agent智能体

一、什么是Agent? Agent(智能体) 是一种能感知环境、自主决策、执行动作的智能实体,当它与大语言模型(如通义千问QWen、GPT)结合时,形成一种**“增强型AI系统”**。其核心架构如下:…

DNS主从服务器

1.1环境准备 作用系统IP主机名web 服务器redhat9.5192.168.33.8webDNS 主服务器redhat9.5192.168.33.18dns1DNS 从服务器redhat9.5192.168.33.28dns2客户端redhat9.5192.168.33.7client 1.2修改主机名和IP地址 web服务器 [rootweb-8 ~]# hostnamectl hostname web [rootweb-8…

Flume详解——介绍、部署与使用

1. Flume 简介 Apache Flume 是一个专门用于高效地 收集、聚合、传输 大量日志数据的 分布式、可靠 的系统。它特别擅长将数据从各种数据源(如日志文件、消息队列等)传输到 HDFS、HBase、Kafka 等大数据存储系统。 特点: 可扩展&#xff1…

【Linux系列】文件压缩

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

微服务架构中10个常用的设计模式

​在当今的微服务架构中,常见的十种设计模式,分别是服务发现模式、API网关模式、断路器模式、边车模式、负载均衡模式、Saga事务模式、CQRS模式、分片模式、分布式日志跟踪模式、熔断与降级模式 。其中,服务发现模式十分关键,通过…