Muita gente acha que lançar um modelo é moleza: treinou, subiu o arquivo, escreveu uma introdução e pronto, missão cumprida.
Mas quem já trabalhou com produto sabe que a parte mais complicada começa depois que o modelo vai pro ar.
Os dados mudaram, tem que treinar de novo; ajustou os parâmetros, tem que lançar uma nova versão; o feedback dos usuários tá ruim, e aí precisa descobrir qual passo foi alterado. Tem uma contradição que é frequentemente ignorada: todo mundo quer que o modelo atualize rápido, mas tem medo de que uma atualização quebre funcionalidades que estavam funcionando bem.
Por isso, sempre acreditei que a hospedagem de modelos não pode ser só um drive. Uma plataforma realmente útil tem que deixar os desenvolvedores cientes das mudanças em cada versão, quem ainda tá usando versões antigas, e se a nova versão pode ser testada antes de ir pra produção.
O Model Hub da OpenGradient faz isso de uma forma que se parece mais com um sistema de lançamento de modelos.
Um modelo pode primeiro criar um repositório independente e depois ser lançado em versões como v1.00, v1.01, v2.00. Em cada versão, dá pra colocar arquivos do modelo, configurações e explicações, em vez de subir um novo arquivo e sobrescrever o modelo antigo.
O fluxo de trabalho também é tranquilo.
O desenvolvedor treina um modelo de previsão de risco, exporta no formato ONNX, cria um repositório no Model Hub e sobe a v1.00. Depois, ele pode testar direto no Playground da web, confirmar que a entrada e os resultados não têm problemas evidentes, e então fixar esse versão pra aplicação.
Mais tarde, com a atualização dos dados de treino, pode lançar a v1.01, detalhar as mudanças e deixar uma parte das aplicações testarem primeiro. A versão antiga continua disponível, não vai deixar todos os produtos que estão usando ela na mão por causa de uma atualização. A equipe ainda pode usar o SDK em Python e a CLI pra integrar o modelo nos seus próprios processos de treino ou lançamento.
Claro, ter um número de versão bonito não garante que o modelo seja confiável. A conversão de ONNX pode gerar diferenças, e novos dados podem piorar os resultados; no fim das contas, é teste e uso real que falam mais alto.
Mas pelo menos isso resolve um problema bem prático: o modelo não é só um arquivo único, mas sim um software que precisa de manutenção a longo prazo. Conseguir explicar cada mudança muitas vezes é mais importante do que todo o barulho do primeiro lançamento.
$OPG @OpenGradient #OPG
Mas quem já trabalhou com produto sabe que a parte mais complicada começa depois que o modelo vai pro ar.
Os dados mudaram, tem que treinar de novo; ajustou os parâmetros, tem que lançar uma nova versão; o feedback dos usuários tá ruim, e aí precisa descobrir qual passo foi alterado. Tem uma contradição que é frequentemente ignorada: todo mundo quer que o modelo atualize rápido, mas tem medo de que uma atualização quebre funcionalidades que estavam funcionando bem.
Por isso, sempre acreditei que a hospedagem de modelos não pode ser só um drive. Uma plataforma realmente útil tem que deixar os desenvolvedores cientes das mudanças em cada versão, quem ainda tá usando versões antigas, e se a nova versão pode ser testada antes de ir pra produção.
O Model Hub da OpenGradient faz isso de uma forma que se parece mais com um sistema de lançamento de modelos.
Um modelo pode primeiro criar um repositório independente e depois ser lançado em versões como v1.00, v1.01, v2.00. Em cada versão, dá pra colocar arquivos do modelo, configurações e explicações, em vez de subir um novo arquivo e sobrescrever o modelo antigo.
O fluxo de trabalho também é tranquilo.
O desenvolvedor treina um modelo de previsão de risco, exporta no formato ONNX, cria um repositório no Model Hub e sobe a v1.00. Depois, ele pode testar direto no Playground da web, confirmar que a entrada e os resultados não têm problemas evidentes, e então fixar esse versão pra aplicação.
Mais tarde, com a atualização dos dados de treino, pode lançar a v1.01, detalhar as mudanças e deixar uma parte das aplicações testarem primeiro. A versão antiga continua disponível, não vai deixar todos os produtos que estão usando ela na mão por causa de uma atualização. A equipe ainda pode usar o SDK em Python e a CLI pra integrar o modelo nos seus próprios processos de treino ou lançamento.
Claro, ter um número de versão bonito não garante que o modelo seja confiável. A conversão de ONNX pode gerar diferenças, e novos dados podem piorar os resultados; no fim das contas, é teste e uso real que falam mais alto.
Mas pelo menos isso resolve um problema bem prático: o modelo não é só um arquivo único, mas sim um software que precisa de manutenção a longo prazo. Conseguir explicar cada mudança muitas vezes é mais importante do que todo o barulho do primeiro lançamento.
$OPG @OpenGradient #OPG