A escolha depende de vários fatores.
Cloud Storage como um sistema de arquivos ativado (Cloud Storage FUSE)
Considere usar o Cloud Storage como um sistema de arquivos ativado (Cloud Storage FUSE) pelos seguintes motivos:
- Quando os dados de treinamento não são estruturados, como imagens, textos ou vídeos: o Cloud Storage é uma opção natural para armazenar esses tipos de arquivos grandes e geralmente individuais.
- Quando os dados de treinamento são estruturados em formatos como TFRecord: o Cloud Storage é usado com frequência para esses formatos específicos de ML.
- Ao trabalhar com arquivos muito grandes: o Cloud Storage FUSE transmite os dados para o job de treinamento em vez de exigir que o arquivo inteiro seja baixado para as réplicas. Isso pode levar a um carregamento de dados mais rápido e tempos de inicialização de jobs para conjuntos de dados grandes.
- Ao realizar o treinamento distribuído: o Cloud Storage FUSE oferece alta capacidade para leituras sequenciais de arquivos grandes, o que é benéfico em cenários de treinamento distribuído em que vários workers precisam acessar dados em paralelo.
- Quando você prefere a conveniência de acessar dados do Cloud Storage como se fosse um sistema de arquivos local, sem precisar fazer chamadas de API explícitas no código de treinamento.
- Quando sua principal necessidade é o armazenamento escalonável e você não se preocupa tanto com a latência mais baixa para acesso aleatório a vários arquivos pequenos.
Específico para o Ray na Agent Platform
- Você pode armazenar seus dados em buckets do Cloud Storage, que o Ray na Agent Platform pode acessar.
- O Ray pode ler dados diretamente do Cloud Storage. Por exemplo, ao executar Spark no Ray, é possível ler arquivos do Cloud Storage.
- A Agent Platform usa o Cloud Storage FUSE para ativar buckets do Cloud Storage como sistemas de arquivos locais nos jobs de treinamento em execução no Ray. Isso permite que os aplicativos do Ray acessem dados como se estivessem em um disco local usando operações padrão de E/S de arquivos.
- Para ter um desempenho ideal, recomendamos que você use buckets do Cloud Storage na mesma região em que está executando o cluster do Ray.
Saiba mais
Compartilhamento do sistema de arquivos de rede (NFS)
- Quando você exige capacidade de processamento muito alta e acesso de baixa latência a arquivos remotos, como se eles estivessem armazenados localmente. Isso pode ser importante para determinados tipos de dados ou interações complexas de arquivos durante o treinamento.
- Quando você precisa disponibilizar arquivos remotos para todos os nós em um cluster de computação, como um cluster do Ray na Agent Platform.
- Quando o aplicativo se beneficia de uma interface de sistema de arquivos mais padrão com conformidade POSIX potencialmente mais forte em comparação com o Cloud Storage FUSE.
- Você tem uma infraestrutura de NFS na sua nuvem privada virtual que quer usar.
- Você precisa compartilhar arquivos ou diretórios em vários jobs ou clusters com acesso consistente e de baixa latência, e o gerenciamento de permissões no nível do sistema de arquivos é preferível.
Específico para o Ray na Agent Platform
- Você pode ativar compartilhamentos de NFS no cluster do Ray na Agent Platform, tornando os arquivos remotos acessíveis como se fossem locais.
- Isso é benéfico para acesso de alta capacidade de processamento e baixa latência a sistemas de arquivos compartilhados.
- É possível configurar montagens de NFS ao criar o cluster do Ray usando o SDK da Agent Platform para Python, especificando o servidor, o caminho e o ponto de montagem. Depois de ativado, o código do Ray pode ler e gravar nesses volumes de NFS usando operações de arquivo padrão.
Saiba mais
Conjunto de dados gerenciado
- Gerenciamento e governança de dados centralizados: os conjuntos de dados gerenciados oferecem um local central para organizar e gerenciar seus conjuntos de dados na Agent Platform. Isso ajuda no rastreamento e na governança dos seus recursos de dados em diferentes projetos e experimentos.
- Identificação de dados: é possível criar tarefas de identificação e gerenciar conjuntos de anotações diretamente no conjunto de dados gerenciado.
- Rastreamento da linhagem de dados: os conjuntos de dados gerenciados rastreiam automaticamente a linhagem dos dados para os modelos treinados neles. Isso é fundamental para entender as fontes de dados usadas para modelos específicos e para garantir a reprodutibilidade e a governança.
- Comparação de modelos personalizados e do AutoML: os conjuntos de dados gerenciados permitem treinar modelos personalizados e do AutoML usando os mesmos dados. Isso facilita uma comparação direta da performance deles no mesmo conjunto de dados, ajudando você a escolher a melhor abordagem para o problema.
- Geração de estatísticas e visualizações de dados: a Agent Platform pode gerar automaticamente estatísticas e visualizações para os dados em um conjunto de dados gerenciado. Isso pode ajudar na análise exploratória de dados e a entender as características dos dados.
- Divisão automática de dados: ao usar conjuntos de dados gerenciados em pipelines de treinamento, a Agent Platform pode dividir automaticamente os dados em conjuntos de treinamento, validação e teste com base em frações, filtros, divisões predefinidas ou carimbos de data/hora especificados. Isso simplifica o processo de preparação de dados.
- Utilização de versões de conjuntos de dados: os conjuntos de dados gerenciados permitem o controle de versões, o que permite rastrear as mudanças nos dados ao longo do tempo e reverter para versões anteriores, se necessário.
Específico para o Ray na Gemini Enterprise Agent Platform
- Se você usar um conjunto de dados gerenciado em um pipeline de treinamento da Agent Platform que utiliza o Ray para treinamento distribuído, os dados do conjunto de dados gerenciado serão disponibilizados para os contêineres de treinamento, que o aplicativo do Ray poderá acessar (via Cloud Storage ou BigQuery ativado se o conjunto de dados estiver vinculado a essas fontes). As variáveis de ambiente
AIP_TRAINING_DATA_URI,AIP_VALIDATION_DATA_URIeAIP_TEST_DATA_URIapontariam para os dados.
Saiba mais
BigQuery
- Ao se conectar a dados nos componentes da Agent Platform: muitas ferramentas e serviços da Agent Platform são integrados diretamente ao BigQuery. É possível consultar dados no BigQuery sem sair do JupyterLab. Isso permite interagir diretamente com os dados do BigQuery para exploração, visualização e desenvolvimento de modelos sem precisar movê-los para outro sistema de armazenamento.
- Ao criar pipelines de treinamento: ao criar pipelines de treinamento na Agent Platform, é possível usar dados diretamente do BigQuery. Por exemplo, um pipeline pode buscar dados do BigQuery, pré-processá-los e treinar um modelo.
- Pipelines de treinamento de modelo contínuo: para configurar o treinamento de modelo contínuo, é possível acionar execuções de pipeline com base em novos dados que chegam a uma tabela do BigQuery. Isso permite a automação do retreinamento de modelos. É possível configurar um acionador do Eventarc para iniciar um pipeline quando um novo job é inserido em uma tabela específica do BigQuery.
- Monitoramento de modelos: o BigQuery pode ser usado como uma fonte para monitorar a distorção e o desvio de atributos dos modelos implantados. Para a detecção de distorção, é possível especificar o URI do BigQuery do conjunto de dados de treinamento. Além disso, o BigQuery pode armazenar os registros de endpoints de inferência on-line, que podem ser usados como uma fonte de dados para monitoramento contínuo. Para isso, a tabela do BigQuery precisa ter uma coluna de carimbo de data/hora.
- Integração do BigQuery ML: é possível usar conjuntos de dados do BigQuery ao aproveitar o BigQuery ML para criar modelos de machine learning usando SQL. O Agent Platform Workbench permite a análise exploratória interativa de dados do BigQuery e o uso do BigQuery ML em um ambiente de notebook.
- Exploração e preparação de dados: antes do treinamento, é possível usar o BigQuery para explorar e visualizar os dados. Também é possível realizar transformações de dados usando consultas SQL diretamente no BigQuery antes de usar os dados para treinamento.
- Acesso a conjuntos de dados públicos: o BigQuery hospeda muitos conjuntos de dados públicos, como o conjunto de dados Chicago Taxi Trips, que podem ser usados para experimentação e treinamento no Agent Platform Workbench.
Específico para o Ray na Gemini Enterprise Agent Platform
- O Ray na Gemini Enterprise Agent Platform tem recursos para ler dados diretamente do BigQuery. É possível usar o SDK da Agent Platform para Python em uma tarefa do Ray para executar consultas do BigQuery e materializar os resultados para uso nos aplicativos do Ray.
- Ao ler do BigQuery, esteja ciente do tamanho máximo da resposta da consulta, que é de 10 GB.
- Também é possível gravar dados dos aplicativos do Ray de volta no BigQuery usando o SDK da Agent Platform para Python.
Saiba mais
- Agent Platform para usuários do BigQuery
- Criar um pipeline para treinamento de modelo contínuo
- Usar o Ray na Gemini Enterprise Agent Platform com o BigQuery