Seldon Core é uma plataforma de código aberto que ajuda os usuários a implantar modelos de Machine Learning (ML, aprendizado de máquina) em escala. Tem mais de 2 milhões de instalações, com empresas como EdgeCast (anteriormente Verizon Media Platform) usando-a como parte de seu stack de software. A empresa por trás do produto é a Seldon.
A plataforma é executada em Kubernets e permite que os usuários implantem milhares de workloads de ML prontas para uso (out-of-the-box). Além disso, suporta vários frameworks/bibliotecas, como TensorFlow, PyTorch e scikit-learn.
No white paper “Hidden Technical Debt in Machine Learning Systems”, os engenheiros do Google explicam uma “tendência desconfortável” que está acontecendo no setor. As empresas estão correndo para fornecer implantação rápida e barata de modelos de ML, mas não conseguem ver a dívida técnica que está se acumulando. Quando se trata de dívida técnica, é diferente no ML: os sistemas de ML incorrem em problemas não apenas no código tradicional, mas também em problemas específicos de ML que estão no nível do sistema. Assim, a longo prazo, mesmo que o código de software seja bem mantido, ignorar os problemas do sistema continuará aprofundando esse cenário até que algo pare de funcionar ou piore seu desempenho. O diagrama abaixo ilustra as diferentes áreas em que os usuários devem se concentrar para aliviar a dívida técnica no processo de ML.
A plataforma Seldon Core desempenha um papel importante em algumas áreas. Essas áreas são infraestrutura de serviço, gerenciamento de recursos de máquinas, ferramentas de análise, ferramentas de gerenciamento de processos e monitoramento. No entanto, o foco do produto está na implantação.
A Seldon Core é nativa da nuvem e é executada on-premise ou na nuvem. Ela fica no topo do Kubernetes e aproveita ferramentas existentes, como Argo (motor de workflows), Istio (service mesh) e Abassador (porta de vínculo com APIs, nativa do Kubernetes). Os usuários comerciais têm a opção de comprar servidores de inferência pré-embalados que são carregados com um stack de software que inclui SKLearn, XGBoost, TensorFlow, MLflow ou um personalizado.
Uma das tarefas no processo de implantação é a conteinerização (Dockerizar) do modelo para que ele possa ser usado. Isso pode ser feito com ferramentas de código aberto, como Source-to-Image, que pegam o código-fonte e o convertem em uma imagem. Em suma, a plataforma Seldon Core suporta um amplo espectro de ferramentas de código aberto nas áreas de Machine Learning, Kubernetes, monitoramento e muito mais. Aqui está uma amostra de produtos de terceiros suportados:
● SkLearn
● Fluxo Tensor
● SageMaker
● MLFlow
● Pytorch
● H2O
● Servidor TensorRT NVIDIA
● Porção TensorFlow
● Intel nGraph
● Intel OpenVINO