Shashank-Tripathi-07/awesome-ml-systems-engineering

GitHub: Shashank-Tripathi-07/awesome-ml-systems-engineering

一个精选的机器学习系统工程资源列表,旨在帮助实践者构建、优化和运营ML系统。

Stars: 19 | Forks: 1

Awesome ML Systems Engineering # 精选机器学习系统工程资源 [![精选](https://awesome.re/badge.svg)](https://awesome.re) 机器学习系统工程处于机器学习与系统软件的交汇点。这份列表面向在任何规模上构建、优化和运营机器学习系统的实践者。仅包含经过亲自审查并认为必不可少的资源。 ⭐ = 必读 / 核心资源    🎓 = 学术论文或课程    🛠️ = 实用工具或框架 ## 目录 - [基础理论](#foundations) - [书籍](#books) - [课程](#courses) - [硬件与加速器](#hardware-and-accelerators) - [机器学习框架](#ml-frameworks) - [神经网络编译器](#neural-network-compilers) - [内核编程](#kernel-programming) - [分布式训练](#distributed-training) - [集合通信](#collective-communication) - [内存高效训练](#memory-efficient-training) - [推理与服务](#inference-and-serving) - [量化与压缩](#quantization-and-compression) - [RLHF基础设施](#rlhf-infrastructure) - [向量数据库与检索](#vector-databases-and-retrieval) - [LLM评估框架](#llm-evaluation-frameworks) - [LLM可观测性与追踪](#llm-observability-and-tracing) - [合成数据生成](#synthetic-data-generation) - [多模态系统](#multi-modal-systems) - [基准测试与性能分析](#benchmarking-and-profiling) - [数据工程](#data-engineering) - [MLOps与生产](#mlops-and-production) - [LLMOps平台](#llmops-platforms) - [部署策略](#deployment-strategies) - [容错与可靠性](#fault-tolerance-and-reliability) - [安全与隐私](#security-and-privacy) - [可持续人工智能](#sustainable-ai) - [网络与互联](#networking-and-interconnects) - [存储系统](#storage-systems) - [边缘与嵌入式机器学习](#edge-and-embedded-ml) - [里程碑论文](#landmark-papers) - [博客与通讯](#blogs-and-newsletters) - [社区](#communities) - [会议与场所](#conferences-and-venues) - [成本工程](#cost-engineering) - [新兴硬件](#emerging-hardware) - [模型治理与合规](#model-governance-and-compliance) - [智能体系统基础设施](#agentic-systems-infrastructure) - [PEFT与模型合并](#peft-and-model-merging) - [集群管理](#cluster-management) - [数据质量与契约](#data-quality-and-contracts) - [持续训练与再训练](#continuous-training-and-retraining) - [超参数优化](#hyperparameter-optimization) - [实验管理与可复现性](#experiment-management-and-reproducibility) - [AutoML与神经架构搜索](#automl-and-neural-architecture-search) - [机器学习CI/CD](#cicd-for-ml) - [实际案例研究](#real-world-case-studies) - [贡献](#contribute) ## 基础理论 - [CS249r: 机器学习系统](https://mlsysbook.ai) - ⭐ 哈佛的开放教科书,分两卷涵盖完整的机器学习系统技术栈:从神经计算到车队级运维。该领域最全面的免费参考。 - [MLSys会议论文集](https://mlsys.org) - 机器学习系统研究的顶级同行评审会议。所有论文集均可免费获取。 - [深度学习编译综述](https://arxiv.org/abs/2002.08794) 🎓 - 关于深度学习编译技术的综合综述;深入了解编译器后端之前的必读材料。 - [精选机器学习系统(GPU Mode)](https://github.com/gpu-mode/awesomeMLSys#readme) - GPU Mode社区的入门阅读列表,在GPU内核和注意力机制资源方面很强。 - [awesome-seml](https://github.com/SE-ML/awesome-seml#readme) - 关于机器学习软件工程的策划列表,从软件流程角度与本列表互补。 - [精选生产机器学习](https://github.com/EthicalML/awesome-production-machine-learning#readme) - 关于部署、监控、版本控制和保障生产环境中机器学习模型的开源库的策划列表。 ## 书籍 - [CS249r: 机器学习系统(GitHub)](https://github.com/harvard-edge/cs249r_book) - ⭐ 哈佛的开源两卷教科书,涵盖机器学习工作流、硬件加速、分布式训练和负责任的工程。附带练习和实验的源代码仓库。 - [大规模并行处理器编程](https://www.elsevier.com/books/programming-massively-parallel-processors/kirk/978-0-323-91231-0) - 使用CUDA进行GPU编程的标准教科书。对于编写自定义内核的任何人都是必备的。 - [设计数据密集型应用](https://dataintensive.net) - ⭐ 面向数据管道、存储和可靠性的系统思维。直接适用于机器学习数据基础设施。 - [分布式系统:原理与范式](https://www.distributed-systems.net/index.php/books/ds4/) - 支撑分布式机器学习训练的基础分布式系统理论。可在线免费获取。 - [高性能Python](https://www.oreilly.com/library/view/high-performance-python/9781492055013/) - 针对基于Python的机器学习工作流的性能分析和优化技术。 - [设计机器学习系统](https://www.oreilly.com/library/view/designing-machine-learning/9781098107956/) - ⭐ Chip Huyen所著关于开发生产级机器学习系统的迭代过程的书,涵盖数据、训练、部署和监控。 - [机器学习工程](http://www.mlebook.com/wiki/doku.php) - Andriy Burkov所著关于构建和部署生产级机器学习系统所需工程实践的书。可按需付费获取。 - [RLHF书籍](https://rlhfbook.com) - ⭐ 关于完整RLHF流程(从奖励建模到策略优化)的全面免费指南。 ## 课程 - [CS249r: TinyML与高效深度学习](https://efficientml.ai) 🎓 - MIT关于高效机器学习的课程,涵盖量化、剪枝和硬件感知的神经架构设计。 - [全栈深度学习](https://github.com/full-stack-deep-learning/fsdl-text-recognizer-2022-labs) - ⭐ 关于构建和部署机器学习驱动产品的端到端课程;在MLOps、工具和生产方面很强。 - [GPU Mode讲座](https://github.com/gpu-mode/lectures) 🎓 - 关于GPU编程、CUDA和Triton内核开发的社区系列讲座。可在YouTube上免费获取。 - [斯坦福CS149:并行计算](https://gfxcourses.stanford.edu/cs149/fall23) 🎓 - 涵盖SIMD、多线程、GPU架构和缓存优化的基础并行计算课程。 - [CMU 15-418/618:并行计算机体系结构与编程](https://www.cs.cmu.edu/~418/) 🎓 - 深入探讨CMU的并行硬件和编程模型。幻灯片和作业公开可用。 - [深度学习系统(dlsyscourse.org)](https://dlsyscourse.org) 🎓 ⭐ - 关于从零构建机器学习框架的课程;教授自动微分内部机制、算子融合和硬件后端。 - [MIT 6.5940:TinyML与高效深度学习计算](https://hanlab.mit.edu/courses/2023-fall-65940) 🎓 - MIT韩松教授实验室关于高效神经网络、量化、剪枝和硬件协同设计的课程。 - [MLOps训练营](https://datatalks.club/blog/mlops-zoomcamp.html) 🎓 - 免费的3个月课程,涵盖Docker、MLflow、Mage、Prometheus、Evidently以及机器学习系统的CI/CD。 - [用ML创造](https://madewithml.com/courses/mlops) 🎓 - 全面的开放课程,涵盖设计、开发、部署和迭代生产级机器学习系统。 - [生产机器学习工程(MLOps)](https://www.coursera.org/specializations/machine-learning-engineering-for-production-mlops) 🎓 - Google在Coursera上关于生产级机器学习系统和流水线的专业课程。 ## 硬件与加速器 - [NVIDIA CUDA编程指南](https://docs.nvidia.com/cuda/cuda-c-programming-guide/) - ⭐ CUDA GPU编程的权威参考。深入涵盖内存层次结构、线程模型和执行模型。 - [NVIDIA Hopper架构白皮书](https://resources.nvidia.com/en-us-tensor-core/gtc22-whitepaper-hopper) - 深入H100 GPU架构的技术细节,包括Transformer Engine、NVLink 4.0和HBM3。 - [Google TPU系统架构](https://cloud.google.com/tpu/docs/system-architecture-tpu-vm) - 关于TPU Pod架构、内存层次结构和高速互联的官方文档。 - [AMD ROCm文档](https://github.com/ROCm/ROCm) - AMD的开源GPU计算平台文档。对于大规模训练负载越来越相关。 - [Intel Gaudi开发者文档](https://github.com/HabanaAI/Model-References) - Intel的机器学习加速器文档,适用于AWS DL1/DL2实例负载。 - [Hot Chips研讨会](https://www.hotchips.org/archives/) - 年度研讨会论文集,涵盖来自业界和学术界的前沿处理器、加速器和内存架构。 - [AWS Trainium和Inferentia](https://aws.amazon.com/machine-learning/trainium/) - AWS专用机器学习芯片;Trainium用于训练,Inferentia用于推理,配有NeuronSDK编译器工具链。 - [AMD CDNA3架构](https://www.amd.com/en/products/accelerators/instinct/mi300.html) - AMD的MI300系列GPU架构,具有统一CPU/GPU内存和HBM3,用于大模型训练。 - [HBM(高带宽内存)解析](https://arxiv.org/abs/2312.06585) 🎓 - 关于HBM技术代际(HBM2e、HBM3、HBM3e)及其对机器学习加速器内存带宽影响的综述。 - [CXL(计算快速链路)](https://www.computeexpresslink.org) - 开放的互联标准,支持跨CPU和加速器的内存扩展和池化,与大模型内存层次结构相关。 ## 机器学习框架 - [PyTorch](https://pytorch.org) ⭐ 🛠️ - 主导性的研究和生产训练框架。在autograd、TorchScript和分布式训练原语方面有深入文档。 - [JAX](https://github.com/google/jax) ⭐ 🛠️ - Google的可组合函数转换(grad、jit、vmap、pmap)库,基于XLA。高性能研究代码的首选。 - [TensorFlow](https://www.tensorflow.org) 🛠️ - Google的生产级机器学习框架,拥有强大的TFX生态系统,用于数据管道、服务和模型管理。 - [torch.compile(PyTorch 2.x)](https://pytorch.org/docs/stable/torch.compiler.html) - ⭐ 在PyTorch 2.0+中桥接即时执行和编译器级优化的图捕获和编译系统。 - [Flax](https://github.com/google/flax) 🛠️ - 基于JAX构建的神经网络库,用于灵活、高性能的模型开发。Google DeepMind内部使用。 - [ONNX](https://onnx.ai) 🛠️ - 表示机器学习模型的开放标准,支持跨框架和硬件目标的互操作性。 ## 神经网络编译器 - [TVM (Apache)](https://tvm.apache.org) ⭐ 🛠️ - 支持CPU、GPU和自定义加速器的端到端深度学习编译器栈。包含用于基于学习的自动调优的Ansor。 - [MLIR](https://mlir.llvm.org) - ⭐ 来自LLVM的多级中间表示框架。是现代机器学习编译器基础设施(跨XLA、IREE和Torch-MLIR)的支柱。 - [XLA](https://www.tensorflow.org/xla) - 加速线性代数编译器,被JAX和TensorFlow使用。通过算子融合生成高度优化的GPU/TPU内核。 - [Triton](https://triton-lang.org) ⭐ 🛠️ - OpenAI的基于Python的语言和编译器,用于高生产力地编写GPU内核。用于实现FlashAttention和PagedAttention。 - [IREE](https://iree.dev) 🛠️ - 中间表示执行环境;一个编译器和运行时,用于在包括移动设备在内的多种硬件目标上运行机器学习模型。 - [TensorRT](https://developer.nvidia.com/tensorrt) 🛠️ - NVIDIA的高性能推理优化器和运行时。支持CUDA GPU上的FP8、INT8和稀疏性。 - [OpenXLA](https://openxla.org) - 社区治理的XLA项目,旨在实现超越Google内部技术栈的广泛硬件可移植性。 ## 内核编程 - [Triton教程](https://triton-lang.org/main/getting-started/tutorials/index.html) - ⭐ 使用Triton编写GPU内核的官方分步教程,从向量加法到融合softmax再到FlashAttention。 - [CUTLASS](https://github.com/NVIDIA/cutlass) 🛠️ - NVIDIA的CUDA线性代数子程序模板库。cuDNN和TensorRT内部使用的高性能GEMM和卷积原语。 - [FlashAttention](https://github.com/Dao-AILab/flash-attention) ⭐ 🛠️ - IO感知的注意力实现,通过分块计算最小化HBM读写。高效Transformer训练和推理的标准。 - [cuDNN开发者指南](https://docs.nvidia.com/deeplearning/cudnn/developer-guide/index.html) - NVIDIA的深度学习原语库文档;涵盖卷积算法、张量格式和融合操作。 - [Leet GPU](https://leetgpu.com) 🛠️ - GPU内核编程挑战的练习平台,支持CUDA和Triton,类似于内核工程师的LeetCode。 - [GPU Mode资源流](https://github.com/gpu-mode/resource-stream) - 来自GPU Mode Discord社区的精选GPU内核编程资源流。 ## 分布式训练 - [PyTorch分布式概述](https://pytorch.org/tutorials/beginner/dist_overview.html) - ⭐ PyTorch分布式API的官方概述:DDP、FSDP和RPC。深入了解框架内部机制之前的最佳起点。 - [Megatron-LM](https://github.com/NVIDIA/Megatron-LM) ⭐ 🛠️ - NVIDIA的框架,用于通过结合张量并行、流水线并行和数据并行来训练大型语言模型。 - [DeepSpeed](https://www.deepspeed.ai) 🛠️ - Microsoft的库,用于使用ZeRO优化器阶段、流水线并行和CPU/NVMe卸载来训练海量模型。 - [FSDP(全分片数据并行)](https://pytorch.org/docs/stable/fsdp.html) 🛠️ - PyTorch原生的ZeRO风格模型分片。在单个PyTorch作业中训练大模型的标准方法。 - [Alpa](https://github.com/alpa-projects/alpa) 🛠️ - 自动化并行策略搜索的系统,涵盖操作间和操作内分区维度。 - [GPU集群上的高效大规模语言模型训练](https://arxiv.org/abs/2104.04473) ⭐ 🎓 - Megatron-LM论文,结合了张量、流水线和数据并行。LLM训练基础设施的必读论文。 - [GPipe](https://arxiv.org/abs/1811.06965) 🎓 - Google的流水线并行论文,引入微批次梯度累积以实现内存高效的模型并行。 - [Switch Transformer](https://arxiv.org/abs/2101.03961) 🎓 - Google关于大规模稀疏专家混合训练的论文,涉及专家并行和负载均衡。 - [DeepSpeed-Ulysses](https://arxiv.org/abs/2309.14600) 🎓 - Microsoft的序列并行方法,通过在设备间划分序列来支持超长上下文模型的训练。 - [Megatron-DeepSpeed](https://github.com/microsoft/Megatron-DeepSpeed) 🛠️ - 结合Megatron-LM的张量/流水线并行和DeepSpeed的ZeRO优化器的混合框架,用于十亿参数训练。 - [Tutel](https://github.com/microsoft/tutel) 🛠️ - 自适应MoE实现,具有动态top-k门控和专家负载均衡,用于高效的稀疏模型训练。 - [Pathways:用于ML的异步分布式数据流](https://arxiv.org/abs/2203.12533) 🎓 - Google的系统,用于跨异构加速器岛进行异步数据并行执行的训练。 ## 集合通信 - [NCCL](https://developer.nvidia.com/nccl) ⭐ 🛠️ - NVIDIA的集合通信库,用于多GPU和多节点的AllReduce、Broadcast和Scatter操作。大多数分布式训练技术栈的支柱。 - [Ring-AllReduce解析](https://andrew.gibiansky.com/blog/machine-learning/baidu-allreduce/) - ⭐ 百度的博文,解释了支撑带宽最优数据并行训练的环形AllReduce算法。 - [Gloo](https://github.com/facebookincubator/gloo) 🛠️ - Facebook的集合通信库,在PyTorch分布式中用作CPU/以太网后端。 - [MSCCL++](https://github.com/microsoft/mscclpp) 🛠️ - Microsoft的低延迟集合通信库,具有直接GPU内核集成功能,用于细粒度控制。 - [MPI标准](https://www.mpi-forum.org) - 消息传递接口规范;NCCL和Gloo所基于的基础集合通信模型。 ## 内存高效训练 - [梯度检查点](https://github.com/cybertronai/gradient-checkpointing) ⭐ 🛠️ - 在反向传播期间重新计算激活值而不是存储它们,以约20%的计算量换取约80%的内存减少。 - [ZeRO:面向训练万亿参数模型的内存优化](https://arxiv.org/abs/1910.02054) ⭐ 🎓 - Microsoft DeepSpeed的优化器,在设备间划分优化器状态、梯度和参数,以实现万亿参数训练。 - [PyTorch中的激活检查点](https://pytorch.org/docs/stable/checkpoint.html) 🛠️ - PyTorch内置的检查点实用程序,用于在深度网络中用计算换内存。 - [混合精度训练](https://arxiv.org/abs/1710.03740) 🎓 - NVIDIA的论文,关于同时使用FP16和FP32进行训练并结合损失缩放,现已成为大模型训练的标准实践。 - [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) 🛠️ - 用于8位和4位量化优化器及线性层的库,支持在消费级GPU上进行QLoRA微调。 - [LoRA:低秩适配](https://arxiv.org/pdf/2106.09685) ⭐ 🎓 - 通过将权重更新分解为低秩矩阵来实现参数高效微调,将可训练参数减少数个数量级。 ## 推理与服务 - [vLLM](https://github.com/vllm-project/vllm) ⭐ 🛠️ - 使用PagedAttention进行高效KV缓存管理的高吞吐量LLM服务引擎。生产级LLM服务的行业标准。 - [TensorRT-LLM](https://github.com/NVIDIA/TensorRT-LLM) 🛠️ - NVIDIA优化的LLM推理库,具有FP8量化、在途批处理和多GPU张量并行支持。 - [SGLang](https://github.com/sgl-project/sglang) 🛠️ - 结构化生成语言和运行时,具有RadixAttention功能,可在请求间高效复用KV缓存。 - [llama.cpp](https://github.com/ggerganov/llama.cpp) 🛠️ - 纯C/C++的LLM推理,支持量化。无需框架依赖即可在CPU和Apple Silicon上运行。 - [Triton推理服务器](https://github.com/triton-inference-server/server) 🛠️ - NVIDIA生产级模型服务平台,支持动态批处理、模型集成和多框架。 - [ONNX运行时](https://onnxruntime.ai) 🛠️ - 跨平台、高性能的ONNX模型推理引擎,适用于CPU、GPU和边缘目标。 - [PagedAttention论文](https://arxiv.org/pdf/2309.06180) - ⭐ vLLM的关键论文,关于受虚拟内存启发的KV缓存管理,实现高吞吐量LLM服务且无内存浪费。 - [推测性解码](https://arxiv.org/abs/2211.17192) 🎓 - 使用小型草稿模型提议token,然后由完整模型验证,以加速自回归生成的技术。 - [LLM推理的连续批处理](https://www.anyscale.com/blog/continuous-batching-llm-inference) - ⭐ Anyscale对迭代级批处理的解释,这是现代高吞吐量LLM服务背后的关键调度创新。 - [Ollama](https://github.com/ollama/ollama) 🛠️ - 简单的本地LLM服务,支持自动量化和硬件检测,非常适合开发和边缘部署。 - [文本生成推理(TGI)](https://github.com/huggingface/text-generation-inference) 🛠️ - Hugging Face的生产级LLM服务工具包,支持张量并行、连续批处理和闪存注意力。 - [Outlines](https://github.com/dottxt-ai/outlines) 🛠️ - 结构化文本生成库,可在token级别对LLM输出施加JSON schema、正则表达式和语法约束。 - [Medusa](https://github.com/FasterDecoding/Medusa) 🛠️ - 推测性解码框架,添加多个解码头来同时预测多个未来token,在不损失质量的情况下提高吞吐量。 - [用于LLM服务的分离式预填充](https://arxiv.org/abs/2401.09670) 🎓 - 关于将预填充(提示处理)和解码阶段分离到不同硬件上以优化GPU利用率和延迟的论文。 - [vLLM中的前缀缓存](https://docs.vllm.ai/en/latest/features/automatic_prefix_caching.html) 🛠️ - 自动前缀缓存,可在具有共享提示前缀的请求间复用KV缓存,减少冗余计算。 ## 量化与压缩 - [GPTQ](https://arxiv.org/abs/2210.17323) ⭐ 🎓 - 生成模型的训练后量化,以最小的精度损失实现大型语言模型的4位推理。 - [AWQ(激活感知权重量化)](https://arxiv.org/abs/2306.00978) 🎓 - 硬件高效的4位量化,通过激活幅度分析保留显著权重。 - [SparseGPT](https://arxiv.org/abs/2301.00774) 🎓 - 大型语言模型的单次非结构化剪枝,可在不重新训练的情况下实现50%的稀疏性。 - [知识蒸馏综述](https://arxiv.org/abs/2006.05525) 🎓 - 关于跨架构和任务的模型压缩知识蒸馏技术的综合综述。 - [GGUF格式](https://github.com/ggerganov/ggml/blob/master/docs/gguf.md) - llama.cpp用于量化模型存储和CPU/GPU内存映射加载的文件格式。 ## RLHF基础设施 - [OpenRLHF](https://github.com/OpenRLHF/OpenRLHF) ⭐ 🛠️ - 生产就绪的端到端RLHF框架,结合了Ray、DeepSpeed ZeRO-3和vLLM,用于可扩展的策略优化。 - [TRL(Transformer强化学习)](https://huggingface.co/docs/trl) ⭐ 🛠️ - Hugging Face的库,用于RLHF、GRPO、DPO和PPO对语言模型进行微调,具有干净的训练器API。 - [veRL](https://github.com/volcengine/verl) 🛠️ - ByteDance的RLHF训练框架,具有细粒度并行和高效GPU利用率,用于大规模策略训练。 - [RLHF:来自人类反馈的强化学习综述](https://arxiv.org/abs/2504.12501) 🎓 - 关于RLHF方法、奖励建模和对齐基础设施的最新综述。 - [RLHF奖励建模方案](https://github.com/RLHFlow/RLHF-Reward-Modeling) 🛠️ - 用于训练RLHF流水线最先进奖励模型的实用方案和代码。 ## 向量数据库与检索 - [Milvus](https://github.com/milvus-io/milvus) ⭐ 🛠️ - 开源分布式向量数据库,针对十亿级相似性搜索并支持GPU加速进行了优化。 - [Qdrant](https://qdrant.tech) 🛠️ - 用Rust编写的高性能开源向量数据库,支持过滤、负载索引和磁盘存储。 - [Weaviate](https://weaviate.io) 🛠️ - 开源向量数据库,内置混合搜索,结合了向量相似性和BM25关键词搜索。 - [pgvector](https://github.com/pgvector/pgvector) 🛠️ - PostgreSQL的向量相似性搜索扩展。对于已使用Postgres的团队,是通往生产级向量搜索的最简单路径。 - [Chroma](https://www.trychroma.com) 🛠️ - 轻量级可嵌入向量数据库,专为LLM应用开发设计。易于本地运行。 - [FAISS](https://github.com/facebookresearch/faiss) ⭐ 🛠️ - Facebook AI的库,用于密集向量的高效相似性搜索和聚类。大多数向量数据库的基础构建块。 - [Pinecone](https://www.pinecone.io) 🛠️ - 全托管的无服务器向量数据库,支持自动扩缩和低延迟检索,适用于生产级RAG系统。 ## LLM评估框架 - [DeepEval](https://deepeval.com) ⭐ 🛠️ - Python LLM评估框架,包含50多个指标,包括G-Eval、幻觉检测和使用LLM作为裁判的RAG特定评估器。 - [RAGAS](https://docs.ragas.io) 🛠️ - 专为检索增强生成系统设计的评估框架,衡量忠实度、相关性和上下文精度。 - [TruLens](https://www.trulens.org) 🛠️ - LLM反馈和可观测性框架,支持迭代评估,集成了人工和自动化反馈。 - [LM评估工具箱](https://github.com/EleutherAI/lm-evaluation-harness) ⭐ 🛠️ - EleutherAI的统一框架,用于在数百个基准上评估语言模型。被Open LLM排行榜使用。 - [BERTScore](https://github.com/Tiiiger/bert_score) 🛠️ - 神经文本评估指标,使用上下文嵌入对生成输出进行语义相似性评分。 - [MT-Bench](https://arxiv.org/abs/2306.05685) 🎓 - 多轮基准测试,使用GPT-4作为裁判来评估聊天模型的指令遵循和推理能力。 ## LLM可观测性与追踪 - [Langfuse](https://langfuse.com) ⭐ 🛠️ - 开源LLM可观测性平台,通过OpenTelemetry提供完整的请求追踪、评估和提示词管理。 - [Phoenix (Arize)](https://phoenix.arize.com) 🛠️ - 开源ML可观测性工具,用于追踪LLM应用、评估输出以及检测CV和表格模型中的漂移。 - [OpenLLMetry](https://www.traceloop.com) 🛠️ - 基于OpenTelemetry的非侵入式LLM应用插桩。支持OpenAI SDK、LangChain和大多数主流框架。 - [LangSmith](https://smith.langchain.com) 🛠️ - LangChain的平台,用于追踪、评估和部署LLM应用,并为链和智能体运行提供调试工具。 - [Helicone](https://www.helicone.ai) 🛠️ - LLM可观测性代理,用于跨提供商记录、缓存、限速和优化LLM API调用。 - [Evidently AI](https://www.evidentlyai.com/blog) 🛠️ - 开源ML监控库,用于检测生产环境中的数据漂移、概念漂移和模型性能下降。 ## 合成数据生成 - [NeMo Curator](https://github.com/NVIDIA/NeMo-Curator) ⭐ 🛠️ - NVIDIA的可扩展数据策展库,包含用于训练Nemotron-4 340B的预建合成数据生成流水线。 - [Distilabel](https://github.com/argilla-io/distilabel) 🛠️ - 使用LLM流水线生成合成数据集和AI反馈的框架,基于Argilla生态系统构建。 - [DataDreamer](https://github.com/datadreamer-dev/DataDreamer) 🛠️ - 用于合成数据生成、基于提示的数据增强以及从现有模型创建数据集的库。 - [以数据为中心的AI资源中心](https://datacentricai.org) - 吴恩达关于ML系统数据工程的倡议,提供用于数据质量改进的工具和基准。 ## 多模态系统 - [CLIP](https://github.com/openai/CLIP) ⭐ 🛠️ - OpenAI的对比图文预训练模型。多模态检索和零样本分类的基础架构。 - [LLaVA](https://llava-vl.github.io) 🛠️ - 大型语言与视觉助手;基于LLaMA构建的指令调优多模态模型,用于视觉问答。 - [BLIP-2](https://arxiv.org/abs/2301.12597) 🎓 - Salesforce的自举视觉-语言预训练框架,使用轻量级查询Transformer来桥接器。 - [ImageBind](https://github.com/facebookresearch/ImageBind) 🛠️ - Meta的模型,将六种模态(图像、文本、音频、深度、热成像、IMU)绑定到单一嵌入空间。 - [Open Flamingo](https://github.com/mlfoundations/open_flamingo) 🛠️ - DeepMind Flamingo多模态LLM的开源复现,支持使用交错图像和文本进行上下文学习。 ## 基准测试与性能分析 - [MLPerf](https://mlcommons.org/benchmarks/) - ⭐ 行业标准的ML基准测试套件,涵盖跨多样化硬件平台的训练和推理。ML系统性能的权威衡量标准。 - [Roofline模型](https://people.eecs.berkeley.edu/~kubitron/cs252/handouts/papers/RooflineVyNoYellow.pdf) ⭐ 🎓 - 用于识别GPU内核中计算与内存瓶颈的性能模型。任何ML系统工程师必备的心智模型。 - [NVIDIA Nsight Systems](https://developer.nvidia.com/nsight-systems) 🛠️ - GPU工作负载的系统级性能分析工具,对于识别CPU-GPU同步和流水线瓶颈至关重要。 - [NVIDIA Nsight Compute](https://developer.nvidia.com/nsight-compute) 🛠️ - CUDA应用程序的内核级分析器,具有Roofline分析和内存吞吐量分解功能。 - [PyTorch Profiler](https://pytorch.org/tutorials/recipes/recipes/profiler_recipe.html) 🛠️ - PyTorch内置的性能分析器,集成了TensorBoard,用于操作级别的CPU和GPU计时。 - [AI与内存墙](https://arxiv.org/abs/2403.14123) 🎓 - 分析内存带宽如何限制当前和未来硬件上LLM推理吞吐量的论文。 - [LLM-Perf排行榜](https://huggingface.co/spaces/optimum/llm-perf-leaderboard) - Hugging Face的基准测试,比较不同硬件配置下的LLM推理吞吐量和延迟。 ## 数据工程 - [Apache Arrow](https://arrow.apache.org) ⭐ 🛠️ - 列式内存数据格式,支持ML框架和数据系统之间的零拷贝数据共享。 - [WebDataset](https://github.com/webdataset/webdataset) 🛠️ - 流式数据集格式,用于从对象存储进行大规模训练,与PyTorch DataLoader完全兼容。 - [FFCV](https://ffcv.io) 🛠️ - 快速数据加载库,通过使用二进制beton格式和异步加载来减少训练数据流水线瓶颈。 - [Petastorm](https://github.com/uber/petastorm) 🛠️ - Uber的库,用于直接从HDFS或S3中的Parquet数据集训练深度学习模型。 - [DVC(数据版本控制)](https://dvc.org) 🛠️ - Git集成的版本控制,用于数据集和模型,清晰分离数据、训练和部署谱系。 - [Delta Lake](https://delta.io) 🛠️ - 数据湖的ACID事务和版本控制,支持可靠的ML特征管道和可复现的数据集快照。 - [特征存储比较](https://www.featurestore.org) - 比较特征存储架构的社区资源,包括Feast、Hopsworks和Tecton。 ## MLOps与生产 - [Kubeflow](https://www.kubeflow.org) 🛠️ - Kubernetes原生的ML平台,用于编排训练流水线、超参数调整和大规模服务。 - [MLflow](https://mlflow.org) 🛠️ - 开源平台,用于实验跟踪、模型注册和多框架部署。MLflow 3.0新增了GenAI谱系跟踪。 - [Ray](https://www.ray.io) ⭐ 🛠️ - 分布式计算框架,用于扩展ML工作负载,Ray Tune、Ray Train和Ray Serve作为一等组件。 - [Weights & Biases](https://wandb.ai) 🛠️ - 实验跟踪、构件版本控制和协作式ML开发平台。在研究和生产中均被广泛采用。 - [ZenML](https://www.zenml.io) 🛠️ - MLOps框架,用于构建可移植、可复现的ML流水线,集成了RAG、微调和评估功能。 - [Seldon Core](https://github.com/SeldonIO/seldon-core) 🛠️ - Kubernetes原生的模型服务,支持金丝雀发布、A/B测试和可解释性集成。 - [ML测试评分](https://storage.googleapis.com/gweb-research2023-media/pubtools/4156.pdf) ⭐ 🎓 - Google的评分标准论文,定义了28项测试,用于评估数据、模型、基础设施和监控方面的生产级ML系统就绪性。 ## LLMOps平台 - [Langfuse](https://langfuse.com/docs) ⭐ 🛠️ - 开源LLMOps平台,将追踪、评估、提示词管理和数据集策展整合在一个工具中。 - [Braintrust](https://www.braintrust.dev) 🛠️ - 面向AI团队的评估和可观测性平台,具有CI集成的基准测试和人工审查工作流。 - [Weights & Biases Weave](https://wandb.ai/site/weave) 🛠️ - W&B的LLMOps产品,用于追踪、评估和迭代基于其实验跟踪基础设施构建的LLM应用。 - [Databricks MLflow + Unity Catalog](https://www.databricks.com) 🛠️ - 统一的数据和AI平台,通过MLflow和Delta Lake集成模型训练、服务和治理。 - [GrowthBook](https://www.growthbook.io) 🛠️ - 开源的功能标志和A/B测试平台,用于受控的模型发布和实验。 ## 部署策略 - [ML模型的影子部署](https://se-ml.github.io/best_practices/04-shadow_models_prod) - ⭐ 一种模式,在切换前将生产流量静默路由到新模型以验证其行为,而不暴露给用户。 - [ML的金丝雀发布](https://www.qwak.com/post/shadow-deployment-vs-canary-release-of-machine-learning-models) - 渐进式流量切换(1%到100%),用于使用真实用户验证ML模型更新,同时限制影响范围。 - [蓝绿部署](https://martinfowler.com/bliki/BlueGreenDeployment.html) - 环境即时切换模式,支持零停机模型部署和立即回滚能力。 - [Argo Rollouts](https://argoproj.github.io/rollouts/) 🛠️ - Kubernetes控制器,用于渐进式交付,支持模型服务工作负载的金丝雀、蓝绿和影子发布模式。 - [Flagger](https://flagger.app) 🛠️ - Kubernetes渐进式交付Operator,支持金丝雀、A/B测试和蓝绿部署,具有自动化分析和回滚功能。 ## 容错与可靠性 - [使用Torchelastic进行弹性训练](https://pytorch.org/docs/stable/elastic/run.html) 🛠️ - PyTorch的弹性训练框架,用于处理节点故障和动态集群扩缩,无需从头开始。 - [PyTorch分布式检查点](https://pytorch.org/tutorials/recipes/distributed_checkpoint_recipe.html) 🛠️ - PyTorch的分布式检查点API,用于在大规模训练期间进行异步、容错的状态保存。 - [Pathways](https://arxiv.org/pdf/2203.12533) 🎓 - Google关于统一ML运行时的论文,旨在实现可靠性、异构加速和大规模多任务训练。 - [大规模可靠性(OSDI 2022)](https://www.usenix.org/conference/osdi22/presentation/wang-weeklong) 🎓 - Microsoft关于大规模ML训练集群中故障模式和恢复策略的研究。 ## 安全与隐私 - [联邦学习](https://blog.research.google/2017/04/federated-learning-collaborative.html) - ⭐ Google的开创性博文,介绍了无需集中用户数据即可训练模型的联邦学习范式。 - [PySyft](https://github.com/OpenMined/PySyft) 🛠️ - 用于隐私保护ML的框架,通过联邦学习、差分隐私和安全多方计算实现。 - [深度学习中的差分隐私](https://arxiv.org/abs/1607.00133) 🎓 - 通过DP-SGD将差分隐私保证应用于深度学习的基础论文。 - [MITRE ATLAS](https://atlas.mitre.org) - MITRE的对抗性ML知识库,记录了ML模型攻击的策略、技术和实际案例研究。 - [对抗鲁棒性工具箱](https://github.com/Trusted-AI/adversarial-robustness-toolbox) 🛠️ - IBM的开源库,用于评估和防御ML模型免受对抗性输入。 - [模型窃取攻击综述](https://arxiv.org/abs/2112.02918) 🎓 - 关于通过查询访问重建或窃取模型权重和功能的攻击及其防御措施的综合综述。 - [NVIDIA机密计算](https://www.nvidia.com/en-us/data-center/solutions/confidential-computing/) - H100机密VM支持,能够在硬件强制的可信执行环境中进行GPU加速的ML推理。 - [用于ML模型的Sigstore](https://www.sigstore.dev) 🛠️ - 无密钥签名和验证基础设施,适用于模型权重来源和供应链完整性。 - [提示注入攻击与防御](https://arxiv.org/abs/2302.12173) 🎓 - 分析提示注入作为LLM集成应用中的系统安全威胁,以及缓解策略。 ## 可持续人工智能 - [绿色AI](https://arxiv.org/abs/1907.10597) ⭐ 🎓 - Schwartz等人的论文,呼吁关注ML研究日益增长的能源成本,并提议将效率作为报告指标。 - [NLP中深度学习的能源与政策考量](https://arxiv.org/abs/1906.02629) ⭐ 🎓 - Strubell等人关于NLP模型训练能源和碳成本的分析,催生了可持续AI领域。 - [CodeCarbon](https://codecarbon.io) 🛠️ - 自动测量和报告ML训练运行CO2排放量的Python工具。 - [ML CO2影响计算器](https://mlco2.github.io/impact/) 🛠️ - 在线计算器,用于估算跨云提供商和硬件的ML训练作业的碳足迹。 ## 网络与互联 - [NVLink和NVSwitch](https://www.nvidia.com/en-us/data-center/nvlink/) - ⭐ NVIDIA的高带宽GPU互联,用于DGX和HGX系统。对多GPU训练性能至关重要。 - [InfiniBand架构](https://www.infinibandta.org) - 高速网络标准,用于HPC和ML集群,支持基于RDMA的低延迟集合通信。 - [RoCE(基于融合以太网的RDMA)](https://www.rdmaconsortium.org) - 基于以太网的RDMA,是InfiniBand的替代方案,在超大规模ML集群中使用越来越多。 - [Google Jupiter网络](https://research.google/pubs/pub43837/) 🎓 - Google的数据中心网络架构,支持拍比特级二分带宽,用于TPU Pod训练。 - [用于AI集群的以太网](https://arxiv.org/abs/2307.12229) 🎓 - 关于大规模ML训练集群网络拓扑和传输层选择的论文。 ## 存储系统 - [Lustre文件系统](https://www.lustre.org) - 并行分布式文件系统,广泛部署在HPC和ML训练集群中,用于高吞吐量检查点和数据集I/O。 - [Alluxio](https://www.alluxio.io) 🛠️ - 数据编排层,使ML框架能够以接近内存的速度从多个存储系统访问训练数据。 - [AWS FSx for Lustre](https://aws.amazon.com/fsx/lustre/) - 托管的Lustre文件系统,与S3紧密集成;AWS上高吞吐量ML训练数据访问的标准选择。 ## 边缘与嵌入式机器学习 - [TensorFlow Lite](https://www.tensorflow.org/lite) ⭐ 🛠️ - 在移动和嵌入式设备上运行ML模型的轻量级框架。包含转换器和优化的运行时。 - [MCUNet](https://mcunet.mit.edu) ⭐ 🎓 - MIT框架,通过神经架构搜索和TinyEngine,在仅有千字节SRAM的微控制器上部署神经网络。 - [Edge Impulse](https://www.edgeimpulse.com) 🛠️ - 端到端平台,用于在微控制器和边缘设备上开发和部署ML,支持硬件在环测试。 - [CMSIS-NN](https://arm-software.github.io/CMSIS-NN/latest/) 🛠️ - ARM为Cortex-M微控制器优化的神经网络内核,使用SIMD指令。 - [Apache TVM MicroTVM](https://github.com/apache/tvm/tree/main/apps) 🛠️ - TVM子项目,用于在无操作系统的裸机微控制器上编译和部署ML模型。 - [TinyML基金会](https://www.tinyml.org) - 面向极度受限设备上机器学习的社区和资源中心。 - [ONNX运行时移动版](https://onnxruntime.ai/docs/tutorials/mobile/) 🛠️ - 针对移动和嵌入式目标优化的ONNX运行时构建,包含CoreML和NNAPI执行提供程序。 ## 里程碑论文 塑造ML系统工程领域的开创性论文。 - [MapReduce (2004)](https://research.google/pubs/pub62/) ⭐ 🎓 - Google关于分布式数据处理的基础论文。现代ML数据管道的祖先,也是大规模分布式计算思想的源头。 - [Attention Is All You Need (2017)](https://arxiv.org/abs/1706.03762) ⭐ 🎓 - Transformer架构论文,定义了现代ML系统中的主导计算负载。 - [TVM:深度学习的自动端到端优化编译器 (2018)](https://arxiv.org/abs/1802.04799) ⭐ 🎓 - 开创性的ML编译器论文,引入了基于学习的自动调优,用于硬件特定的内核优化。 - [Ray:面向新兴AI应用的分布式框架 (2018)](https://arxiv.org/abs/1712.05889) 🎓 - OSDI论文,关于Ray分布式执行框架,专为异构、动态的ML工作负载设计。 - [Megatron-LM (2019)](https://arxiv.org/abs/1909.08053) ⭐ 🎓 - 跨GPU张量核心进行层内模型并行的高效大规模语言模型训练。 - [FlashAttention (2022)](https://arxiv.org/abs/2205.14135) ⭐ 🎓 - IO感知的精确注意力算法,通过最小化HBM内存流量成为高效Transformer训练的标准。 - [高效扩展Transformer推理 (2022)](https://arxiv.org/abs/2211.05100) 🎓 - Google关于推理成本和多查询注意力分区策略的分析,用于低延迟生产服务。 - [FlashAttention-2 (2023)](https://arxiv.org/abs/2307.08691) ⭐ 🎓 - 改进的IO感知注意力,在序列维度上具有更好的并行性,并在warp之间更好地划分工作。 - [vLLM:LLM服务的高效内存管理 (2023)](https://arxiv.org/abs/2309.06180) ⭐ 🎓 - 通过受虚拟内存启发的KV缓存管理实现高吞吐量LLM服务,消除碎片并支持共享。 - [Mixtral of Experts (2024)](https://arxiv.org/abs/2401.04088) 🎓 - Mistral的稀疏MoE模型论文,具有关于专家路由、负载均衡和大规模专家并行的系统意义。 - [机器学习系统中隐藏的技术债务 (2015)](https://proceedings.neurips.cc/paper_files/paper/2015/file/86df7dcfd896fcaf2674f757a2463eba-Paper.pdf) - ⭐ 🎓 Google的开创性NeurIPS论文,识别出ML特有的技术债务模式,包括边界侵蚀、数据依赖和反馈循环。 - [神经语言模型的缩放定律 (2020)](https://arxiv.org/abs/2001.08361) - ⭐ 🎓 Kaplan等人的论文,建立了模型大小、数据、计算和损失之间的幂律关系;是成本最优训练决策的基础。 - [Chinchilla:训练计算最优的LLM (2022)](https://arxiv.org/abs/2203.15556) - ⭐ 🎓 DeepMind论文,修正了缩放定律,表明大多数大模型训练不足;重新定义了模型大小和token之间的计算最优分配。 ## 博客与通讯 - [Chip Huyen的博客](https://huyenchip.com/blog/) - ⭐ 从实践者角度深入探讨ML系统、实时ML、向量数据库和生产级ML工程的博文。 - [Lilian Weng的博客](https://lilianweng.github.io) - ⭐ 关于ML研究的深度技术文章,在效率、注意力机制和系统主题方面覆盖全面。 - [Sebastian Raschka的Ahead of AI](https://magazine.sebastianraschka.com) - 关于LLM训练、微调、评估和研究趋势的实用ML工程文章。 - [NVIDIA技术博客](https://developer.nvidia.com/blog/) - 来自NVIDIA工程师的关于GPU计算、CUDA优化和ML系统的深度技术文章。 - [PyTorch博客](https://pytorch.org/blog/) - 官方博客,涵盖PyTorch内部机制、新功能、编译器更新和性能改进。 - [Modal博客](https://modal.com/blog) - 关于云GPU基础设施、冷启动优化和ML部署工程的实用文章。 - [Anyscale博客](https://www.anyscale.com/blog) - 关于分布式计算、Ray内部机制和大规模LLM服务基础设施的文章。 - [The Gradient](https://thegradient.pub) - 来自研究者和实践者的关于ML研究和系统的长篇技术文章。 - [SemiAnalysis](https://www.semianalysis.com) - ⭐ 从行业角度对AI芯片架构、数据中心经济学和ML基础设施的深度分析。 - [Asianometry](https://www.asianometry.com) - 半导体供应链、芯片设计和硬件背景的视频和书面分析,对于理解ML加速器生态系统至关重要。 - [LMSYS博客](https://lmsys.org/blog/) - 来自Vicuna、FastChat和Chatbot Arena创建者的研究博客,涵盖LLM服务系统和评估。 - [Hugging Face博客](https://huggingface.co/blog) - 来自Hugging Face的工程和研究文章,涵盖模型优化、推理和开源ML系统。 ## 会议与场所 ML系统研究和工程的顶级同行评审场所。 - [MLSys](https://mlsys.org/Conferences/2025) - ⭐ 专门的ML系统会议,涵盖训练、推理、编译器、硬件和数据管道。 - [OSDI](https://www.usenix.org/conference/osdi24) - ⭐ USENIX操作系统会议。经常发表里程碑式的ML系统论文(Ray、Orca、AlpaServe)。 - [SOSP](https://sosp2023.mpi-sws.org) - ACM操作系统原理研讨会。分布式系统和基础设施研究的顶级场所。 - [ASPLOS](https://www.asplos-conference.org) - 体系结构、编程语言和操作系统。涵盖ML加速器的硬件-软件协同设计。 - [SC(超级计算)](https://supercomputing.org) - HPC会议,涵盖大规模分布式训练、互连和ML工作负载的并行I/O。 - [ISCA](https://iscaconf.org) - 国际计算机体系结构研讨会。涵盖ML加速器微架构和内存系统设计。 - [EuroSys](https://2024.eurosys.org) - 欧洲系统会议,在分布式ML和存储系统方面有很强的分会场。 - [NeurIPS(系统分会场)](https://neurips.cc) - ML研究会议,设有专注于高效训练、服务和部署的系统分会场。 ## 成本工程 - [SkyPilot](https://github.com/skypilot-org/skypilot) - ⭐ 🛠️ 框架,用于在任何云上以最低成本运行LLM训练和推理,使用竞价/抢占式实例并支持自动故障转移。 - [SkyPilot文档](https://skypilot.readthedocs.io) - 🛠️ 官方文档,涵盖多云作业调度、成本优化策略以及用于ML工作负载的托管竞价实例。 - [神经语言模型的缩放定律](https://arxiv.org/pdf/2001.08361) - ⭐ 🎓 Kaplan等人的论文,建立了模型大小、数据和FLOPs之间的计算最优权衡;是成本感知训练决策的基础。 - [Chinchilla:训练计算最优的大型语言模型](https://arxiv.org/pdf/2203.15556) - ⭐ 🎓 DeepMind论文,表明大多数大模型相对于计算预算训练不足;重新定义了成本最优缩放。 - [LLM推理经济学](https://www.baseten.co/blog/llm-transformer-inference-guide/) - 关于Transformer模型推理成本组成部分(KV缓存、内存带宽、批处理效率)的实用分解。 - [RunPod](https://www.runpod.io) - 🛠️ GPU云市场,提供竞价和按需实例;常用于成本敏感的训练和推理工作负载。 - [Vast.ai](https://vast.ai) - 🛠️ 点对点GPU租赁市场,为ML工作负载和实验提供最低成本的GPU访问。 ## 新兴硬件 - [MLX](https://github.com/ml-explore/mlx) - ⭐ 🛠️ Apple的用于Apple Silicon上ML的数组框架;利用统一CPU/GPU内存架构实现高效的设备端训练和推理。 - [Groq LPU架构](https://groq.com/technology/) - Groq的确定性语言处理单元,专为编译器调度、高吞吐量LLM推理设计,具有可预测的延迟。 - [Cerebras架构](https://www.cerebras.net/chip/) - 晶圆级引擎架构,将整个神经网络放在单个芯片上,消除了芯片间通信开销。 - [Tenstorrent](https://tenstorrent.com) - 🛠️ 开放的AI硬件公司(Jim Keller),构建基于RISC-V的AI加速器,具有开源软件栈;Wormhole和Grayskull架构。 - [SambaNova DataScale](https://sambanova.ai) - 可重构数据流架构,专为大模型训练和推理设计,支持软件定义的硬件映射。 - [Graphcore IPU](https://www.graphcore.ai/products/ipu) - 智能处理单元,具有批量同步并行执行模型,适用于稀疏和不规则的ML工作负载。 ## 模型治理与合规 - [模型报告的模型卡](https://arxiv.org/abs/1810.03993) - ⭐ 🎓 Mitchell等人的论文,将模型卡作为透明度机制引入;现已成为Hugging Face Hub上的标准实践。 - [Hugging Face模型卡](https://huggingface.co/docs/hub/model-cards) - 🛠️ Hub上模型卡的官方规范和工具;是记录ML模型元数据和局限性的事实标准。 - [OpenLineage](https://openlineage.io) - 🛠️ 跨管道收集数据谱系的开放标准;跟踪数据集从摄入到模型训练的来源。 - [DataHub](https://datahubproject.io) - 🛠️ 开源元数据平台,用于跨ML管道和特征存储的数据发现、谱系和治理。 - [lakeFS](https://lakefs.io) - 🛠️ 数据湖的类Git版本控制;通过在提交时快照训练数据,实现可复现的ML实验。 - [AI公平性360](https://github.com/Trusted-AI/AIF360) - 🛠️ IBM的开源工具包,用于检测和缓解整个ML生命周期中的算法偏差。 - [Fairlearn](https://fairlearn.org) - 🛠️ Microsoft的Python库,用于评估和改善ML模型的公平性,包含缓解算法和仪表板。 - [面向ML工程师的欧盟AI法案概述](https://artificialintelligenceact.eu) - 关于欧盟AI法案要求的通俗易懂指南,影响受监管背景下的ML系统设计、文档和部署。 ## 智能体系统基础设施 - [LangGraph](https://github.com/langchain-ai/langgraph) - ⭐ 🛠️ 用于将有状态、多参与者LLM应用构建为图的库;处理循环、分支和持久化,以实现可靠的智能体编排。 - [Microsoft AutoGen](https://github.com/microsoft/autogen) 🛠️ - 构建多智能体系统的框架,其中LLM智能体协作、辩论并调用工具以解决复杂任务。 - [CrewAI](https://github.com/crewAIInc/crewAI) 🛠️ - 基于角色的智能体框架,用于编排具有明确目标、工具和协作模式的AI智能体团队。 - [OpenAI Agents SDK](https://github.com/openai/openai-agents-python) 🛠️ - 官方Python SDK,用于在OpenAI模型之上构建具有工具使用、交接和防护栏的智能体工作流。 - [AgentBench](https://github.com/THUDM/AgentBench) 🎓 - 用于在现实环境(操作系统、数据库、Web)中评估LLM智能体的基准测试,对于衡量智能体系统可靠性至关重要。 - [LLM智能体的可靠性模式](https://www.anthropic.com/research/building-effective-agents) - ⭐ Anthropic的实用指南,介绍构建可靠智能体系统的模式,包括工具使用、错误恢复和多步骤推理。 ## PEFT与模型合并 - [LoRA:大型语言模型的低秩适配](https://arxiv.org/abs/2106.09685) - ⭐ 🎓 Hu等人的论文,引入低秩权重分解用于参数高效微调;PEFT生态系统的基础。 - [QLoRA:量化LLM的高效微调](https://arxiv.org/abs/2305.14314) - ⭐ 🎓 Dettmers等人的论文,通过4位量化和LoRA,使得在单个48GB GPU上完全微调65B模型成为可能。 - [DoRA:权重分解的低秩适配](https://arxiv.org/abs/2402.09353) 🎓 - 将预训练权重分解为幅度和方向,比原始LoRA更稳定和准确。 - [LoRA+](https://arxiv.org/abs/2402.12354) 🎓 - 通过为适配器矩阵A和B设置不同的学习率来改进LoRA,从而获得更快的收敛和更好的性能。 - [MergeKit](https://github.com/arcee-ai/mergekit) - ⭐ 🛠️ 使用TIES、DARE、SLERP和其他合并算法合并预训练语言模型的工具包,无需额外训练。 - [PEFT(Hugging Face)](https://github.com/huggingface/peft) - ⭐ 🛠️ Hugging Face库,统一了LoRA、前缀调优、提示调优、IA3和其他PEFT方法,具有一致的训练器API。 ## 集群管理 - [Slurm工作负载管理器](https://slurm.schedmd.com) - ⭐ 🛠️ HPC和ML训练集群的主流作业调度器;处理作业排队、资源分配和多节点GPU预留。 - [Slurm + PyTorch DDP指南](https://pytorch.org/tutorials/intermediate/ddp_series_multinode.html) - PyTorch官方教程,介绍如何使用Slurm和torchrun在多节点集群上启动分布式训练作业。 - [用于ML工作负载的Kubernetes](https://kubernetes.io/docs/concepts/workloads/) - 容器编排标准,用于生产级ML服务;是Kubeflow、Ray on Kubernetes和大多数云ML平台的基础。 - [Volcano](https://volcano.sh) - 🛠️ Kubernetes原生的批处理调度系统,用于ML工作负载;增加了组调度、队列管理和GPU拓扑感知放置。 - [Kueue](https://kueue.sigs.k8s.io) - 🛠️ Kubernetes原生的作业队列系统,用于管理批处理ML工作负载,支持公平共享、优先级和资源配额。 ## 数据质量与契约 - [Great Expectations](https://greatexpectations.io) - ⭐ 🛠️ Python框架,用于将数据质量期望定义、验证和记录为代码;ML数据管道测试的标准。 - [Apache Iceberg](https://iceberg.apache.org) - ⭐ 🛠️ 用于海量分析数据集的开放表格式,支持ACID事务、模式演进和时间旅行;越来越多地用作ML数据湖层。 - [dbt(数据构建工具)](https://getdbt.com) - 🛠️ 基于SQL的转换框架,支持测试和谱系;广泛用于构建可靠的特征管道,为ML训练提供数据。 - [Soda Core](https://github.com/sodadata/soda-core) - 🛠️ 开源数据质量测试框架,使用YAML定义检查,并集成到Airflow和dbt管道中。 - [数据契约(Andrew Jones)](https://andrew-jones.com/blog/data-contracts/) - ⭐ 关于数据契约作为系统模式的基础博文,确保数据生产者和ML消费者之间的可靠性。 - [OpenMetadata](https://open-metadata.org) - 🛠️ 端到端元数据平台,涵盖数据发现、质量、谱系以及针对ML数据资产的协作。 ## 持续训练与再训练 - [概念漂移检测综述](https://arxiv.org/abs/2004.05785) 🎓 - 关于概念漂移检测方法的综合综述,是构建再训练触发系统的重要背景知识。 - [Evidently AI](https://www.evidentlyai.com) - ⭐ 🛠️ 开源ML监控库,用于检测数据漂移、概念漂移和模型退化;生成报告并触发再训练管道。 - [WhyLabs](https://whylabs.ai) - 🛠️ ML可观测性平台,用于持续监控数据质量和模型性能,具有异常警报和漂移检测功能。 - [Fiddler AI](https://www.fiddler.ai) - 🛠️ 企业级ML监控平台,将可解释性、公平性和漂移监控集成到持续训练工作流中。 - [River](https://riverml.xyz) - 🛠️ Python在线机器学习库;支持增量模型,可在每个新样本上更新,无需完全重新训练。 - [使用神经网络的持续学习综述](https://arxiv.org/abs/1802.07569) 🎓 - Parisi等人的综述,涵盖灾难性遗忘、重放方法以及终身学习的架构方法。 ## 超参数优化 - [Optuna](https://optuna.org) - ⭐ 🛠️ 运行时定义的HPO框架,具有高效采样器(TPE、CMA-ES)和用于早停的剪枝器;与PyTorch、TensorFlow和XGBoost集成。 - [Ray Tune](https://github.com/ray-project/ray/tree/master/python/ray/tune) - ⭐ 🛠️ 基于Ray构建的分布式超参数调优库;支持基于种群的训练、ASHA以及与Optuna/Ax搜索器的集成。 - [Ax(自适应实验平台)](https://ax.dev) - 🛠️ Meta的贝叶斯优化平台,用于HPO和A/B测试;使用BoTorch进行基于GP的代理模型。 - [Hyperband和ASHA](https://arxiv.org/abs/1603.06212) 🎓 - Li等人关于Hyperband逐次减半算法的论文;是Ray Tune和Optuna中使用的现代基于早停的HPO的基础。 - [Feast(特征存储)](https://feast.dev) - 🛠️ 开源特征存储,用于管理、存储和提供ML特征;将特征工程与模型训练解耦。 - [Hopsworks特征存储](https://www.hopsworks.ai) - 🛠️ 企业级特征存储,具有版本控制、谱系和在线/离线服务;功能最全的开源选项之一。 ## 实验管理与可复现性 - [Hydra](https://hydra.cc) - ⭐ 🛠️ 优雅配置复杂ML应用的框架;支持从命令行进行层次化配置组合和多次运行扫描。 - [DVC(数据版本控制)](https://dvc.org/doc) - ⭐ 🛠️ Git集成的版本控制,用于数据集和ML实验,具有流水线DAG、远程存储支持和实验比较功能。 - [MLflow](https://mlflow.org/docs/latest/index.html) - 🛠️ 开源平台,用于跟踪实验、将代码打包为可复现的运行以及管理模型生命周期。 - [PyTorch中的确定性训练](https://pytorch.org/docs/stable/notes/randomness.html) -指南,介绍如何通过种子控制、确定性算法和环境变量实现可复现的结果。 - [Weights & Biases Sweeps](https://docs.wandb.ai/guides/sweeps) - 🛠️ 超参数扫描工具,支持贝叶斯、网格和随机搜索;与W&B实验跟踪集成,实现可复现的调优。 ## AutoML与神经架构搜索 - [硬件感知NAS综述](https://arxiv.org/abs/2101.09336) 🎓 - 关于联合优化精度和硬件效率(延迟、能耗、内存)的神经架构搜索方法的综述。 - [Once-for-All (OFA)](https://github.com/mit-han-lab/once-for-all) - ⭐ 🛠️ MIT韩松教授实验室的NAS框架,训练一个支持多个子网络的单一网络,无需重新训练即可部署到各种硬件。 - [DARTS](https://arxiv.org/abs/1806.09055) 🎓 - 可微分架构搜索,使用架构空间的连续松弛;对基于梯度的NAS有影响力的论文。 - [AutoKeras](https://autokeras.com) - 🛠️ 基于Keras的AutoML系统,用于自动化模型选择、架构搜索和超参数优化。 - [NAS-Bench-101](https://arxiv.org/abs/1902.09635) 🎓 - 基准数据集,将架构配置映射到训练精度,无需完整训练运行即可实现可复现的NAS研究。 ## 机器学习CI/CD - [用于ML的GitHub Actions](https://github.com/iterative/cml) - ⭐ 🛠️ Iterative.ai的CML(持续机器学习)支持ML的CI/CD,在GitHub Actions中提供自动化模型报告和GPU运行器。 - [Argo工作流](https://argoproj.github.io/workflows/) - 🛠️ Kubernetes原生的工作流引擎,用于将ML流水线编排为具有并行步骤、构件传递和重试逻辑的DAG。 - [Tekton](https://tekton.dev) - 🛠️ 面向Kubernetes的云原生CI/CD框架,具有可复用的流水线组件,适用于ML训练和评估流水线。 - [Kubeflow Pipelines](https://www.kubeflow.org/docs/components/pipelines/) - 🛠️ 用于在Kubernetes上构建和部署可移植、可扩展ML工作流的平台,支持组件复用和构件谱系。 - [ZenML流水线](https://docs.zenml.io/user-guides/starter-guide) - 🛠️ 用于构建与基础设施无关的ML流水线的框架,支持在本地、云和Kubernetes后端之间切换堆栈组件。 ## 实际案例研究 - [ML系统设计案例研究(精选)](https://github.com/Engineer1999/A-Curated-List-of-ML-System-Design-Case-Studies#readme) - ⭐ 来自Airbnb、DoorDash、Spotify、Netflix、Uber等公司的309个案例研究,涵盖ML平台设计、特征工程和生产部署模式。 - [Meta的LLaMA 3训练基础设施](https://engineering.fb.com/2024/03/12/data-center-engineering/building-metas-genai-infrastructure/) - ⭐ Meta深入探讨为LLaMA 3构建24,576 GPU集群的过程,涵盖网络拓扑、存储架构和大规模可靠性。 - [Google的PaLM:使用Pathways扩展语言建模](https://arxiv.org/abs/2204.02311) 🎓 - 关于使用Pathways多控制器编排系统在6144个TPU上训练540B参数模型的系统论文。 - [Uber:扩展Michelangelo ML平台](https://eng.uber.com/scaling-michelangelo/) - ⭐ Uber如何将其ML平台从数十个模型扩展到数千个模型,涵盖训练管道、特征存储和模型服务基础设施的演进。 - [Uber的Michelangelo:ML平台架构](https://www.uber.com/blog/michelangelo-machine-learning-platform/) - ⭐ 描述Uber端到端ML平台架构的原始文章,涵盖数据管理、训练、评估、部署和监控。 - [Uber的大数据平台:100+ PB](https://eng.uber.com/uber-big-data-platform/) - Uber如何构建和演进基于Hadoop的数据平台,支持实时摄入、近实时OLAP和PB级批处理ML训练。 - [Stitch Fix:用于推荐的多GPU分布式训练](https://multithreaded.stitchfix.com/blog/2023/06/08/distributed-model-training/) - 实现个性化模型多GPU分布式训练的实践演练,包括基础设施选择和权衡。 - [PayPal:ML模型CI/CD与影子平台](https://medium.com/paypal-tech/machine-learning-model-ci-cd-and-shadow-platform-8c4f44998c78) - ⭐ PayPal如何为大规模欺诈检测模型构建影子部署和CI/CD系统,实现零生产风险的安全发布。 - [Booking.com:150个成功的ML模型——6个经验教训](https://blog.acolyer.org/2019/10/07/150-successful-machine-learning-models/) - ⭐ 部署150+生产ML模型的经典经验教训:离线指标与业务影响之间的差距、反馈循环和大规模监控。 - [Spotify:大规模用户预测的基础设施](https://engineering.atspotify.com/2022/06/how-we-built-infrastructure-to-run-user-forecasts-at-spotify/) - Spotify如何在Dataflow和BigQuery之上构建可扩展的预测基础设施,每天运行数百万用户级预测。 - [GitHub Copilot:构建企业级LLM应用](https://github.blog/2023-09-06-how-to-build-an-enterprise-llm-application-lessons-from-github-copilot/) - 大规模构建Copilot的工程经验:延迟、上下文管理、评估管道以及在生产中迭代LLM驱动的功能。 - [Instacart:大规模商品可用性架构](https://www.instacart.com/company/how-its-made/instacarts-item-availability-architecture-solving-for-scale-and-consistency/) - Instacart如何解决数亿SKU实时商品可用性预测中的规模和一致性双重挑战。 - [DoorDash:用于调度的ML和优化](https://doordash.engineering/2021/08/17/using-ml-and-optimization-to-solve-doordashs-dispatch-problem/) - DoorDash如何将ML与组合优化相结合进行实时调度,涵盖延迟约束、模型服务和系统集成。 - [Twitter:推荐算法(开源)](https://blog.twitter.com/engineering/en_us/topics/open-source/2023/twitter-recommendation-algorithm) - Twitter开源推荐系统的完整演练,包括候选生成、排序、过滤以及服务于5亿日活用户的基础设施。 - [Databricks Dolly:微调LLM的经验教训](https://www.databricks.com/blog/2023/04/12/dolly-first-open-commercially-viable-instruction-tuned-llm) - 在单台机器上微调生产级指令遵循LLM的实践经验和诚实发现,涉及数据质量和计算效率。 ## 贡献 欢迎贡献!请先阅读[贡献指南](CONTRIBUTING.md)。
标签:AI工程, Apex, CNCF毕业项目, LLMOps平台, LLM可观察性, LLM评估, MLOps, ML框架, Ollama, RLHF基础设施, Vectored Exception Handling, 书籍, 人工智能, 内存高效训练, 内核编程, 凭据扫描, 分布式训练, 可持续AI, 可靠性, 合成数据生成, 向量数据库, 基础, 多模态系统, 子域名突变, 存储系统, 安全隐私, 容错, 嵌入式ML, 性能分析, 推理, 推理服务, 数据工程, 机器学习, 机器学习系统工程, 检索系统, 模型部署, 深度学习系统, 生产操作, 生产部署, 用户模式Hook绕过, 硬件, 硬件加速器, 神经网络编译器, 系统优化, 编译器, 网络互连, 课程, 边缘计算, 部署策略, 量化压缩, 集合通信