Desbloqueando o Poder do Open Source: Como a IBM Watson X Alavanca a Inovação

Descubra como o IBM Watson X aproveita a inovação de código aberto para impulsionar a IA empresarial e os dados. Explore as ferramentas e tecnologias de código aberto, incluindo Codeflare, PyTorch, KServe e Presto, que impulsionam o treinamento de modelos, ajustes e análise de dados em escala no OpenShift.

18 de fevereiro de 2025

party-gif

Descubra como a plataforma Watson X da IBM aproveita o poder do código aberto para oferecer soluções de IA e dados de ponta. Explore as tecnologias de código aberto que permitem um treinamento, ajuste e inferência eficientes de modelos, bem como a coleta e análise de dados sem problemas. Este post de blog fornece uma visão geral abrangente de como o código aberto impulsiona a inovação dentro do Watson X, capacitando as empresas a aproveitar o melhor da IA e dos dados.

Os Benefícios do Open Source no Watson X

A IBM tem uma longa história de contribuir e aproveitar o código aberto em suas ofertas. Essa tradição continua com o Watson X, a nova plataforma Enterprise da IBM para IA e dados. Ao abraçar o código aberto, o Watson X se beneficia das melhores IA, inovação e modelos disponíveis.

O uso de código aberto no Watson X abrange três aspectos-chave: treinamento e validação de modelos, ajuste e inferência de modelos, e coleta e análise de dados.

Para o treinamento e validação de modelos, o Watson X aproveita o projeto de código aberto Codeflare. O Codeflare fornece abstrações fáceis de usar para dimensionar, enfileirar e implantar cargas de trabalho de aprendizado de máquina, integrando-se com Ray, Kubernetes e PyTorch.

O PyTorch, o framework de aprendizado de máquina de código aberto, é usado para representar os modelos no Watson X. O PyTorch oferece recursos-chave, como suporte a tensores, aceleração de GPU e treinamento distribuído, permitindo o manuseio eficiente de modelos grandes e complexos.

Para o ajuste e inferência de modelos, o Watson X utiliza os projetos de código aberto KServe e Model Mesh. Essas tecnologias permitem o atendimento eficiente de milhares de modelos de IA na plataforma OpenShift. Além disso, o projeto de código aberto KKIT fornece APIs para ajuste de prompt, aprimorando ainda mais os recursos de inferência.

Finalmente, para a coleta e análise de dados, o Watson X aproveita o mecanismo de consulta SQL de código aberto Presto. O alto desempenho, escalabilidade e capacidade do Presto de consultar dados onde eles residem o tornam um componente valioso do ecossistema de dados do Watson X.

Ao abraçar as tecnologias de código aberto, o Watson X se beneficia das melhores IA, inovação e modelos disponíveis, capacitando os usuários a construir e implantar aplicativos inteligentes em escala.

Treinamento e Validação de Modelos com Codeflare

O treinamento e a validação de modelos podem consumir uma grande quantidade de recursos de cluster, especialmente quando os modelos são modelos de Fundação gigantescos com parâmetros de vários bilhões. Para usar um cluster de forma eficiente e facilitar o trabalho dos cientistas de dados, a IBM tem um projeto de código aberto chamado Codeflare.

O Codeflare fornece abstrações fáceis de usar para dimensionar, enfileirar e implantar cargas de trabalho de aprendizado de máquina. Ele se integra ao Ray, Kuberay e PyTorch para fornecer esses recursos. Com o Ray, ele fornece uma abstração de trabalho, e o Kuberay permite que o Ray seja executado em plataformas Kubernetes como o OpenShift.

Em um caso de uso típico do Codeflare, ele primeiro inicia um cluster Ray. O cientista de dados pode então enviar trabalhos de treinamento para o cluster. Se o cluster OpenShift estiver sendo muito utilizado e os recursos não estiverem disponíveis, o Codeflare pode enfileirar os trabalhos e aguardar até que os recursos fiquem disponíveis. Em alguns casos, ele pode até mesmo dimensionar o cluster para acomodar a carga de trabalho. Quando o treinamento e a validação estiverem concluídos, o Codeflare pode excluir os trabalhos Ray e removê-los do cluster.

O principal benefício do Codeflare é que ele permite que os cientistas de dados usem um cluster, ou mesmo vários clusters OpenShift, de forma eficiente, sem se preocupar com a infraestrutura subjacente.

Representando Modelos com PyTorch

O PyTorch fornece recursos-chave para representar modelos, incluindo suporte a tensores, suporte a GPU e treinamento distribuído.

Os tensores são matrizes multidimensionais que armazenam os valores ponderados ou as probabilidades que são ajustados ao longo do tempo para melhorar as capacidades preditivas do modelo. O suporte a tensores do PyTorch permite a representação eficiente desses parâmetros de modelo complexos.

O suporte a GPU do PyTorch permite um cálculo altamente eficiente durante o treinamento do modelo, o que é crucial para modelos grandes e complexos. Além disso, os recursos de treinamento distribuído do PyTorch permitem o treinamento de modelos que são grandes demais para caber em uma única máquina, distribuindo o treinamento por várias máquinas.

Outros recursos-chave do PyTorch para representação de modelos incluem:

  • Criação de redes neurais: o PyTorch facilita a criação de vários tipos de redes neurais.
  • Carregamento de dados: o PyTorch fornece recursos de carregamento de dados fáceis de usar.
  • Loops de treinamento: o PyTorch inclui loops de treinamento integrados que atualizam eficientemente os parâmetros do modelo para melhorar a precisão preditiva.
  • Ajustes de modelo: o recurso de cálculo de gradiente automático do PyTorch simplifica o processo de fazer pequenos ajustes no modelo para melhorar seu desempenho.

Ao aproveitar esses recursos de código aberto fornecidos pelo PyTorch, o Watson X pode representar e treinar modelos de IA complexos de maneira eficiente como parte de sua plataforma de IA e dados de nível empresarial.

Ajuste de Modelos e Inferência com Tecnologias Open Source

Nós queremos ser capazes de atender a um grande número de modelos de IA e fazê-lo em escala no OpenShift. Os projetos de código aberto que usamos para isso são o KServ Model Mesh e o KKit.

O KServ Model Mesh nos permite atender eficientemente a milhares de modelos em um único pod. Originalmente, o KServ só podia atender um modelo por pod, o que não era muito eficiente. Ao fundir o KServ com o projeto Model Mesh, agora podemos atender a um grande número de modelos de forma eficiente em um cluster OpenShift.

Para encontrar esses modelos, aproveitamos o repositório Hugging Face, que possui mais de 200.000 modelos de código aberto. A IBM tem uma parceria com a Hugging Face, tornando-a uma ótima fonte de modelos a serem usados em nossas ofertas Watson X.

Adicionalmente, usamos o KKit, um projeto de código aberto que fornece APIs para ajuste de prompt. Isso nos permite ajustar os modelos no lado da inferência para melhorar os resultados.

Juntas, essas tecnologias de código aberto nos permitem atender e ajustar um grande número de modelos de IA em escala no OpenShift, alimentando os recursos de inferência de modelos do Watson X.

Coleta de Dados e Análises com Presto

O Presto é o projeto de código aberto que a IBM aproveita para a coleta e análise de dados no Watson X. O Presto é um mecanismo de consulta SQL de alto desempenho que permite a análise de dados abertos e alimenta o data lakehouse aberto.

Os principais recursos do Presto incluem:

  • Alto Desempenho: O Presto é altamente escalável e fornece execução de consultas rápida, tornando-o adequado para análises de dados em larga escala.

  • Consultas Federadas: O Presto permite consultar dados de várias fontes de dados, fornecendo uma visão unificada de seus dados.

  • Consultar Dados Onde Eles Residem: O Presto pode consultar dados diretamente em seu local de origem, eliminando a necessidade de mover os dados para um repositório centralizado.

Ao usar o Presto, o Watson X pode coletar e analisar eficientemente dados de várias fontes, permitindo insights baseados em dados e alimentando os recursos de IA e aprendizado de máquina da plataforma.

Perguntas frequentes