infinity

让嵌入和重排序模型跑得更快更省,轻松支撑大规模检索

Infinity 是一个面向文本嵌入、重排序模型、CLIP、CLAP 和 ColPali 的高吞吐量、低延迟推理引擎。它解决了生产环境中部署 embedding 和 rerank 模型时常见的性能瓶颈问题,通过优化的批处理策略、模型并行和内核融合等技术,显著提升模型推理速度和资源利用率。核心能力包括支持多种主流嵌入与多模态模型、提供统一的推理接口、兼容 OpenAI 风格的 API,以及支持动态批处理和模型分片,帮助开发者轻松构建高可用的向量检索和重排序服务。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 2945
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队michaelfeil
所属国家
定价模式free
价格说明开源项目,MIT许可证,可免费自部署使用,无在线服务或付费版本。
访问状态
是否开源是
开源协议MIT
主要语言Python
技术栈/模型bert-embeddings,llm,text-embeddings
GitHub 星标★ 2945
30天Star增速
HF 下载量
上线时间2023-10-11 00:00:00
最近更新2026-09-23 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数3

使用教程

难度:入门 约 10 分钟 部署方式:Docker 7 步

环境要求

  • 可用的 Python 环境与虚拟环境(pip 方式安装需要)
  • Docker 方式需安装 nvidia-docker,并能用 --gpus all 挂载加速器
  • 需要能访问 HuggingFace 下载模型权重
  • ROCm 镜像需本机已正确安装 ROCm 并支持 Docker

安装与启动步骤

  1. 1安装 Infinity CLI

    在已激活的虚拟环境中用 pip 安装,[all] 会带上全部推理后端依赖。

    pip install infinity-emb[all]
  2. 2启动推理服务

    用 v2 子命令启动 REST API,--model-id 指定 HuggingFace 模型,可重复传入多个模型。

    infinity_emb v2 --model-id BAAI/bge-small-en-v1.5
  3. 3查看全部参数

    列出 v2 支持的所有命令行参数与说明,便于按需调整端口、引擎等配置。

    infinity_emb v2 --help
  4. 4Docker 启动(推荐)

    用官方镜像运行,需 --gpus all 挂载加速器,模型缓存挂载到容器内 /app/.cache。

    port=7997
    model1=michaelfeil/bge-small-en-v1.5
    model2=mixedbread-ai/mxbai-rerank-xsmall-v1
    volume=$PWD/data
    
    docker run -it --gpus all 
     -v $volume:/app/.cache 
     -p $port:$port 
     michaelf34/infinity:latest 
     v2 
     --model-id $model1 
     --model-id $model2 
     --port $port
  5. 5CPU 镜像启动

    没有 GPU 时改用 latest-cpu 镜像,README 建议优先使用 optimum 引擎。

    docker run -it 
      -v $volume:/app/.cache 
      -p $port:$port 
      michaelf34/infinity:latest-cpu 
      v2 
      --engine optimum 
      --model-id $model1 
      --model-id $model2 
      --port $port
  6. 6挂载本地模型

    把本地已有的模型目录挂载进容器,再在 --model-id 里传容器内的路径。

    git lfs install 
    cd /tmp
    mkdir models && cd models && git clone https://huggingface.co/BAAI/bge-small-en-v1.5
    docker run -it   -v /tmp/models:/models  -p 8081:8081  michaelf34/infinity:latest v2  --model-id "/models/bge-small-en-v1.5" --port 8081
  7. 7安装 Python 客户端

    需要在本地代码中调用远程 Infinity 实例时,安装官方生成的 RestAPI 客户端包。

    pip install infinity_client

关键配置

配置项必填说明示例
--model-id是指定部署的模型,可重复传入以同时部署多个模型BAAI/bge-small-en-v1.5
--port否REST API 监听端口7997
--engine否推理引擎,可选 torch / optimum / ctranslate2optimum
--api-key否为 API 设置访问密钥secret123
INFINITY_MODEL_ID否用环境变量指定模型,多个模型以分号分隔model/id1;model/id2;
INFINITY_ANONYMOUS_USAGE_STATS否设为 0 关闭匿名使用统计上报0

如何确认成功

CLI 启动无报错,并监听你设置的 --port 端口(示例 7997),容器日志正常输出即为成功。

常见问题

Q:没有 NVIDIA GPU 怎么部署?

A:改用 latest-cpu(或 x.x.x-cpu)镜像,README 建议优先搭配 --engine optimum 引擎运行。

Q:如何一次部署多个模型?

A:重复传 --model-id 即可,如 v2 --model-id a --model-id b;也可用 INFINITY_MODEL_ID="model/id1;model/id2;"。

Q:如何给 API 加访问密钥?

A:CLI 加 --api-key secret123,或设置环境变量 INFINITY_API_KEY="secret123"。

Q:怎么选择最快的引擎?

A:torch 需模型兼容 sentence-transformers/AutoModel;optimum 需有 onnx 文件(推荐 Xenova 模型);ctranslate2 仅支持 BERT。

Q:如何关闭遥测?

A:执行 export INFINITY_ANONYMOUS_USAGE_STATS="0" 即可关闭匿名使用统计。

注意事项

  • Docker 运行时务必挂载加速器(--gpus all);容器内缓存路径由环境变量 HF_HOME 控制,示例挂载到 /app/.cache。
  • latest-rocm 与 latest-trt-onnx 镜像未通过 CI/CD 构建、体积较大,建议固定到具体版本号使用。
  • LL 参数均有等价环境变量,格式为 INFINITY_{UPPER_CASE_SNAKE_CASE},多值用分号分隔。
  • 使用 --engine ctranslate2 时仅支持 BERT 类模型。

核心亮点

  • 采用先进批处理和内核优化,吞吐量比同类引擎提升数倍
  • 原生支持 CLIP、CLAP、ColPali 等多模态模型,覆盖文本、图像、音视频场景
  • 提供 OpenAI 兼容 API,迁移成本低,部署运维简单

不足之处

  • 文档和社区生态仍在成长,部分高级功能示例不足
  • 对非 NVIDIA GPU 的支持和优化有待完善

适用场景

  • 大规模向量检索系统的高性能 embedding 服务
  • RAG 应用中的文档重排序与多模态检索
  • 实时推荐和语义搜索场景下的低延迟推理

替代项目

TEI (Hugging Face Text Embeddings Inference)、ONNX Runtime、Triton Inference Server

项目介绍

infinity 是基础设施领域的开源项目,由 michaelfeil 开发,2023 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(2,945)位列前 30%,在基础设施分类中处于中上游。

近 42 天,它的 GitHub 星标从 2,911 增加到 2,945,净增 34。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-23。MIT许可证,可免费自部署使用,无在线服务或付费版本。

它主要面向的使用场景是:大规模向量检索系统的高性能embedding服务。同类可对比的替代方案包括 TEI (Hugging Face Text Embeddings Inference)、ONNX Runtime、Triton Inference Serve…。

上一篇:WindsurfAPI

下一篇:OM1

同类项目推荐

freebuff-proxy 开源

聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。

Multi-account OpenAI-compatible gateway for coding models. Pooled keys, session life···

★ 213 2026-08-20
microduck 开源

用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。

A Tiny biped duck robot

★ 8684 2026-09-10
soperator 开源

用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。

Run Slurm in Kubernetes

★ 439 2026-08-10
ollama 开源

一条命令本地跑起大模型,免费、私密、不卡顿

Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···

★ 181484 2026-08-09