项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 2903
技术标签
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- Linux 系统(需安装 ca-certificates、build-essential、pkg-config、clang、cmake、libhwloc-dev
- macOS 需安装 Xcode 命令行工具与 cmake、pkg-config
- Windows 需先安装 WSL2 与 Ubuntu
- Rust 工具链(rustup)
- GPU 节点上需可用 vLLM 环境
安装与启动步骤
-
1安装系统依赖
Linux/WSL 下更新源并安装编译 openlake 所需的构建工具与库;macOS 用户改用 xcode-select 与 brew 安装。
sudo apt-get update sudo apt-get install -y --no-install-recommends ca-certificates build-essential pkg-config clang cmake libhwloc-dev libudev-dev curl git -
2安装 Rust 工具链
通过 rustup 安装 Rust 并加载 cargo 环境变量,之后才能编译或运行 Rust 版本的 openlake 组件。
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y && . "$HOME/.cargo/env" -
3安装 macOS 依赖
macOS 用户执行此行命令安装 Xcode 命令行工具及 cmake、pkg-config,Linux 用户可跳过此步。
xcode-select --install brew install cmake pkg-config -
4Windows 安装 WSL
Windows 用户需在管理员 PowerShell 中安装 WSL 与 Ubuntu 发行版,随后在 Ubuntu shell 内执行前述依赖与 Rust 安装命令。
wsl --install -d Ubuntu wsl -
5安装 vLLM 连接器
在 GPU 节点上安装 openlake-vllm 连接器,它提供与 vLLM 集成的 OpenLakeConnector 模块。
pip install openlake-vllm -
6启动 OpenLake 存储
运行 openlaked 启动本地存储服务;跨 GPU 集群场景需按节点用 --config 指定 kv_rdma 配置文件。
openlaked -
7用 vLLM 验证集成
设置 PYTHONHASHSEED 后启动 vLLM 服务,通过 kv-transfer-config 指定 OpenLake 连接器与节点地址。
export PYTHONHASHSEED=0 vllm serve <model_name> --kv-transfer-config '{"kv_connector":"OpenLakeConnector","kv_connector_module_path":"openlake_client.openlake_connector","kv_role":"kv_both","kv_connector_extra_config":{"openlake_nodes":["127.0.0.1:9400"],"openlake_device":"local"}}'
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
kv_connector | 是 | 指定 vLLM 使用的 KV 连接器实现类 | OpenLakeConnector |
kv_connector_module_path | 是 | 连接器所在 Python 模块路径 | openlake_client.openlake_connector |
kv_role | 是 | KV 缓存角色,kv_both 表示收发兼顾 | kv_both |
openlake_nodes | 是 | OpenLake 节点地址列表,格式为 IP:端口 | ["127.0.0.1:9400"] |
openlake_device | 是 | 本地存储或 RDMA 网卡设备名 | local |
--config | 否 | openlaked 启动参数,指定 kv_rdma 配置文件以启用跨主机 | kv_rdma_0.toml |
如何确认成功
openlaked 正常常驻无报错,vllm serve 启动后模型可正常推理,即说明 KV 池集成成功。
常见问题
Q:默认只在本机卸载 KV 缓存怎么办?
A:README 说明默认 offload 到同一主机;要跨 GPU 集群使用,需用 --config 启动 openlaked 并配置 kv_rdma.toml 各节点 self_id。
Q:多主机 GPU 集群如何配置?
A:每个 GPU 主机用对应 kv_rdma_N.toml 启动 openlaked(ids 从 0 递增),vLLM 侧把 openlake_nodes 配成各节点 IP:9400,openlake_device 填 RDMA 网卡如 mlx5_ib0。
Q:Kubernetes 环境怎么部署?
A:README 指向 charts/openlake/README.md 的 Helm KV 部署指南,可在选定节点各部署一个 OpenLake 实例并生成有序的 vLLM peer 配置。
Q:Windows 上能直接装吗?
A:README 给的是 WSL 方案:管理员 PowerShell 执行 wsl --install -d Ubuntu,再在 Ubuntu 内安装依赖和 Rust。
注意事项
- README 中 vllm serve 的 <model_name> 是占位符,需替换为实际模型名
- openlake_nodes 在跨主机场景要按 self_id 顺序填写各节点地址
- 启用 OpenLake 前需设置 PYTHONHASHSEED=0
- OpenLake 基于 Rust 与 io_uring 构建,建议在支持 io_uring 的 Linux 内核上运行
核心亮点
- 专为 AI 工作负载优化,数据加载速度远超通用存储
- Rust 实现,内存安全且性能卓越
- 与主流深度学习框架集成,降低迁移成本
不足之处
- 项目较新,生态和文档尚不完善
- 仅支持 Rust 语言,限制了部分用户
适用场景
- 大规模 LLM 训练时的数据预处理与加载
- 高并发 LLM 推理服务中的模型权重读取
- GPU 集群环境下的分布式训练数据共享
替代项目
TensorFlow IODATA、PyTorch DataLoader、Hugging Face Datasets
下一篇:datapizza-ai
同类项目推荐
rocketplaneIO
开源
让 AI 直接修复 K8s 故障,零插桩、可离线部署
Self-hosted AI SRE for Kubernetes — zero-instrumentation eBPF observability plus a ···
dagster-mflix-demo
开源
用 Dagster 跑通电影数据 ELT,快速上手现代数据栈
Sample ELT project using Dagster, data load tool and Snowflake
sglang-omni
开源
让语音和多模态模型服务快如闪电,吞吐翻倍
High Performance Serving Runtime For Interactive Super Intelligence System
OpenGPT
开源
免费封装 GPT API,几行代码接入智能对话
OpenGPT 3.5/4 is a project aimed at providing practical and user-friendly APIs. The ···
ODS
开源
一键将电脑变成全能 AI 服务器,本地运行 LLM、语音、图像与自动化。
ODS V3 Pre-Release: Public testing and refinement ahead of the official V3 launch. T···
lantern
开源
在 PostgreSQL 里直接跑向量搜索,不用额外部署向量数据库。
PostgreSQL vector database extension for building AI applications
C-SSH
开源
跨平台 SSH 运维,持久会话+AI 助手,免费开源
C-SSH 0.9.7 · Windows / macOS / Linux / Android · SSH, RDP, concurrent AI, server ···
fastembed-rs
开源
本地生成向量嵌入,让 Rust 应用秒变语义搜索高手
Rust library for generating vector embeddings and reranking locally!
project-maya
开源
本地跑 321B MoE 大模型,单卡到 16 卡,兼容 OpenAI 接口
Run GLM-5.3-Flash (321B), DeepSeek-V4.1-Flash (748B) and MiniMax-M3.1-Flash (428B) o···
