Ray
Ray é um motor de computação AI de código aberto para executar cargas de trabalho distribuídas em Python em CPUs e GPUs. Ele orquestra treinamentos, inferências, processamento de dados e aprendizado por reforço, permitindo que equipes passem de um protótipo em laptop para clusters de produção sem precisar reescrever seu código. O projeto é mantido pela Anyscale e alimenta plataformas de AI em grande escala usadas na produção atualmente.
Ray é nativo em Python e construído em torno de um pequeno conjunto de primitivas: tarefas, atores e objetos. Esse design permite distribuir funções e classes Python comuns, ao invés de aprender uma API de cluster separada. Bibliotecas de alto nível ficam por cima para carregamento de dados, ajuste de hiperparâmetros, treinamento de modelos, serving e fluxos de trabalho de RL.
A estrutura é direcionada a engenheiros de ML, cientistas de dados e equipes de plataforma que precisam de escalabilidade granular em hardware heterogêneo. Ray suporta dados multimodais, treinamento de models de foundation, inferência em lote e online de LLMs, pipelines de GenAI e modelos clássicos de ML através de bibliotecas como Ray Data, Train, Serve, Tune e RLlib.
Escale códigos Python de um laptop para milhares de GPUs
Ray Data lida com imagens, vídeo, áudio e conjuntos de dados estruturados
Treinamento distribuído de modelos foundation com uma linha de código
Ray Serve escala modelos independentemente com recursos fracionários de GPU
Inferência em lote e online de LLM em pipelines mistos de CPU e GPU
Ray RLlib executa cargas de trabalho de aprendizado por reforço em produção
Framework open source com 34,8 mil estrelas no GitHub e mais de 1.000 colaboradores listados no ray.io.
Abrange o ciclo completo de ML através das bibliotecas Ray Data, Train, Tune, Serve e RLlib.
Escala desde o desenvolvimento local até grandes clusters de GPU com APIs nativas em Python.
Suporta clusters heterogêneos de CPU e GPU com escalonamento independente para cada carga de trabalho.
Hospedagem gerenciada e recursos empresariais estão disponíveis no Anyscale, não diretamente no ray.io.
A maior parte da documentação e guias detalhados de configuração estão disponíveis em docs.ray.io, em vez do site de marketing.
Especialização em sistemas distribuídos ainda é necessária para operações de cluster em produção, além do desenvolvimento local.
O Ray é gratuito para usar?
Sim. O Ray é um software open source que você pode instalar e executar na sua própria infraestrutura sem custo. O framework principal, as bibliotecas e a documentação em docs.ray.io estão todos disponíveis sem assinatura.
Quais cargas de trabalho de IA o Ray suporta?
O Ray suporta código Python paralelo, processamento de dados multimodais, treinamento distribuído de modelos, serviço de modelos online e em lote, inferência em lote, aprendizado por reforço, fluxos de trabalho GenAI, inferência LLM e ajuste fino LLM. A página inicial lista casos de uso que abrangem simulação, backtesting, aplicações RAG e treinamento de modelos base.
Quais bibliotecas estão incluídas com o Ray?
O Ray vem com o Ray Core mais bibliotecas de alto nível: Ray Data para processamento de dados, Ray Train para treinamento distribuído, Ray Tune para busca de hiperparâmetros, Ray Serve para implantação de modelos e Ray RLlib para aprendizado por reforço. A documentação e as páginas do produto em ray.io também mencionam o Ray LLM para cargas de trabalho de grandes modelos de linguagem.
Qual linguagem de programação o Ray usa?
O Ray é nativo em Python. Você escreve funções e classes Python padrão, e o Ray as distribui por um cluster. O site descreve o Ray como criado por desenvolvedores para desenvolvedores que querem escalar código Python existente sem adotar uma nova linguagem ou camada de cluster específica de framework.
Como obter ajuda ou participar da comunidade Ray?
O Ray mantém um workspace comunitário no Slack, fóruns de discussão em discuss.ray.io, um repositório no GitHub em github.com/ray-project/ray e uma conta no X em @raydistributed. O Ray.io também indica cursos de treinamento da Anyscale e documentação em docs.ray.io para aprendizado prático.
O Ray pode usar diferentes GPUs e CPUs na mesma carga de trabalho?
Sim. O Ray é projetado para computação heterogênea. O site destaca escalonamento independente entre GPUs e CPUs mistos, alocação fracionada de recursos e pipelines que combinam pré-processamento em CPU com inferência em GPU para melhorar a utilização e reduzir custos de inferência em lote.

