O que é uma stack de IA?

Autores

Cole Stryker

Staff Editor, AI Models

IBM Think

O que é uma stack de IA?

Uma stack de IA é uma coleção de tecnologias, frameworks e componentes de infraestrutura que facilitam o uso de sistemas de inteligência artificial (IA). Ela fornece uma estrutura para a criação de soluções de IA, ao colocar esses componentes em camadas para apoiar o ciclo de vida de IA de ponta a ponta.

Semelhante às stacks de tecnologia (ou tech stacks) no desenvolvimento de software, uma stack de IA organiza os elementos em camadas que trabalham juntas para permitir implementações de IA eficientes e escaláveis. Essa abordagem em camadas divide o processo complexo de construção de soluções de IA em componentes gerenciáveis, permitindo que as equipes se concentrem em aspectos individuais sem perder a visão do todo.

Cada camada na stack representa uma função específica, desde o gerenciamento de dados até a implementação do modelo, facilitando a identificação de dependências, a alocação de recursos e a resolução de desafios de forma sistemática. Essa visão modular melhora a clareza, especialmente ao trabalhar com equipes multidisciplinares, pois cria um entendimento compartilhado de como os diversos componentes interagem.

Diferentes aplicações de IA entrarão em contato com várias camadas na stack de IA. Por exemplo, o Red Hat OpenShift é uma plataforma empresarial baseada em Kubernetes projetada para gerenciar aplicações conteinerizadas em grande escala, sendo utilizado em praticamente todas as camadas da stack de IA.

Diferentes players no setor de IA organizam a stack de IA de maneiras distintas, organizando os componentes em diferentes ordens ou enfatizando diferentes funções. Isso ocorre porque as abordagens para IA podem variar tanto no nível de caso de uso quanto no nível organizacional. Além disso, o cenário de desenvolvimento de IA está em constante evolução.

Em seguida, é apresentada uma versão generalizada de uma stack de IA empresarial. Você pode aprender mais sobre a abordagem da IBM em relação à inteligência artificial generativa (IA gen) e aos grandes modelos de linguagem (LLMs) (pense no GPT da OpenAI) ao avaliar a stack de tecnologia de IA generativa da IBM.

As mais recentes notícias de tecnologia, corroboradas por insights de especialistas.

Mantenha-se atualizado sobre as tendências mais importantes (e intrigantes) do setor em IA, automação, dados e muito mais com o boletim informativo Think. Consulte a Declaração de privacidade da IBM.

Agradecemos sua inscrição!

Sua assinatura será entregue em inglês. Você pode encontrar um link para cancelar a assinatura em todos os boletins informativos. Você pode gerenciar suas inscrições ou cancelar a inscrição aqui. Consulte nossa Declaração de privacidade da IBM para obter mais informações.

A camada de infraestrutura

A camada de infraestrutura de IA forma a base sobre a qual os sistemas de IA são construídos e implementados. Ela fornece o poder computacional, o armazenamento físico e as ferramentas necessárias para desenvolver, treinar e operar modelos de IA de forma eficaz. Essa camada apoia todo o ciclo de vida da IA, desde a experimentação inicial até a implementação em grande escala, e é composta por alguns componentes-chave diferentes.

Compute

O hardware físico é necessário para processar dados. Os chips podem ser otimizados para cargas de trabalho de IA: unidades de processamento de alto desempenho chamadas aceleradores de IAGPUs, CPUs e TPUs— reduzem drasticamente o tempo de treinamento de modelos complexos. Além disso, a computação distribuída permite o desenvolvimento de sistemas de ponta que consomem muitos recursos, como grandes modelos de linguagem.

Plataformas de serviços em nuvem (como AWS, Microsoft Azure, Google Cloud e IBM Cloud) oferecem flexibilidade para escalar recursos conforme a necessidade, tornando-os acessíveis para empresas de todos os tamanhos, enquanto a computação em edge possibilita a tomada de decisões em tempo real em ambientes remotos ou de baixa largura de banda. A camada de computação se integra diretamente a ferramentas de orquestração, otimizando a alocação de recursos e garantindo eficiência de custos.

Armazenamento

Os sistemas de armazenamento físico devem lidar com grandes quantidades de dados usados durante todo o ciclo de vida da IA, desde conjuntos de dados brutos até pesos e logs de modelos. Soluções de armazenamento de alto rendimento permitem rápido acesso a dados, o que é essencial para tarefas computacionalmente intensivas, como o treinamento de modelos de deep learning.

A escalabilidade é outra característica principal, com sistemas de arquivos distribuídos, como HDFS ou sistemas de object storage (Amazon S3), compatíveis com as crescentes demandas de dados. Esses sistemas geralmente empregam estratégias de armazenamento hierárquico, mantendo os dados acessados com frequência em mídias de alta velocidade enquanto arquivam dados menos usados em soluções mais lentas e econômicas.

Mecanismos robustos de backup e recuperação reforçam a resiliência dos dados, combinando opções de armazenamento local e em nuvem para proteção contra falhas.

Rede

A IA frequentemente envolve a migração de muitos dados de um lugar para outro com latência mínima. A rede complementa o armazenamento ao conectar os vários componentes da infraestrutura, permitindo a transferência de dados e a colaboração sem problemas.

AI Academy

Preparando-se para a IA com a nuvem híbrida

Liderada pelos principais líderes da IBM, o currículo dessa experiência foi desenvolvido para ajudar líderes empresariais a terem o conhecimento necessário para priorizar os investimentos em IA capazes de estimular o crescimento.

A camada de dados

Essa é outra parte fundamental da stack de IA, com foco em coletar, armazenar e preparar dados para modelos de IA. Inclui bancos de dados, data lakes e data warehouses. Cientistas de dados usam várias ferramentas para ingestão, limpeza e pré-processamento de dados, que também fazem parte dessa camada de gerenciamento de dados.

Dados de alta qualidade e bem preparados permitem que os modelos aprendam de maneira eficaz, levando a melhores previsões e tomadas de decisões. Por outro lado, dados de baixa qualidade ou com viés podem comprometer a precisão e a equidade dos modelos de IA, resultando em resultados abaixo do ideal. Ao investir em uma camada de dados robusta, as organizações estabelecem a base para implementações bem-sucedidas de IA.

Ingestão e armazenamento de dados

Os dados podem ser ingeridos de diversas fontes, como bancos de dados estruturados, arquivos de texto não estruturados, imagens, dispositivos IoT, interfaces de programação de aplicativos (APIs) ou interações com usuários. A infraestrutura de armazenamento deve ser capaz de lidar com grandes volumes de dados diversos, mantendo a confiabilidade e a acessibilidade.

As tecnologias incluem bancos de dados relacionais, como MySQL e PostgreSQL, bancos de dados NoSQL, como MongoDB e Cassandra, e data lakes, como Hadoop, para lidar com dados estruturados e não estruturados.

A ingestão envolve a importação de dados de várias fontes para sistemas de armazenamento. Ferramentas como o Apache Kafka automatizam e gerenciam pipelines de ingestão de dados, ajudando a garantir que os dados fluam sem problemas para o sistema.

Pré-processamento de dados

Os dados brutos frequentemente precisam de limpeza, normalização e transformação antes de serem usados em modelos de IA. Isso envolve remover duplicatas, preencher missing values, padronizar formatos e codificar variáveis categóricas.

A linguagem de programação Python oferece bibliotecas sem custo para essa finalidade, entre outras, incluindo Pandas, NumPy, além de ferramentas como Apache Spark,, que também são comumente usadas para pré-processamento.

Anotação e rotulagem de dados

Para o aprendizado supervisionado, os dados muitas vezes precisam ser rotulados para que o modelo aprenda. Isso envolve marcar imagens, categorizar o texto ou marcar funcionalidades relevantes. Plataformas como Labelbox, Amazon SageMaker Ground Trust e ferramentas de código aberto como LabelImg facilitam fluxos de trabalho de anotação.

Segurança e conformidade de dados

O armazenamento de dados e o processamento de dados devem cumprir as leis de privacidade (por exemplo: GDPR e CCPA). Técnicas de criptografia, controle de acesso e anonimização são frequentemente empregadas para proteger dados confidenciais.

A camada de desenvolvimento de modelos

É aqui que os modelos de IA são projetados, treinados e recebem ajuste fino para resolver problemas específicos, determinando as funções centrais e a inteligência de um sistema de IA. Essa etapa se baseia na camada de dados, utilizando dados processados e limpos para treinar algoritmos capazes de aprender padrões, fazer previsões ou gerar saídas.

Essa camada também estabelece um ciclo de feedback com a camada de dados, possibilitando o retreinamento e a melhoria contínua à medida que novos dados se tornam disponíveis. Essa camada é fundamental para o ciclo de vida da IA, pois define o desempenho do sistema em aplicações do mundo real.

Frameworks e bibliotecas de IA

Frameworks de aprendizado de máquina (ML) e deep learning simplificam a criação e o treinamento de modelos. Entre as ferramentas populares estão o TensorFlow, PyTorch, Scikit-learn, Keras e XGBoost, cada uma delas adequada para diferentes tipos de tarefas de IA, como visão computacional, processamento de linguagem natural (PLN) ou análise de dados tabulares.

Seleção do algoritmo

A escolha do algoritmo de aprendizado de máquina certo é fundamental para alcançar o desempenho ideal. Os algoritmos variam de regressão linear e decision trees para tarefas simples a arquiteturas complexas, como redes neurais e transformadores. A seleção depende de fatores que incluem o tipo de dados, o domínio do problema e as restrições computacionais.

Treinamento de modelo

O treinamento envolve alimentar o modelo com dados rotulados para que ele possa aprender padrões e relacionamentos. Essa etapa requer recursos computacionais significativos para modelos complexos. O processo de treinamento envolve a definição de hiperparâmetros (por exemplo, taxa de aprendizado e tamanho do lote) e a otimização iterativa do modelo usando técnicas como gradiente descendente.

Engenharia e ajuste de funcionalidades

A engenharia de funcionalidades transforma dados brutos em entradas significativas para o modelo. Essa etapa pode incluir escalonamento, codificação, redução de dimensionalidade ou criação de novas funcionalidades derivadas.

Modelos pré-treinados e aprendizado por transferência

O uso de modelos pré-treinados, como BERT e ResNet, pode reduzir significativamente o tempo de desenvolvimento e os custos computacionais. O aprendizado por transferência adapta esses modelos para novas tarefas com treinamento adicional mínimo.

Validação e otimização

Depois que os modelos são desenvolvidos, eles frequentemente precisam ser otimizados e receber ajuste fino antes da implementação. Isso pode incluir ajuste de hiperparâmetros, compressão do modelo e validação do modelo.

Antes da implementação, os modelos são avaliados utilizando conjuntos de dados de validação e teste separados para medir métricas de desempenho, como exatidão, precisão, recall e pontuação F1. Essa etapa ajuda a garantir que o modelo generalize bem e funcione de maneira confiável em dados não vistos.

Camada de implementação do modelo

A camada de implementação do modelo é onde os modelos de aprendizado de máquina mudam do desenvolvimento para o uso prático, fornecendo previsões ou inferências em ambientes ativos.

A implementação envolve o empacotamento dos modelos em formatos implementáveis, geralmente utilizando tecnologias de conteinerização, promovendo consistência e portabilidade em diferentes ambientes. Esses contêineres são, então, gerenciados e escalados usando plataformas de orquestração, permitindo balanceamento de carga, tolerância a falhas e alta disponibilidade.

Os modelos implementados são normalmente expostos por meio de APIs ou microsserviços usando frameworks como TensorFlow Serving, NVIDIA Triton ou soluções personalizadas, permitindo uma integração sem dificuldades com sistemas de negócios, aplicativos móveis ou plataformas web.

Camada de aplicação

A camada de aplicações é onde os modelos de IA são integrados a sistemas do mundo real para fornecer insights praticáveis e apoiar a tomada de decisões, tornando-se a parte mais visível da stack de IA. Essa camada incorpora recursos de IA a aplicações de software, produtos e serviços.

Nesse estágio, os modelos de IA se tornam parte da lógica de negócios, automatizando tarefas, aprimorando fluxos de trabalho ou potencializando funcionalidades inteligentes, como sistemas de recomendação, análise preditiva de dados, processamento de linguagem natural ou visão computacional. Esses recursos normalmente são acessados por meio de APIs ou incorporados a microsserviços, incentivando a interação sem dificuldades com outros componentes do ecossistema de aplicações.

Um foco-chave da camada de aplicações é a usabilidade. A funcionalidade da IA geralmente vem com interfaces de usuário (IU) intuitivas, que utilizam visualizações e outras apresentações para comunicar informações de maneira clara e interpretável, de modo que os usuários entendam e atuem com base nos insights orientados por IA.

Por exemplo, uma IA de detecção de fraudes pode sinalizar transações suspeitas em uma plataforma financeira e gerar uma notificação por meio de automação, enquanto uma experiência de usuário de chatbot interage com os usuários em tempo real.

Camadas de observabilidade e governança

A camada de observabilidade facilita o monitoramento, o acompanhamento e a avaliação dos fluxos de trabalho de IA. Ela fornece a visibilidade e os insights necessários para entender o desempenho dos modelos de IA em ambientes reais, permitindo que as equipes identifiquem e resolvam problemas imediatamente, mantenham a integridade do sistema e melhorem o desempenho ao longo do tempo.

No núcleo da camada de observabilidade estão ferramentas e frameworks que acompanham diversas métricas relacionadas tanto aos modelos de IA quanto à infraestrutura na qual são executados.

A camada de governança é o framework abrangente que ajuda a garantir que os sistemas de IA sejam implementados, utilizados e mantidos de forma responsável, ética e alinhada com padrões organizacionais e sociais.

Essa camada é fundamental para o gerenciamento de riscos, promoção da transparência e construção de confiança nas tecnologias de IA. Ela abrange políticas e processos para supervisionar o ciclo de vida dos modelos de IA em conformidade com regulamentações legais, princípios éticos e objetivos organizacionais.

Uma função principal da camada de governança é estabelecer políticas de coleta e uso de dados, juntamente com frameworks de conformidade, para cumprir as regulamentações, como o Regulamento Geral de Proteção de Dados (GDPR), a Lei de portabilidade e responsabilidade de planos de saúde (HIPAA) ou diretrizes específicas de IA, incluindo a Lei de IA da UE. Esses frameworks definem como os dados são coletados, armazenados e usados, incentivando a privacidade e a segurança.

Além disso, a governança inclui a criação de mecanismos para auditoria e rastreabilidade, permitindo que as organizações registrem e monitorem decisões de IA, mudanças nos modelos e uso de dados, aspectos críticos para prestar contas e lidar com disputas ou erros.

A camada de governança também lida com questões de imparcialidade, viés e explicabilidade em sistemas de IA. Ela envolve a implementação de ferramentas e técnicas para detectar e mitigar vieses nos dados de treinamento ou nas saídas do modelo, ajudando a incentivar os sistemas de IA a operar de forma equitativa em diversas populações.

O benefício da abordagem da stack de IA

Visualizar a IA como uma stack promove escalabilidade, flexibilidade e eficiência. As equipes podem trabalhar na atualização de camadas específicas para se beneficiar dos avanços mais recentes sem precisar reformular todo o sistema, permitindo melhorias iterativas e adaptações conforme as tecnologias e as necessidades de negócios evoluem.

Por exemplo, é possível migrar de um provedor de nuvem para outro na camada de infraestrutura ou adotar um novo framework de aprendizado de máquina na camada de desenvolvimento do modelo sem interromper a aplicação.

Essa perspectiva em camadas também facilita comparar e monitorar cada estágio do ciclo de vida da IA, garantindo que desempenho, conformidade e confiabilidade sejam mantidos em todas as etapas. A abordagem baseada em stack simplifica a complexidade da IA, tornando-a mais acessível e praticável para organizações de todos os portes.

Soluções relacionadas
IBM watsonx.ai

Treine, valide, ajuste e implemente IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo e com muito menos dados.

Conheça o watsonx.ai
Infraestrutura de IA

A IBM Infrastructure é segura, escalável, aberta, protegida por indenização e projetada para atender à natureza dinâmica e de alto desempenho das cargas de trabalho de IA, garantindo operações sustentáveis que reduzem custos, riscos e consumo de energia.

Explore a infraestrutura de IA
Consultoria e serviços em IA

Reinvente fluxos de trabalho e operações essenciais incorporando IA para aprimorar experiências, decisões em tempo real e valor para o negócio.

Explore os serviços de IA
Dê o próximo passo

Impulsione suas cargas de trabalho de IA com uma infraestrutura otimizada para desempenho, confiabilidade e integração com nuvem híbrida, criada para as demandas reais das empresas.

Explore nossas soluções de infraestrutura de IA Veja mais informações