fastembed-rs

本地生成向量嵌入,让 Rust 应用秒变语义搜索高手

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 搜索知识 🍴 复刻 149 👀 关注 5
GitHub ↗
GitHub 星标 ★ 1051
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源库,本地部署,完全免费

项目预览

fastembed-rs 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类搜索知识
开发团队anush008
定价模式🏷️完全免费
价格说明开源库,本地部署,完全免费
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Rust
技术栈/模型embeddings,fastembed,rag,reranker,reranking,retrieval,retrieval-augmented-generation,vector-search
GitHub 星标★ 1051
上线时间2023-10-01 00:00:00
代码更新2026-11-09
仓库体积1.2 MB
本站数据更新2026-11-10
维护状态活跃
收录时间2026-08-09
浏览次数4

项目介绍

fastembed-rs 是一个用 Rust 实现的向量嵌入与重排序库,旨在本地生成高质量的文本嵌入向量,并支持本地重排序。它解决了在 Rust 生态中缺乏高性能、易用的嵌入生成工具的问题,让开发者无需依赖外部 API 即可在本地完成语义搜索、推荐系统等场景的向量化处理。核心能力包括:支持多种主流嵌入模型(如 BGE、E5 等),提供简洁的 API 接口,并针对 CPU 和 GPU 进行了性能优化。作为早期项目,它已获得近千星标,展现了社区对其价值的认可。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1051

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:入门 约 10 分钟 部署方式:库/依赖 4 步

环境要求

  • 已安装 Rust 工具链(可用 cargo 命令)
  • 一个现成的 Rust 项目目录(README 要求在项目目录中执行添加命令)
  • 可访问 crates.io 下载依赖(以及首次使用模型时访问 HuggingFace)

安装与启动步骤

  1. 1准备 Rust 项目

    README 说明安装命令需在「你的项目目录」中运行,请先进入已有的 Rust 项目根目录(含 Cargo.toml)。

  2. 2添加 fastembed

    在项目目录执行该命令,cargo 会自动把最新 5.x 版本写入 Cargo.toml 的依赖区。

    cargo add fastembed
  3. 3或手动改配置

    不想用 cargo add 时,可手动在 Cargo.toml 中加入这一行依赖,版本写 5。

  4. 4选择嵌入模型

    README 列出支持的模型,默认是 BAAI/bge-small-en-v1.5;中文场景可选 bge-small-zh-v1.5 等。

关键配置

配置项必填说明示例
fastembed是Cargo.toml 中声明 fastembed 依赖并指定大版本 5fastembed = "5"

如何确认成功

执行 cargo add fastembed 后,Cargo.toml 出现 fastembed 依赖(版本 5.x)即表示依赖安装成功。

常见问题

Q:一定要用 Rust 吗?有其他语言版本吗?

A:README 提到非 Rust 用户可用 Python 的 fastembed、Go 的 fastembed-go、JavaScript 的 fastembed-js,功能对应但仓库不同。

Q:需要异步运行时 Tokio 吗?

A:不需要。README 说明该库支持同步调用(synchronous usage),不依赖 Tokio。

Q:默认用哪个模型?

A:默认模型为 BAAI/bge-small-en-v1.5;README 还列出 bge-base/large、bge-m3、bge-small-zh、all-MiniLM 等可选模型。

Q:底层推理和分词分别用什么?

A:README 说明推理使用 @pykeio/ort 做 ONNX 加速,分词使用 @huggingface/tokenizers 做快速编码。

注意事项

  • README 只给出安装方式,未提供完整示例代码,具体 API 用法请查阅 crates.io 的 fastembed 文档页。
  • 模型权重需在使用时从 HuggingFace 获取,首次运行需保证网络可访问相关模型仓库。
  • 支持中英文模型,中文语义检索建议改用 BAAI/bge-small-zh-v1.5 或 BAAI/bge-large-zh-v1.5。

核心亮点

  • 纯 Rust 实现,无外部服务依赖,数据隐私安全
  • 支持 BGE、E5 等多种主流嵌入模型,灵活切换
  • 提供重排序功能,提升搜索相关性

不足之处

  • 项目尚处早期,API 可能不稳定
  • 模型覆盖范围不及 Python 生态丰富
  • 文档和示例相对较少,上手成本略高

适用场景

  • 本地语义搜索应用开发
  • Rust 后端服务中的文本向量化
  • 离线推荐系统特征提取

替代项目

text-embeddings-inference、sentence-transformers、fastembed (Python)

上一篇:MyScaleDB

下一篇:pdf_oxide

同类项目推荐

mlx-openai-server 开源

在 Mac 上跑起 OpenAI 兼容的本地模型服务,一行代码接入现有工具。

A high-performance API server that provides OpenAI-compatible endpoints for MLX mode···

★ 364 2026-08-09
sagemaker-python-sdk 开源

几行 Python 把模型训练部署到 AWS 云端

A library for training and deploying machine learning models on Amazon SageMaker

★ 2273 2026-10-12
pasteguard 开源

粘贴前自动脱敏,AI 干活不碰你的隐私数据

AI gets the context. Not your private data. Local-first privacy proxy for browser ch···

★ 822 2026-08-09
CPA_Orbit 开源

本地命令行统一管理 AI 账号与配额,实时监控价格

From K12 price radar to CPA proxy operations: a local-first console for offers, subs···

★ 68 2026-08-09
babylog 开源

生产环境轻量记录图像和预测,快速排查模型问题

A lightweight logger for machine learning teams to log images and predictions in pro···

★ 153 2026-08-09
simple-llm 开源

1300行Python手写LLM推理引擎,读懂并魔改每一步

~1300 line, minimal, extensible LLM inference engine built from scratch.

★ 493 2026-10-15
cc-statistics 开源

一个面板看穿所有AI编程工具的花费与效率

AI Coding stats dashboard — track costs, tokens, and efficiency across Claude Code ···

★ 117 2026-08-09
new-api 开源

一个网关接入所有大模型,协议随意转换,省心又省钱

Open-source AI gateway. Self-hosted LLM gateway with OpenAI-, Claude- and Gemini-com···

★ 51688 2026-08-09