aistore

GitHub
1.8k 246 中等 1 次阅读 今天MIT数据工具开发框架
AI 解读 由 AI 自动生成,仅供参考

AIStore 是一款专为人工智能应用打造的高性能分布式存储系统。它旨在解决 AI 工作负载中常见的大规模数据存取瓶颈,提供线性扩展能力与均衡的 I/O 分布,确保在节点数量增加时性能依然稳定可靠。无论是单机环境、虚拟机,还是从小型集群到超大规模裸金属架构,AIStore 都能灵活部署,甚至支持在无 Kubernetes 环境下运行。

该系统特别适合需要处理海量数据集的 AI 开发者、数据工程师及研究人员使用。其核心亮点在于能够原生统一管理本地与云端(如 AWS S3、GCS、Azure 等)数据,无需将任何一方仅视为缓存。AIStore 不仅兼容标准的 Amazon S3 接口,方便现有工具无缝接入,还具备独特的“分块对象”技术,支持高效并行读取与数据转换。此外,它内置了完善的多副本容错、自动修复机制以及基于负载的动态流控功能,在保障数据安全的同时,有效防止集群过载。通过集成 Prometheus 和 Grafana,用户还能轻松实现全方位的监控与运维,是构建弹性、高可用 AI 数据底座的理想选择。

使用场景

某自动驾驶研发团队需要在本地 GPU 集群与多个公有云存储之间,高效调度 PB 级图像数据以训练大规模感知模型。

没有 aistore 时

  • 数据孤岛严重:训练数据分散在 AWS S3、Azure 和本地磁盘,工程师需编写复杂脚本手动同步,经常因网络波动导致中断。
  • 训练频繁卡顿:直接读取云端数据时 I/O 延迟高且不稳定,GPU 经常因等待数据而闲置,算力利用率不足 60%。
  • 扩容维护困难:随着数据量激增,存储架构无法弹性伸缩,增加节点往往需要停机迁移数据,严重影响迭代进度。
  • 权限管理混乱:缺乏统一的访问控制,不同项目间数据隔离靠文件名约定,存在误删或泄露风险。

使用 aistore 后

  • 统一命名空间:aistore 将多云和本地存储聚合为单一视图,团队可直接通过标准 S3 API 透明访问所有数据,无需关心底层位置。
  • 极致 I/O 性能:利用 aistore 的分块对象技术和智能缓存,数据读取吞吐量线性增长,GPU 利用率稳定提升至 95% 以上。
  • 弹性无缝扩展:集群支持运行时动态增减节点,新服务器加入后自动平衡负载,无需停机即可应对数据量爆发。
  • 安全精细管控:基于 JWT 的认证机制实现了桶级权限隔离,确保各算法组只能访问授权数据,保障核心资产安全。

aistore 通过构建高性能、可弹性伸缩的统一存储层,彻底消除了 AI 训练中的数据供给瓶颈,让算力真正专注于模型迭代。

运行环境要求

操作系统
  • Linux
GPU

未说明

内存

未说明

依赖
notesAIStore 是一个用 Go 语言编写的分布式存储系统,而非单纯的 Python AI 库。它原生运行在 Linux 上(支持物理机、虚拟机或容器),官方文档明确指出先决条件本质上是“拥有磁盘的 Linux 机器”。虽然提供了 Python SDK 和 PyTorch 集成用于开发,但核心服务不依赖特定版本的 Python 或 GPU。生产环境推荐使用 Kubernetes 部署,也支持单机 Docker Compose 快速启动。
python未说明
Go (用于构建核心)
Kubernetes (生产环境可选)
Docker (容器化部署可选)
aistore hero image

快速开始

AIStore:面向 AI 工作负载的高性能、可扩展存储

许可证 版本 Go 报告卡

AIStore(AIS)是一个专为 AI 应用程序设计的轻量级分布式存储栈。它是一个具有弹性的集群,可以在运行时动态扩展和缩减,并且可以随时随地进行临时部署,无论是否使用 Kubernetes,从单台 Linux 服务器到任意规模的裸金属集群均可支持。AIS 从零开始构建,提供线性扩展能力、一致的性能以及灵活的部署模式。

AIS 是一个可靠的存储集群,能够原生处理集群内部数据和远程数据,而无需将任何一方视为缓存。

AIS 在任意数量的集群节点上均能持续展现出均衡的 I/O 分布和线性扩展性。该系统支持快速的数据访问、高可靠性,并为数据转换工作负载提供了丰富的自定义选项。

特性

  • 多云访问: 无缝访问和管理跨多个云后端的内容(包括 AWS S3、GCS、Azure 和 OCI),具备高速层性能、可配置的冗余机制以及命名空间感知的存储桶标识(不同账号、不同端点、不同提供商下的同名存储桶可以共存)。
  • 随处部署: AIS 可以在任何 Linux 机器上运行,无论是虚拟机还是物理机。部署方式多样,从最小化的容器化部署Google Colab,到 PB 级的Kubernetes 集群。对于部署规模或功能,没有任何内置限制
  • 高可用性: 冗余的控制平面和数据平面。具备自我修复能力、端到端保护、多路镜像和纠删码技术。支持任意数量的轻量级接入点(AIS 代理)。
  • 基于 HTTP 的 API: 功能丰富的原生 API(配备易用的 Go 和 Python SDK),并兼容Amazon S3 API,以便运行未经修改的 S3 客户端。
  • 监控: 提供全面的可观测性,集成 Prometheus 指标、Grafana 仪表盘、可配置详细级别的日志记录,以及基于 CLI 的性能跟踪工具,从而实现对集群的完全可见性和故障排查。详情请参阅AIStore 可观测性
  • 分块对象: 高性能的分块对象表示方式,支持独立检索的分块、元数据 v2 以及校验和保护的清单文件。支持重新分块、并行读取,以及与Get-Batchblob-downloader和向受支持云后端的分片上传功能的无缝集成。
  • JWT 身份验证与授权: 验证请求中的 JWT 令牌,通过静态密钥或动态 OIDC 发行者 JWKS 查找,实现集群和存储桶级别的访问控制。
  • 安全重定向: 支持使用 HMAC-SHA256 并结合带有版本号的集群密钥(通过 metasync 分发,仅存储在内存中)对重定向 URL 进行可配置的加密签名。
  • 负载感知限流: 基于多维度负载向量(CPU、内存、磁盘、文件描述符、goroutine)的动态请求限流机制,可在压力下保护 AIS 集群。
  • 统一命名空间: 可以将多个 AIS 集群连接在一起,为跨独立集群的数据集提供统一的访问入口,允许用户通过集群特定的标识符引用共享存储桶。
  • 开箱即用的缓存: 除了强大的数据保护功能外,AIS 还提供基于 LRU 的存储桶级可配置缓存,支持逐出阈值和存储容量水位线设置。
  • ETL 卸载: 可以在靠近数据的地方执行 I/O 密集型的数据转换操作,既可以采用内联方式(在每次读取请求过程中即时完成),也可以采用离线方式(批量处理,并将转换后的结果写入目标存储桶)。
  • Get-Batch: 可以通过一次调用检索多个对象和/或归档文件。专为 ML/AI 流程设计,Get-Batch能够在一次操作中获取整个训练批次,组装成一个 TAR 文件(或其他支持的序列化格式),其中包含所有请求的项目,并严格按照用户指定的顺序排列(论文)。
  • 数据一致性: 所有网关之间保证一致性,并在存在远程后端的情况下采用直写语义。
  • 序列化与分片: 原生且一流的 TAR、TGZ、TAR.LZ4 和 ZIP归档文件支持,适用于小文件数据集的高效存储和处理。特性包括与现有未修改的工作流程在所有 API 和子系统中的无缝集成。
  • Kubernetes: 在生产环境中,AIS 可以原生运行在 Kubernetes 上。专门的ais-k8s仓库包含 AIS K8s Operator、Ansible 剧本、Helm 图表以及部署指南。
  • 批处理作业: 提供超过 30 种集群范围内的批处理操作,您可以启动、监控和控制这些作业。当前列表包括:
$ ais show job --help

NAME:
    archive        blob-download  cleanup       copy-bucket    copy-objects      delete-objects
    download       dsort          ec-bucket     ec-get         ec-put            ec-resp
    elect-primary  etl-bucket     etl-inline    etl-objects    evict-objects     evict-remote-bucket
    get-batch      list           lru-eviction  mirror         prefetch-objects  promote-files
    put-copies     rebalance      rechunk       rename-bucket  resilver          summary
    warm-up-metadata

功能集仍在不断扩展,还包括:原生存储桶清单 (NBI)blob-downloaderAuthN - 身份验证与授权服务器;运行时对TLS 证书的管理;对运行时添加/移除节点的全面支持;自适应速率限制等。

如需了解原始的白皮书和设计理念,请参阅AIStore 概述,其中还包含高层次的框图、术语、API、CLI 等内容。 关于我们在 2024 年 KubeCon 大会上的演讲,请观看AIStore:跨云后端提升 PB 级深度学习性能

CLI

AIS 包含一个集成的、可脚本化的 CLI,用于管理集群、存储桶和对象,运行及监控批处理作业,查看和下载日志,生成性能报告等:

$ ais <TAB-TAB>

advanced         cluster          etl              ls               prefetch         search           tls
alias            config           evict            ml               put              show             wait
archive          cp               get              mpu              remote-cluster   space-cleanup
auth             create           help             nbi              rmb              start
blob-download    download         job              object           rmo              stop
bucket           dsort            log              performance      scrub            storage

开发者工具

AIS 原生运行于 Kubernetes 上,并采用开放格式——因此,您可以随时使用熟悉的 Linux tar(1)scp(1)rsync(1) 等工具将数据从 AIS 复制或迁移出去。

对于开发者和数据科学家而言,还提供以下工具:

快速入门

  1. 阅读入门指南,可在 5 分钟内完成本地安装;或
  2. 运行一个由单个网关和单个存储节点组成的最小化容器化 AIS 集群;或
  3. 克隆仓库并执行 make kill cli aisloader deploy,随后运行 ais show cluster

部署选项

AIS 的部署选项以及其预期用途(开发、生产或首次使用)均已在此处汇总

前提条件基本上就是拥有一台装有磁盘的 Linux 系统。部署选项范围从最小化容器化部署到任意规模的 PB 级裸金属集群,从单个虚拟机到多机架的高端服务器集群不等。当然,实际应用场景还需要进一步考量。

一些最受欢迎的部署选项包括:

选项 使用场景
本地试用环境 AIS 开发人员或首次使用者,适用于 Linux 或 Mac OS。运行 make kill cli aisloader deploy <<< $'N\nM',其中 N目标的数量,M网关的数量
最小化容器化部署 快速测试与评估;单节点设置
GCP/GKE 自动化安装 开发人员、首次使用者、AI 研究人员
大规模生产部署 需要 Kubernetes;通过 ais-k8s 提供

如需进行性能调优,请参阅性能文档以及AIS K8s Playbooks

现有数据集

AIS 支持多种数据摄取模式:

  • 按需访问: 在工作负载期间实现透明的云访问。
  • PUT: 本地可访问的文件和目录。
  • Promote: 导入本地目标目录和/或挂载在 AIS 目标上的 NFS/SMB 共享。
  • Copy: 整个存储桶、虚拟子目录(递归或非递归)、列表或范围(通过 Bash 扩展)。
  • Download: 可通过 HTTP(S) 访问的数据集和对象。
  • Prefetch: 远程存储桶或选定的对象(来自远程存储桶),包括子目录、列表和/或范围。
  • Archive: 将原始数据集中相关的较小文件分组并存储

从发布二进制文件安装

您可以通过以下命令安装 CLI 和基准测试工具:

./scripts/install_from_binaries.sh --help

该脚本会从最新的或之前的 GitHub 发布中安装 aisloaderCLI,并启用 CLI 自动补全功能。

PyTorch 集成

PyTorch 集成是一系列不断增长的数据集(包括可迭代式和映射式数据集)、采样器和数据加载器:

AIStore 徽章

让其他人知道您的项目由高性能 AI 存储提供支持:

aistore

[![aistore](https://img.shields.io/badge/powered%20by-AIStore-76B900?style=flat&labelColor=000000)](https://github.com/NVIDIA/aistore)

更多文档与指南

如何查找信息

  • 请参阅扩展索引
  • 使用 CLI 的 search 命令,例如:ais search copy
  • 克隆仓库并运行 git grep,例如:git grep -n out-of-band -- "*.md"

许可证

MIT

作者

Alex Aizman (NVIDIA)

版本历史

v1.4.42026/04/08
v1.4.32026/03/25
v1.4.22026/01/15
v1.4.12025/12/05
v1.4.02025/10/07
v1.3.312025/07/25
v1.3.302025/07/21
v1.3.292025/05/23
v1.3.282025/05/10
v1.3.272025/02/15
v1.3.262025/02/08
v1.3.252024/10/07
v1.3.242024/09/27
v1.3.232024/05/28
v1.3.222024/02/25
v1.3.212023/11/05
v1.3.202023/09/12
v1.3.192023/08/29
v1.3.182023/07/09
v1.3.172023/04/11

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|1周前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|1周前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

159.3k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|1周前
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|1周前
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|1周前
插件开发框架