AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

Pinterest 使用 Ray 实现机器学习基础设施现代化

作者:Matt Saunders

  • 2024-10-01
    北京
  • 本文字数:1943 字

    阅读完需:约 6 分钟

Pinterest 使用 Ray 实现机器学习基础设施现代化

视觉发现平台 Pinterest 披露了其使用开源分布式计算框架 Ray 实现机器学习基础设施现代化的详细过程。在最近的一篇博文中,该公司分享了将 Ray 集成到大规模生产环境中所面临的挑战和他们的实施方案。


这个项目的目的是为了增强 Pinterest 的机器学习能力,以解决基本的业务问题。


Pinterest 在构建 Ray 基础设施时面临着几个独特的挑战。他们决定在他们的通用联合 Kubernetes 集群 PinCompute 上运行 Ray,但该集群限制安装 KubeRay 及其自定义资源定义等必要的操作符。要有效地实施 Ray,就需要有一个创造性的解决方案来消除这个限制。


其他挑战包括需要持久化日志记录和指标、与 Pinterest 专有的时间序列数据库和可视化工具集成,以及遵守公司范围内的 AAA(身份验证、授权和计费)准则。


为了应对这些挑战,Pinterest 开发了一个自定义解决方案,包括 API 网关、Ray 集群控制器、Ray 作业控制器和用于外部状态管理的 MySQL 数据库。这种方法在用户和 Kubernetes 之间提供了一个抽象层,简化了 Ray 集群的配置和管理。



该公司还创建了一个专用的用户界面,用于持久化日志记录和指标。在该 UI 上,不需要一个活跃的 Ray 集群就可以进行日志分析,这有助于降低与 GPU 等空闲资源相关的成本。为了提高可观察性,Pinterest 将 Ray 的指标与其内部时间序列数据库 Goku 整合在了一起。该数据库拥有与 OpenTSDB 兼容的 API。他们还遵循 Ray 的建议,将日志持久化到了 AWS S3 上。


Pinterest 使用网络隔离与完整身份验证实现了适当的安全措施。他们在 Envoy 后面部署了 Ray Dashboard,在 Kubernetes 环境中部署了他们的服务网格,并在 gRPC 通信中使用了经过定制的 TLS。


这篇博文强调了渐进式改进、利用现有基础设施以及定期与内部客户会面以收集反馈的重要性。按照 Pinterest 的说法,采用 Ray 提高了将机器学习想法投入生产应用的速度,现在只需几天,而不是几周。



关于 Pinterest 等公司如何将 Ray 应用于大规模机器学习任务,在 2023 年 QCon Plus 的一次演讲中,来自 Anyscale 的 Zhe Zhang 提供了更多的背景信息。他强调,Ray 的灵活性和易用性使其对希望实现机器学习基础设施现代化的组织特别有吸引力。他描述了 Ray 如何在多于一个实例时实现无缝数据加载和预处理,这对于拥有大量数据集的公司来说至关重要。该功能解决了 ML 工作流中数据处理无法跟上 GPU 计算速度这个常见的瓶颈。


他还指出,Ray 能够有效地支持异构计算环境,将 CPU 和 GPU 资源相结合,对于像 Pinterest 这样需要优化硬件利用率的公司来说,这是一个很大的优点。他还讨论了 Ray 的生态系统,包括 Ray Serve 这样的库,以及如何快速实现原型和 ML 模型的部署,这与 Pinterest 报道的开发速度的提高是一致的。


DoorDash 是一家规模与 Pinterest 相似的科技公司。他们也经历了机器学习基础设施现代化的过程。虽然他们采用了类似的方法,但也有一些差异。在 2023 年 Ray 峰会的演讲中,来自 DoorDash 的 Siddarth Kodwani 和 Kornel Csernai 介绍了他们使用 Ray 的场景。


与 Pinterest 一样,DoorDash 现有的机器学习服务平台也面临着挑战。Sibyl 是一个部署在 Kubernetes 中的 Kotlin 微服务,针对高吞吐量、低延迟场景做过专门的优化,但对于比较新的 ML 范例和库,缺乏灵活性。DoorDash 的解决方案 Argil 与 Pinterest 的方法有一些相似之处。两家公司都构建了自定义控制器来管理 Ray 集群和作业,并将它们与现有的 Kubernetes 基础设施集成在一起。



然而,DoorDash 强烈地感受到,他们应该为他们的数据科学家和机器学习工程师创建一个自助服务平台。他们的服务主要是用 Kotlin 开发的。于是,他们用 Kotlin 开发了一个客户端库,以便简化其服务与 Ray 基础设施的交互。DoorDash 在 Kubernetes 环境中也面临着 GPU 可访问性的独特挑战,关于这一点,他们需要通过与 Nvidia 的密切合作来解决驱动程序兼容性问题。


Pinterest 和 DoorDash 的一个显著差异在于部署策略。Pinterest 致力于从头开始构建自定义解决方案,而 DoorDash 则利用 Ray 团队提供的 Helm charts 和 Argo CD 等现有工具进行部署管理。


DoorDash 报道的好处与 Pinterest 类似,比如提高了速度和灵活性。他们将机器学习想法投入生产应用的时间从几周缩短到几天。他们还看到了显著的性能提升,从以前的系统迁移到 Ray 之后,一些用例的性能提升了 10 到 20 倍。两家公司都强调了可观察性和监控的重要性。Pinterest 整合了他们自定义的 Goku 时间序列数据库,而 DoorDash 则提到,他们直接整合了 Prometheus 来收集指标。


总之,尽管 Pinterest 和 DoorDash 采用 Ray 的方式略有不同,但两家公司都表示,在机器学习基础设施的灵活性、开发速度和性能方面都获得了显著改善。


原文链接:

https://www.infoq.com/news/2024/08/pinterest-machine-learning-ray/

2024-10-01 08:0515327

评论

发布
暂无评论
发现更多内容

AI对话魔法|Prompt Engineering 探索指南

京东科技开发者

Schema Free

DashVector

人工智能 大数据 AI 向量检索 大模型

Agent 智能体开发框架选型指南

Baihai IDP

程序员 AI 智能体 Agents

简述大前端技术栈的渲染原理

京东科技开发者

【EMNLP2024】面向长文本的文视频表征学习与检索模型 VideoCLIP-XL

阿里云大数据AI技术

人工智能 自然语言处理 阿里云 论文 EMNLP

JinaCLIP×Milvus:手把手教你搭建多模态RAG系统

Zilliz

多模态 rag clip模型 jinaclip

安全、合规!华为云助力源康健加速医疗产业数智化转型

YG科技

探索淘宝API:如何高效获取商品类目信息

代码忍者

glibc 内存分配与释放机制详解

vivo互联网技术

开源 glibc 内存管理 内存泄漏

如何用CST自带宏提取材料的DK,Df值

思茂信息

cst cst使用教程 cst电磁仿真 cst仿真软件

袋鼠云港口数智化解决方案发布,数智引领,加速“智变”

袋鼠云数栈

融云「北极星」专业版:指标异常及时告警,趋势变化预先知悉

融云 RongCloud

融云:社交泛娱乐出海机会尚存,跨境电商异军突起

融云 RongCloud

在使用Alt+Tab切换程序时 Windows 11 24H2会出现黑屏

吴脑的键客

windows Windows 10 Windows11

一文理解布隆过滤器和布谷鸟过滤器

京东科技开发者

Netty 如何自动探测内存泄露的发生

bin的技术小屋

内存泄露 Netty 内存泄露检测 netty内存管理 Java.

条件过滤检索

DashVector

向量检索 大模型 向量数据库

第73期 | GPTSecurity周报

云起无垠

GreptimeDB v0.9 重磅发布|引入日志存储引擎,支持日志指标数据联合分析!

Greptime 格睿科技

云原生 时序数据库

云计算与低代码:实现无缝集成与高效部署的最佳实践

天津汇柏科技有限公司

云计算 低代码

达摩院发布八观气象大模型:精度达1小时1公里,率先落地新能源场景

吴脑的键客

人工智能 阿里巴巴

向量检索服务-应用场景

DashVector

人工智能 数据库 向量检索 大模型

探讨拼多多商品 API 接口:运用及收益

科普小能手

API接口工具 API 接口 API 测试 pinduoduo API 拼多多API

小间距LED显示屏,我们还可以了解哪些

Dylan

LED显示屏 全彩LED显示屏 led显示屏厂家 户内led显示屏 市场

实战指南:高效高并发批量采集1688商品详情接口

代码忍者

API 接口 pinduoduo API

产品经理应该是“全才”还是“专才”?

科技热闻

创元集团携手火山引擎,数据飞轮驱动美妆品牌数字化转型

字节跳动数据平台

大数据 数智化转型 数字化平台 企业 AI 应用

HyperWorks的实体几何创建与六面体网格剖分

智造软件

Hypermesh 仿真分析 有限元

Pinterest 使用 Ray 实现机器学习基础设施现代化_云计算_InfoQ精选文章