开启开源力量:IBM Watson X如何利用创新
探索 IBM Watson X 如何利用开源创新来驱动企业人工智能和数据。探索包括 Codeflare、PyTorch、KServe 和 Presto 在内的开源工具和技术,这些工具和技术在 OpenShift 上支持模型训练、调优和大规模数据分析。
2025年1月15日
探索IBM Watson X平台如何利用开源技术的力量提供尖端的人工智能和数据解决方案。探索支持高效模型训练、调优和推理以及无缝数据采集和分析的开源技术。本博客文章全面概述了开源如何推动Watson X内部的创新,让企业能够利用人工智能和数据的最佳优势。
Watson X 中开源的优势
Watson X 中开源的优势
IBM有一个悠久的历史,一直在为其产品做出开源贡献并利用开源。这一传统在IBM的新一代企业级AI和数据平台Watson X中得以延续。通过拥抱开源,Watson X可以利用最先进的AI、创新和模型。
Watson X在三个关键方面使用了开源技术:模型训练和验证、模型调优和推理、以及数据收集和分析。
对于模型训练和验证,Watson X利用了开源项目Codeflare。Codeflare为扩展、排队和部署机器学习工作负载提供了用户友好的抽象,并与Ray、Kubernetes和PyTorch进行集成。
PyTorch,这个开源的机器学习框架,被用来表示Watson X中的模型。PyTorch提供了诸如张量支持、GPU加速和分布式训练等关键功能,可以高效地处理大型复杂模型。
对于模型调优和推理,Watson X利用了开源项目KServe和Model Mesh。这些技术允许在OpenShift平台上高效地服务数千个AI模型。此外,开源项目KKIT提供了用于提示调优的API,进一步增强了推理功能。
最后,对于数据收集和分析,Watson X利用了开源SQL查询引擎Presto。Presto的高性能、可扩展性以及在数据所在位置进行查询的能力,使其成为Watson X数据生态系统的一个有价值的组件。
通过采用开源技术,Watson X可以利用最佳的AI、创新和模型,为用户提供构建和部署智能应用程序的能力。
使用 Codeflare 进行模型训练和验证
使用 Codeflare 进行模型训练和验证
训练和验证模型可能需要大量的集群资源,特别是当模型是巨大的多十亿参数的基础模型时。为了有效利用集群并使数据科学家更容易使用,IBM有一个名为Codeflare的开源项目。
Codeflare为扩展、排队和部署机器学习工作负载提供了用户友好的抽象。它与Ray、Kuberay和PyTorch集成,提供这些功能。通过Ray,它提供了作业抽象,而Kuberay允许Ray在OpenShift等Kubernetes平台上运行。
在一个典型的Codeflare用例中,它首先启动一个Ray集群。数据科学家可以将训练作业提交到集群。如果OpenShift集群被大量使用且资源不足,Codeflare可以将作业排队并等待资源可用。在某些情况下,它甚至可以扩展集群以适应工作负载。当训练和验证完成后,Codeflare可以删除Ray作业并将其从集群中移除。
Codeflare的关键优势是,它使数据科学家能够有效地使用一个集群,甚至多个OpenShift集群,而无需担心底层基础设施。
使用 PyTorch 表示模型
使用 PyTorch 表示模型
PyTorch为表示模型提供了关键功能,包括张量支持、GPU支持和分布式训练。
张量是存储加权值或概率的多维数组,这些值会随时间而调整,以提高模型的预测能力。PyTorch的张量支持可以高效地表示这些复杂的模型参数。
PyTorch的GPU支持允许在模型训练期间进行高效的计算,这对于大型复杂模型至关重要。此外,PyTorch的分布式训练功能使得即使模型太大而无法在单台机器上训练,也可以通过在多台机器上分布式训练来解决。
PyTorch在模型表示方面的其他关键功能包括:
- 神经网络创建:PyTorch使创建各种类型的神经网络变得容易。
- 数据加载:PyTorch提供了易于使用的数据加载功能。
- 训练循环:PyTorch包含可高效更新模型参数以提高预测准确性的内置训练循环。
- 模型调整:PyTorch的自动梯度计算功能简化了对模型进行微调以提高性能的过程。
通过利用PyTorch提供的这些开源功能,Watson X可以高效地表示和训练复杂的AI模型,作为其企业级AI和数据平台的一部分。
使用开源技术进行模型调优和推理
使用开源技术进行模型调优和推理
我们希望能够服务大量的AI模型,并在OpenShift上进行大规模部署。我们利用的开源项目包括KServ Model Mesh和KKit。
KServ Model Mesh使我们能够在单个pod中高效地服务数千个模型。最初,KServ只能在每个pod中服务一个模型,这效率很低。通过将KServ与Model Mesh项目合并,我们现在可以在OpenShift集群上高效地服务大量模型。
为了找到这些模型,我们利用了Hugging Face存储库,该存储库拥有超过20万个开源模型。IBM与Hugging Face有合作关系,这使其成为我们Watson X产品使用的绝佳模型来源。
此外,我们使用了开源项目KKit,它提供了用于提示调优的API。这使我们能够在推理阶段对模型进行微调,以改善结果。
这些开源技术共同使我们能够在OpenShift上大规模服务和调优大量AI模型,为Watson X的模型推理功能提供支持。
使用 Presto 进行数据收集和分析
使用 Presto 进行数据收集和分析
Presto是IBM在Watson X中用于数据收集和分析的开源项目。Presto是一个高性能的SQL查询引擎,支持开放数据分析和开放数据湖仓。
Presto的关键特性包括:
- 高性能:Presto具有高度可扩展性,提供快速的查询执行,非常适合大规模数据分析。
- 联合查询:Presto允许您跨多个数据源进行查询,提供统一的数据视图。
- 就地查询数据:Presto可以直接在数据源位置进行查询,无需将数据移动到集中式存储库。
通过使用Presto,Watson X可以高效地收集和分析来自各种来源的数据,为平台的AI和机器学习功能提供数据支撑。
结论
结论
IBM有丰富的开源贡献和利用开源的历史,Watson X延续了这一传统。Watson X是IBM的新一代企业级AI和数据平台,它利用开源技术提供最佳的AI、创新和模型。
Watson X使用的开源项目涵盖了AI和数据管道的各个方面,包括模型训练和验证、模型表示、模型调优和推理,以及数据收集和分析。
对于模型训练和验证,Watson X利用了开源项目Codeflare,它为扩展、排队和部署机器学习工作负载提供了用户友好的抽象。它与Ray、Kubeflow和PyTorch集成,实现了集群资源的高效利用。
PyTorch是用于表示Watson X中模型的开源项目,提供了张量支持、GPU支持和分布式训练等关键功能。
对于模型调优和推理,Watson X利用了开源项目KServ Model Mesh和Hugging Face,它们使得在OpenShift集群上高效地服务数千个AI模型成为可能。此外,开源项目KKit提供了用于提示调优的API,以改善结果。
最后,对于数据收集和分析,Watson X使用了开源SQL查询引擎Presto,这是一个用于开放数据分析和开放数据湖仓的高性能引擎。
通过拥抱开源,Watson X延续了IBM推动创新和提供最佳AI和数据解决方案的传统。
常问问题
常问问题