Design de arquitetura de IA (inteligência artificial)
A inteligência artificial (IA) é uma tecnologia que permite que as máquinas imitem o comportamento humano inteligente. Com a IA, as máquinas podem:
- Analise dados para criar imagens e vídeos.
- Analise e sintetize a fala.
- Interaja verbalmente de maneiras naturais.
- Faça previsões e gere novos dados.
Os arquitetos projetam cargas de trabalho que usam inteligência artificial para executar funções ou tomar decisões onde a lógica ou o processamento tradicionais seriam proibitivos, ou mesmo quase impossíveis, de implementar. Como arquiteto que projeta uma solução, é importante entender o cenário de IA e aprendizado de máquina e como o Azure oferece soluções para integração em seu design de carga de trabalho.
Conceitos de IA
Algoritmos
Algoritmos ou algoritmos de aprendizado de máquina são pedaços de código que ajudam os humanos a explorar, analisar e encontrar significado em conjuntos de dados complexos. Cada algoritmo é um conjunto finito de instruções passo a passo não ambíguas que um computador pode seguir para atingir determinado objetivo. Em um modelo de aprendizado de máquina, o objetivo é estabelecer ou descobrir padrões que os humanos possam usar para fazer previsões ou categorizar informações. Um algoritmo pode descrever como determinar se um animal de estimação é um gato, cachorro, peixe, pássaro ou lagarto. Outro algoritmo muito mais complicado pode descrever como identificar um idioma escrito ou falado, analisar as palavras, traduzi-las em um idioma diferente e verificar a precisão da tradução.
Ao projetar uma carga de trabalho, você precisará selecionar uma família de algoritmos adequada para sua tarefa e avaliar os vários algoritmos disponíveis para encontrar o ajuste apropriado.
Aprendizado de máquina
O aprendizado de máquina é uma técnica de IA que usa algoritmos para criar modelos preditivos. O algoritmo é usado para analisar campos de dados e "aprender" com esses dados usando padrões encontrados nele para gerar modelos. Esses modelos são usados para fazer previsões baseadas em informações ou decisões sobre novos dados.
Os modelos preditivos são validados em relação a dados conhecidos, medidos por métricas de desempenho selecionadas para cenários empresariais específicos e ajustados conforme necessário. Esse processo de aprendizado e validação é chamado de treinamento. Por meio do retreinamento periódico, os modelos de ML são aprimorados ao longo do tempo.
Quando se trata de design de carga de trabalho, você considera o uso de aprendizado de máquina quando tiver uma situação em que observações passadas podem ser usadas de forma confiável para prever situações futuras. Essas observações podem ser verdades universais, como visão computacional que detecta uma forma de animal de outra, ou essas observações podem ser específicas para sua situação, como visão computacional que detecta um possível erro de montagem em suas linhas de montagem com base em dados de reivindicações de garantia anteriores.
Aprendizado
O aprendizado profundo é um tipo de ML que pode aprender por meio de seu próprio processamento de dados. Assim como o aprendizado de máquina, ele também usa algoritmos para analisar dados, mas o faz usando redes neurais artificiais que contêm muitas entradas, saídas e camadas de processamento. Cada camada pode processar os dados de uma maneira diferente, e a saída de uma camada se torna a entrada para a próxima. Isso permite que o aprendizado profundo crie modelos mais complexos do que o aprendizado de máquina tradicional.
Como designer de carga de trabalho, essa opção requer um grande investimento na geração de modelos altamente personalizados ou exploratórios. De modo geral, você considerará outras soluções apresentadas neste artigo antes de adicionar o aprendizado profundo à sua carga de trabalho.
O que é IA generativa
A IA generativa é uma forma de inteligência artificial na qual os modelos são treinados para gerar novos conteúdos originais com base em muitas formas de conteúdo, como linguagem natural, visão computacional, áudio ou entrada de imagem. Com a IA generativa, você pode descrever uma saída desejada em linguagem cotidiana normal, e o modelo pode responder criando texto, imagem, código apropriado e muito mais. Alguns exemplos de aplicativos generativos de IA são:
O Microsoft Copilot é principalmente uma interface do usuário que pode ajudar os usuários a escrever código, documentos e outros conteúdos baseados em texto. É baseado em modelos populares da OpenAI e está integrado a uma ampla variedade de aplicativos e experiências do usuário da Microsoft.
O Azure OpenAI é uma plataforma de desenvolvimento como serviço que fornece acesso aos poderosos modelos de linguagem da OpenAI, como o1-preview, o1-mini, GPT-4o, GPT-4o mini, GPT-4 Turbo with Vision, GPT-4, GPT-3.5-Turbo e séries de modelos Embeddings. Esses modelos podem ser adaptados à sua tarefa específica, como:
- Geração de conteúdo
- Resumo de conteúdo
- Reconhecimento de imagens
- Pesquisa semântica
- Linguagem natural para tradução de código.
Modelos de linguagem
Os modelos de linguagem são um subconjunto da IA generativa que se concentra em tarefas de processamento de linguagem natural (NLP), como geração de texto e análise de sentimento. Esses modelos representam a linguagem natural com base na probabilidade de palavras ou sequências de palavras ocorrerem em um determinado contexto.
Os modelos de linguagem convencionais têm sido usados em ambientes supervisionados para fins de pesquisa, onde os modelos são treinados em conjuntos de dados de texto bem rotulados para tarefas específicas. Os modelos de linguagem pré-treinados oferecem uma maneira acessível de começar a usar a IA e se tornaram mais amplamente usados nos últimos anos. Esses modelos são treinados em corpora de texto em grande escala da Internet usando redes neurais de aprendizado profundo e podem ser ajustados em conjuntos de dados menores para tarefas específicas.
O tamanho de um modelo de linguagem é determinado pelo número de seus parâmetros, ou pesos, que determinam como o modelo processa os dados de entrada e gera a saída. Os parâmetros são aprendidos durante o processo de treinamento, ajustando os pesos nas camadas do modelo para minimizar a diferença entre as previsões do modelo e os dados reais. Quanto mais parâmetros um modelo possui, mais complexo e expressivo ele é, mas também mais caro computacionalmente é para treinar e usar.
Em geral, modelos de linguagem pequenos têm menos de 10 bilhões de parâmetros, e modelos de linguagem grandes têm mais de 10 bilhões de parâmetros. Por exemplo, a família de modelos Microsoft Phi-3 tem três versões com tamanhos diferentes: mini (3,8 bilhões de parâmetros), pequeno (7 bilhões de parâmetros) e médio (14 bilhões de parâmetros).
Copilots
A disponibilidade de modelos de linguagem levou ao surgimento de novas maneiras de interagir com aplicativos e sistemas por meio de copilotos digitais e agentes conectados, específicos de domínio. Copilotos são assistentes de IA generativa integrados a aplicativos geralmente como interfaces de chat. Eles fornecem suporte contextualizado para tarefas comuns nesses aplicativos.
O Microsoft Copilot é integrado a uma ampla variedade de aplicativos e experiências de usuário da Microsoft. Ele é baseado em uma arquitetura aberta que permite que desenvolvedores de terceiros criem seus próprios plug-ins para estender ou personalizar a experiência do usuário com o Microsoft Copilot. Além disso, desenvolvedores de terceiros podem criar seus próprios copilotos usando a mesma arquitetura aberta.
RAG (Geração Aumentada de Recuperação)
A Geração Aumentada de Recuperação (RAG) é um padrão de arquitetura que aumenta os recursos de um grande modelo de linguagem (LLM) como o ChatGPT, que foi treinado apenas em dados públicos. Esse padrão permite adicionar um sistema de recuperação que fornece dados de aterramento relevantes no contexto com a solicitação do usuário. A adição de um sistema de recuperação de informações fornece controle sobre os dados de aterramento usados por um modelo de linguagem quando ele formula uma resposta. A arquitetura RAG ajuda você a definir o escopo da IA generativa para conteúdo proveniente de documentos vetorizados, imagens e outros formatos de dados. O RAG não se limita ao armazenamento de pesquisa vetorial, no entanto, o padrão é aplicável em conjunto com qualquer tecnologia de armazenamento de dados.
AutoML (machine learning automatizado)
O aprendizado de máquina automatizado, também conhecido como ML automatizado ou AutoML, é o processo de automatizar as tarefas iterativas e demoradas do desenvolvimento de modelos de aprendizado de máquina. Com ele, cientistas de dados, analistas e desenvolvedores podem criar modelos de ML com alta escala, eficiência e produtividade, ao mesmo tempo em que dão suporte à qualidade do modelo.
Serviços de inteligência artificial
Com os serviços de IA do Azure, os desenvolvedores e as organizações podem criar aplicativos inteligentes, prontos para o mercado e responsáveis com APIs e modelos prontos para uso, pré-criados e personalizáveis. Os usos incluem processamento de linguagem natural para conversas, pesquisa, monitoramento, tradução, fala, visão e tomada de decisão.
Escolhendo uma tecnologia de processamento de linguagem natural no Azure
O MLflow é uma estrutura de código aberto projetada para gerenciar o ciclo de vida completo do aprendizado de máquina.
Modelos de linguagem de IA
Grandes modelos de linguagem (LLMs), como os modelos GPT da OpenAI, são ferramentas poderosas que podem gerar linguagem natural em vários domínios e tarefas. Ao considerar o uso desses modelos, considere fatores como privacidade de dados, uso ético, precisão e viés.
Os modelos abertos Phi são modelos pequenos e menos intensivos em computação para soluções de IA generativa. Um modelo de linguagem pequena (SLM) pode ser mais eficiente, interpretável e explicável do que um modelo de linguagem grande.
Ao projetar uma carga de trabalho, você pode usar modelos de linguagem como uma solução hospedada, por trás de uma API limitada ou, para muitos modelos de linguagem pequenos, você pode hospedá-los em processo ou, pelo menos, na mesma computação que o consumidor. Ao usar modelos de linguagem em sua solução, considere sua escolha de modelo de linguagem e suas opções de hospedagem disponíveis para garantir o uso de uma solução otimizada para seu caso de uso.
Plataformas e ferramentas de desenvolvimento de IA
Serviço Azure Machine Learning
O Azure Machine Learning é um serviço de aprendizado de máquina para criar e implantar modelos. O Azure Machine Learning oferece interfaces Web e SDKs para que você possa treinar e implantar seus modelos e pipelines de aprendizado de máquina em escala. Use essas funcionalidades com estruturas do Python de software livre, como a PyTorch, a TensorFlow e a Scikit-learn.
Quais são os produtos de aprendizado de máquina na Microsoft?
O que é o Azure Machine Learning? Orientação geral com links para muitos recursos de aprendizado, SDKs, documentação e muito mais
Arquiteturas de referência de machine learning para o Azure
A arquitetura de referência de bate-papo de ponta a ponta da OpenAI é uma arquitetura de referência que mostra como criar uma arquitetura de bate-papo de ponta a ponta com os modelos GPT da OpenAI.
A arquitetura de linha de base de chat do OpenAI do Azure em uma zona de destino do Azure mostra como criar a arquitetura de linha de base do OpenAI do Azure para lidar com alterações e expectativas ao implantá-la em uma zona de destino do Azure.
MLOps (operacionalização de machine learning) para modelos do Python usando o Azure Machine Learning
Pontuação em lote de modelos de machine learning do Spark no Azure Databricks
AutoML (machine learning automatizado)
Crie modelos de ML em escala usando a funcionalidade AutoML no Azure Machine Learning para automatizar tarefas.
Tutorial: Criar um modelo de classificação com ML automatizado no Azure Machine Learning
Automatizar atividades de machine learning com a CLI do Azure Machine Learning
MLflow
Os workspaces do Azure Machine Learning são compatíveis com o MLflow, o que significa que você pode usar um workspace do Azure Machine Learning da mesma forma que usa um servidor MLflow. Essa compatibilidade tem as seguintes vantagens:
- O Azure Machine Learning não hospeda instâncias de servidores MLflow, mas pode usar as APIs do MLflow diretamente.
- Você pode usar um workspace do Azure Machine Learning como seu servidor de acompanhamento para qualquer código MLflow, independentemente de ele ser executado no Azure Machine Learning ou não. Você só precisa configurar o MLflow para apontar para o workspace em que o acompanhamento deve ocorrer.
- Você pode executar qualquer rotina de treinamento que use o MLflow no Azure Machine Learning sem fazer alterações.
Para obter mais informações, consulte MLflow e Azure Machine Learning
Ferramentas de IA generativa
O fluxo imediato é um conjunto de ferramentas de desenvolvimento projetadas para simplificar o ciclo de desenvolvimento de ponta a ponta de aplicativos de IA generativa, desde a concepção, prototipagem, teste, avaliação até a implantação e monitoramento da produção. Ele suporta engenharia imediata por meio da expressão de ações em um mecanismo modular de orquestração e fluxo.
O Azure AI Studio ajuda você a experimentar, desenvolver e implantar aplicativos e APIs de IA generativa de forma responsável com uma plataforma abrangente. Com o Azure AI Studio, você tem acesso aos serviços de IA do Azure, modelos básicos, playground e recursos para ajudá-lo a criar, treinar, ajustar e implantar modelos de IA. Além disso, você pode avaliar as respostas do modelo e orquestrar componentes de aplicativos de prompt com fluxo de prompt para melhor desempenho.
O Azure Copilot Studio é usado para estender o Microsoft Copilot no Microsoft 365 e criar copilots personalizados para cenários internos e externos. Com o Copilot Studio, os usuários podem projetar, testar e publicar copilots usando a tela de criação abrangente. Os usuários podem criar facilmente conversas generativas habilitadas para IA, fornecer maior controle às respostas dos copilotos existentes e acelerar a produtividade com fluxos de trabalho automatizados específicos.
Plataformas de dados para IA
Microsoft Fabric
O Microsoft Fabric é uma plataforma completa de análise e dados criada para empresas que precisam de uma solução unificada. As equipes de carga de trabalho podem ter acesso aos dados nesses sistemas. Ele abrange a movimentação de dados, o processamento, a ingestão, a transformação, o roteamento de eventos em tempo real e a criação de relatórios. Ele oferece um conjunto abrangente de serviços que inclui Engenharia de Dados, Data Factory, Ciência de Dados, Análise em Tempo Real, Data Warehouse e Bancos de Dados.
O Microsoft Fabric integra componentes separados em uma pilha coesa. Em vez de depender de diferentes bancos de dados ou data warehouses, você pode centralizar o armazenamento de dados com o OneLake. Os recursos de IA são incorporados ao Fabric, eliminando a necessidade de integração manual.
Copilotos em tecido
O Copilot e outros recursos de IA generativa permitem transformar e analisar dados, gerar insights e criar visualizações e relatórios no Microsoft Fabric e no Power BI. Você pode construir seu próprio copiloto ou escolher um dos seguintes copilotos pré-construídos:
Habilidades de IA no Fabric
Com uma habilidade de IA do Microsoft Fabric, você pode configurar um sistema de IA generativa para gerar consultas que respondam a perguntas sobre seus dados. Depois de configurar a habilidade de IA, você pode compartilhá-la com seus colegas, que podem fazer suas perguntas em inglês simples. Com base em suas perguntas, a IA gera consultas sobre seus dados que respondem a essas perguntas.
- Qual é a habilidade de IA no Fabric? (versão prévia)
- Como criar uma habilidade de IA
- Exemplo de habilidade de IA
- Diferença entre uma habilidade de IA e um copiloto
Plataformas de dados baseadas no Apache Spark para IA
O Apache Spark é uma estrutura de processamento paralelo que dá suporte ao processamento na memória para aumentar o desempenho de aplicativos de análise de Big Data. O Spark oferece primitivos para computação de cluster na memória. Um trabalho do Spark pode carregar e armazenar dados em cache na memória e consultá-los repetidamente, o que é mais rápido do que aplicativos baseados em disco, como o Hadoop.
Apache Spark no Azure Fabric
O Microsoft Fabric Runtime é uma plataforma integrada ao Azure baseada no Apache Spark que permite a execução e o gerenciamento de experiências de engenharia de dados e ciência de dados. Ele combina os principais componentes de fontes internas e de software livre, fornecendo aos clientes uma solução abrangente.
Principais componentes do Fabric Runtime:
Apache Spark – Uma poderosa biblioteca de computação distribuída de código aberto que habilita tarefas de processamento e análise de dados em larga escala. O Apache Spark fornece uma plataforma versátil e de alto desempenho para experiências de engenharia de dados e ciência de dados.
Delta Lake – uma camada de armazenamento de software livre que traz transações ACID e outros recursos de confiabilidade de dados para o Apache Spark. Integrado no Microsoft Fabric Runtime, o Delta Lake aprimora os recursos de processamento de dados e garante a consistência dos dados em várias operações simultâneas.
Pacotes de nível padrão para Java/Scala, Python e R – Pacotes que dão suporte a diversos ambientes e linguagens de programação. Esses pacotes são instalados e configurados automaticamente, permitindo que os desenvolvedores apliquem suas linguagens de programação preferenciais para tarefas de processamento de dados.
O Microsoft Fabric Runtime é criado com base em um sistema operacional de software livre robusto, garantindo compatibilidade com várias configurações de hardware e requisitos do sistema.
Azure Databricks Runtime para Machine Learning
O Azure Databricks é uma plataforma de análise baseada no Apache Spark que oferece instalação com um clique, simplifica fluxos de trabalho e fornece um workspace interativo para colaboração entre cientistas de dados, engenheiros e analistas de negócios.
O Databricks Runtime para ML (Machine Learning) permite iniciar um cluster do Databricks com todas as bibliotecas necessárias para treinamento distribuído. Ele fornece um ambiente para aprendizado de máquina e ciência de dados. Além disso, ele contém várias bibliotecas populares, incluindo TensorFlow, PyTorch, Keras e XGBoost. Ele também suporta treinamento distribuído usando Horovod.
Guia de instruções: Databricks Runtime para Machine Learning
Pontuação em lote de modelos de machine learning do Spark no Azure Databricks
Apache Spark no Azure HDInsight
O Apache Spark no Azure HDInsight é a implementação do Apache Spark na nuvem, realizada pela Microsoft. Os clusters do Spark no HDInsight são compatíveis com o Armazenamento do Azure e com o Azure Data Lake Storage, portanto, você pode usar clusters do HDInsight Spark para processar dados armazenados no Azure.
A Biblioteca do Microsoft Machine Learning para Apache Spark é a SynapseML (anteriormente conhecida como MMLSpark). É uma biblioteca de código aberto que adiciona muitas ferramentas de aprendizado profundo e ciência de dados, funcionalidades de rede e desempenho de nível de produção ao ecossistema do Spark. Saiba mais sobre os recursos e as funcionalidades do SynapseML.
Visão geral do Azure HDInsight. Informações básicas sobre recursos, arquitetura de cluster e casos de uso, com ponteiros para guias de início rápidos e tutoriais.
Tutorial: compilar um aplicativo de aprendizado de máquina do Apache Spark no Azure HDInsight
Repositório do GitHub para o SynapseML: Biblioteca do Microsoft Machine Learning para Apache Spark
Criar um pipeline de machine learning do Apache Spark no HDInsight
Armazenamento de dados para IA
Microsoft Fabric OneLake
O OneLake no Fabric é um data lake unificado e lógico feito sob medida para toda a organização. Ele serve como o hub central para todos os dados de análise e está incluído em todos os locatários do Microsoft Fabric. O OneLake no Fabric foi criado com base no Data Lake Storage Gen2.
OneLake no Fabric:
- Suporta tipos de arquivos estruturados e não estruturados.
- Armazena todos os dados tabulares no formato Delta Parquet.
- Fornece um único data lake dentro dos limites do locatário que é regido por padrão.
- Dá suporte à criação de espaços de trabalho em um locatário para que uma organização possa distribuir políticas de propriedade e acesso.
- Dá suporte à criação de vários itens de dados, como lakehouses e warehouses, a partir dos quais você pode acessar dados.
Para obter mais informações, consulte OneLake, o OneDrive para dados.
Azure Data Lake Storage Gen2
O Azure Data Lake Storage é um repositório único e centralizado em que você pode armazenar todos os seus dados, estruturados e não estruturados. Um data lake permite que sua organização armazene, acesse e analise com mais facilidade e rapidez uma ampla variedade de dados em um único local. Com um data lake, você não precisa conformar os seus dados para que se ajustem a uma estrutura existente. Em vez disso, você pode armazenar seus dados no formato bruto ou nativo, geralmente como arquivos ou como objetos binários grandes (blobs).
O Data Lake Storage Gen2 fornece semântica do sistema de arquivos, segurança em nível de arquivo e escala. Como essas funcionalidades são criadas no Armazenamento de Blobs, você também obtém um armazenamento em camadas de baixo custo, com funcionalidades de alta disponibilidade/recuperação de desastre.
O Data Lake Storage Gen2 torna o armazenamento do Azure a fundação para a criação de data lakes empresariais no Azure. Projetado desde o início para atender a vários petabytes de informações enquanto mantém centenas de gigabits de taxa de transferência, o Data Lake Storage Gen2 permite que você gerencie de uma maneira fácil grandes quantidades de dados.
Processamento de dados para IA
Fábrica de dados do Microsoft Fabric
Com o Data Factory, você pode ingerir, preparar e transformar dados de várias fontes de dados (por exemplo, bancos de dados, data warehouse, Lakehouse, dados em tempo real e muito mais). Quando você projeta cargas de trabalho, essa é uma ferramenta que pode ser fundamental para atender aos requisitos do DataOps.
O Data Factory dá suporte a soluções de código e sem código/com pouco código:
Os pipelines de dados permitem que você crie recursos de fluxo de trabalho em escala de nuvem. Com pipelines de dados, você pode usar a interface de arrastar e soltar para criar fluxos de trabalho que podem atualizar seu fluxo de dados, mover dados de tamanho de petabyte e definir pipelines de fluxo de controle.
Os fluxos de dados fornecem uma interface low-code para ingerir dados de centenas de fontes de dados, transformando seus dados usando 300+ transformações de dados.
Veja também:
Azure Databricks
Com a Plataforma de Inteligência de Dados do Databricks, você pode escrever código para criar um fluxo de trabalho de aprendizado de máquina usando a engenharia de recursos:
- Os pipelines de dados ingerem dados brutos, criam tabelas de recursos, treinam modelos e executam inferência em lote. Ao treinar e registrar um modelo usando a engenharia de recursos no Catálogo do Unity, o modelo é empacotado com metadados de recursos. Quando você usa o modelo para pontuação em lote ou inferência online, ele recupera automaticamente os valores de recursos. O chamador não precisa saber sobre eles ou incluir lógica para pesquisar ou unir recursos para pontuar novos dados.
- Os endpoints de serviço de modelo e recurso estão disponíveis com um único clique e fornecem milissegundos de latência.
- Monitoramento de modelos e dados.
Você também pode usar o Mosaic AI Vector Search, que é otimizado para armazenar e recuperar incorporações. As inserções são cruciais para aplicativos que exigem pesquisas de similaridade, como RAG (Geração aumentada de recuperação), sistemas de recomendação e reconhecimento de imagem.
Conectores de dados para IA
Os pipelines do Azure Data Factory e do Azure Synapse Analytics dão suporte a muitos armazenamentos de dados e formatos por meio das atividades Copiar, Fluxo de Dados, Pesquisar, Obter Metadados e Excluir. Para ver os conectores de armazenamento de dados disponíveis, os recursos com suporte e as configurações correspondentes e as opções de conexão ODBC genéricas, consulte Visão geral do conector do Azure Data Factory e do Azure Synapse Analytics.
IA personalizada
Azure Machine Learning
O Azure Machine Learning é um serviço de nuvem para acelerar e gerenciar o ciclo de vida de projetos de machine learning (ML). Profissionais, cientistas de dados e engenheiros de ML podem usá-lo em seus fluxos de trabalho cotidianos para: treinar e implantar modelos e gerenciar MLOps (operações de aprendizado de máquina).
O Azure Machine Learning oferece os seguintes recursos:
Seleção de algoritmo Alguns algoritmos fazem suposições específicas sobre a estrutura dos dados ou os resultados desejados. Se você conseguir encontrar um que atenda às suas necessidades, ele oferecerá resultados mais úteis, previsões mais exatas ou tempos de treinamento menores.
O ajuste ou otimização de hiperparâmetros é o processo de encontrar a configuração de hiperparâmetros que resulta no melhor desempenho. O processo é computacionalmente caro e manual. Os hiperparâmetros são parâmetros ajustáveis que permitem controlar o processo de treinamento do modelo. Por exemplo, com redes neurais, você decide o número de camadas ocultas e o número de nós em cada camada. O desempenho do modelo depende muito dos hiperparâmetros.
O Azure Machine Learning permite automatizar o ajuste de hiperparâmetros e executar experimentos em paralelo para otimizar hiperparâmetros com eficiência.
Treinamento de modelo. Com o Azure Machine Learning, você pode usar iterativamente um algoritmo para criar ou "ensinar" modelos. Uma vez treinados, esses modelos podem ser usados para analisar dados a partir dos quais as previsões podem ser feitas. Durante a fase de treinamento, um conjunto de dados conhecidos de qualidade é marcado para que campos individuais sejam identificáveis. Os dados marcados são alimentados a um algoritmo configurado para fazer uma previsão específica. Depois disso, o algoritmo gera um modelo que descreve os padrões encontrados como um conjunto de parâmetros. Durante a validação, os dados atualizados são marcados e usados para testar o modelo. O algoritmo é ajustado conforme necessário e possivelmente passa por mais treinamento. Por fim, a fase de teste usa dados de mundo real sem marcas nem destinos pré-selecionados. Supondo que os resultados do modelo sejam precisos, ele é considerado pronto para uso e pode ser implantado.
O aprendizado de máquina automatizado (AutoML) é o processo de automatizar as tarefas iterativas e demoradas do desenvolvimento de modelos de aprendizado de máquina. Ele pode reduzir significativamente o tempo necessário para fazer com que os modelos de ML fiquem prontos para a produção. O ML automatizado podem ajudar na seleção de modelo, no ajuste de hiperparâmetros, no treinamento de modelo e em outras tarefas, sem a necessidade de programação extensiva ou conhecimento de domínio.
Você pode usar o ML automatizado quando quiser que o Azure Machine Learning treine e ajuste um modelo para você usando uma métrica de destino especificada. O ML automatizado pode ser usado independentemente da experiência em ciência de dados para identificar um pipeline de aprendizado de máquina de ponta a ponta para qualquer problema.
Profissionais de ML e desenvolvedores de todos os setores podem usar o ML automatizado para:
Implemente soluções de ML sem amplo conhecimento de programação ou aprendizado de máquina
Economize tempo e recursos
Aplicar as melhores práticas de ciência de dados
Fornecer solução de problemas ágil
A pontuação também é chamada de previsão e é o processo de geração de valores com base em um modelo de machine learning treinado, considerando alguns novos dados de entrada. Os valores (ou pontuações) criados podem representar previsões de valores futuros, mas também uma categoria ou um resultado provável.
Engenharia de recursos e definição de recursos. Os dados de treinamento consistem em linhas e colunas. Cada linha é uma observação ou um registro e as colunas de cada linha são os recursos que descrevem cada registro. Normalmente, os recursos que melhor caracterizam os padrões nos dados são selecionados para criar modelos de previsão.
Embora muitos dos campos de dados brutos possam ser usados diretamente para treinamento de um modelo, muitas vezes é necessário criar outros recursos (projetados) que fornecem informações que diferenciam melhor os padrões nos dados. Esse processo é chamado de engenharia de recursos, em que o uso do conhecimento de domínio dos dados é usado para criar recursos que, por sua vez, ajudam os algoritmos de aprendizado de máquina a aprender melhor.
No Azure Machine Learning, técnicas de dimensionamento de dados e normalização são aplicadas para tornar mais fácil a engenharia de recursos. Coletivamente, essas técnicas e essa engenharia de recursos são chamadas de definição de recursos em experimentos de machine learning (ML) automatizado.
OpenAI do Azure
O Serviço OpenAI do Azure permite que você personalize modelos OpenAI para seus conjuntos de dados pessoais usando um processo conhecido como ajuste fino. Esta etapa de personalização permite que você obtenha mais informações do serviço fornecendo:
- Resultados de qualidade mais altos do que o que você pode obter apenas da engenharia de prompt
- A capacidade de treinar em mais exemplos do que pode se ajustar ao limite máximo de contexto de solicitação de um modelo.
- Economia de tokens devido a solicitações mais curtas
- Solicitações de latência inferior, especialmente ao usar modelos menores.
Para saber mais, veja:
- Personalizar um modelo com ajuste fino
- Tutorial de ajuste fino do OpenAI GPT-4o-mini do Azure
- Arquitetura de referência de bate-papo de ponta a ponta do OpenAI de linha de base
Serviços de IA do Azure para IA personalizada
Os serviços de IA do Azure oferecem recursos que permitem criar modelos e aplicativos de IA personalizados. Esta seção fornece uma visão geral de alguns desses principais recursos.
Fala Personalizada
A fala personalizada é um recurso do serviço de Fala de IA do Azure. Com a fala personalizada, você pode avaliar e melhorar a precisão do reconhecimento de fala para seus aplicativos e produtos. Um modelo de fala personalizado pode ser usado para conversão de fala em texto em tempo real, tradução de fala e transcrição em lote.
Pronto para uso, o reconhecimento de fala utiliza um Modelo de Linguagem Universal como um modelo base treinado com dados de propriedade da Microsoft e reflete a linguagem falada comumente usada. O modelo básico é pré-treinado com dialetos e fonética que representam vários domínios comuns. Quando você faz uma solicitação de reconhecimento de fala, o modelo base mais recente de cada linguagem com suporte é usado por padrão. O modelo base funciona bem na maioria dos cenários de reconhecimento de fala.
Um modelo personalizado pode ser usado para aumentar o modelo base para melhorar o reconhecimento do vocabulário específico do domínio específico ao aplicativo, fornecendo dados de texto para treinar o modelo. Ele também pode ser usado para melhorar o reconhecimento com base nas condições de áudio específicas do aplicativo, fornecendo dados de áudio com transcrições de referência.
Você também pode treinar um modelo com texto estruturado, quando os dados seguirem um padrão, para especificar pronúncias personalizadas e personalizar a formatação de texto de exibição com normalização de texto inversa personalizada, reescrita personalizada e filtragem personalizada de conteúdo ofensivo.
Tradutor personalizado
O Tradutor Personalizado é um recurso do serviço Azure AI Translator . Com o Custom Translator, empresas, desenvolvedores de aplicativos e provedores de serviços linguísticos podem criar sistemas personalizados de tradução automática neural (NMT). Os sistemas de tradução personalizada se integram aos aplicativos, fluxos de trabalho e sites existentes.
A plataforma permite que os usuários criem e publiquem sistemas de tradução personalizados de e para o inglês. O Tradutor Personalizado dá suporte a mais de três dúzias de idiomas que mapeiam diretamente para os idiomas disponíveis para NMT. Para obter uma lista completa, consulte Suporte ao idioma do tradutor.
O Custom Translator oferece os seguintes recursos:
Recurso | Descrição |
---|---|
Aplicar a tecnologia de tradução automática neural | Aprimore sua tradução aplicando a NMT (tradução automática neural) fornecida pelo Tradutor Personalizado. |
Criar sistemas que conhecem sua terminologia comercial | Personalize e crie sistemas de tradução usando documentos paralelos, que entendem as terminologias usadas em seus negócios e no setor. |
Usar um dicionário para criar seus modelos | Se você não tiver um conjunto de dados de treinamento, poderá treinar um modelo com dados de dicionário. |
Colaborar com outras pessoas | Colabore com sua equipe compartilhando seu trabalho com pessoas diferentes. |
Acessar seu modelo de tradução personalizada | Você pode acessar seu modelo de tradução personalizada a qualquer momento usando seus aplicativos/programas existentes por meio da API de Tradução de Texto da Microsoft V3. |
Modelos personalizados de Informação de Documentos
O Azure AI Document Intelligence usa tecnologia avançada de aprendizado de máquina para identificar documentos, detectar e extrair informações de formulários e documentos e retornar os dados extraídos em uma saída JSON estruturada. Com o Document Intelligence, você pode usar modelos de análise de documentos, pré-criados/pré-treinados ou seus modelos personalizados autônomos treinados.
Os modelos personalizados do Document Intelligence agora incluem modelos de classificação personalizados para cenários em que você precisa identificar o tipo de documento antes de invocar o modelo de extração. Um modelo de classificação pode ser combinado com um modelo de extração personalizado para analisar e extrair campos de formulários e documentos específicos para sua empresa. Os modelos de extração personalizados autônomos podem ser combinados para criar modelos compostos.
Ferramentas de IA personalizadas
Embora os modelos de IA pré-criados sejam úteis e cada vez mais flexíveis, a melhor maneira de obter o que você precisa da IA é criar um modelo adaptado às suas necessidades específicas. Existem duas ferramentas principais para criar modelos de IA personalizados: IA generativa e aprendizado de máquina tradicional:
Azure Machine Learning Studio
O Azure Machine Learning Studio é um serviço de nuvem para acelerar e gerenciar o ciclo de vida do projeto de ML (aprendizado de máquina). Profissionais de ML, cientistas de dados e engenheiros podem usá-lo em seus fluxos de trabalho diários para treinar e implantar modelos e gerenciar operações de aprendizado de máquina (MLOps).:
- Crie e treine o modelo do Azure Machine Learning com qualquer tipo de computação, incluindo Spark e GPUs para cargas de trabalho de IA grandes em escala de nuvem.
- Execute o AutoML (Azure Machine Learning) automatizado e a interface do usuário do tipo "arrastar e soltar" para o Azure Machine Learning de low-code.
- Implemente Azure Machine LearningOps de ponta a ponta e pipelines repetíveis do Azure Machine Learning.
- Use o painel de IA responsável para detecção de desvios e análise de erros.
- Orquestre e gerencie fluxos de engenharia e LLM de prompt.
- Implante modelos com pontos de extremidade da API REST, inferência em tempo real e em lote.
- Use Hubs (versão prévia) para compartilhar computação, cota, segurança e conectividade com recursos da empresa com um grupo de workspaces, centralizando a governança de TI. Configure um hub uma vez e crie espaços de trabalho seguros diretamente do Studio para cada projeto. Use hubs para gerenciar o trabalho da sua equipe no ML Studio e no AI Studio.
Estúdio de IA do Azure
O Azure AI Studio foi projetado para ajudá-lo a criar e implantar com eficiência aplicativos de IA generativos personalizados com o poder das amplas ofertas de IA do Azure:
- Compile juntos como uma equipe. Seu hub do Estúdio de IA fornece segurança de nível empresarial e um ambiente colaborativo com conexões e arquivos compartilhados com modelos, dados e computação pré-treinados.
- Organize seu trabalho. Seu projeto do Estúdio de IA ajuda você a salvar o estado, permitindo iterar da primeira ideia para o primeiro protótipo e, em seguida, o primeiro desenvolvimento de produção. Também convide facilmente outras pessoas para colaborar ao longo dessa jornada.
- Use sua plataforma e estruturas de desenvolvimento preferidas, como GitHub, Visual Studio Code, LangChain, Semantic Kernel, AutoGen, entre outras.
- Descubra e avalie o desempenho de mais de 1.600 modelos.
- Provisione MaaS (modelos como serviço) por meio de APIs sem servidor e ajuste hospedado.
- Incorpore vários modelos, fontes de dados e modalidades.
- Construa RAG (Geração Aumentada de Recuperação) utilizando seus dados corporativos protegidos sem a necessidade de ajuste fino.
- Orquestre e gerencie fluxos de prompts, engenharia e LLM (grande modelo de linguagem).
- Projete e proteja aplicativos e APIs com filtros e controles configuráveis.
- Avalie as respostas do modelo com fluxos de avaliação integrados e personalizados.
- Implante inovações de IA na infraestrutura gerenciada do Azure com monitoramento e governança contínuos em todos os ambientes.
- Monitore continuamente os aplicativos implantados quanto à segurança, qualidade e consumo de tokens na produção.|
Para obter uma comparação detalhada entre o Azure Machine Learning e o Azure AI Studio, consulte Azure Machine Learning vs. Azure AI Studio.
Prompt flow no Estúdio de IA do Azure
O prompt flow no Estúdio de IA do Azure é uma ferramenta de desenvolvimento projetada para simplificar todo o ciclo de desenvolvimento de aplicativos de IA alimentados por Modelos de Linguagem Grandes (LLMs). O prompt flow fornece uma solução abrangente que simplifica o processo de prototipagem, experimentação, iteração e implantação de seus aplicativos de IA.
- Prompt flow é um recurso que pode ser utilizado para gerar, personalizar ou executar um fluxo.
- Um fluxo é um conjunto de instruções executável que pode implementar a lógica de IA. Os fluxos podem ser criados ou executados por meio de várias ferramentas, como uma tela predefinida, LangChain, etc. As iterações de um fluxo podem ser salvas como ativos; uma vez implantado, um fluxo se tornará uma API. Nem todos os fluxos são prompt flows; em vez disso, o prompt flow é uma maneira de criar um fluxo.
- Um prompt é um pacote de entrada enviado a um modelo, que consiste na entrada do usuário, na mensagem do sistema e em quaisquer exemplos. A entrada do usuário é o texto enviado na janela do chat. A mensagem do sistema está definida como um conjunto de instruções para o modelo, com escopo em seus comportamentos e funcionalidades.
- Um fluxo de amostra é um fluxo de orquestração simples e predefinido que mostra como os fluxos funcionam e podem ser personalizados.
- Um prompt de exemplo é um prompt definido para um cenário específico que pode ser copiado de uma biblioteca e utilizado como está ou modificado no projeto do prompt.
Linguagens de código de IA personalizadas
O conceito principal da IA é o uso de algoritmos para analisar dados e gerar modelos para descrevê-los (ou pontuá-los) de maneiras úteis. Os algoritmos são escritos por desenvolvedores e cientistas de dados (e, às vezes, por outros algoritmos) usando código de programação. Duas das linguagens de programação mais populares para desenvolvimento de IA atualmente são Python e R.
O Python é uma linguagem de programação de alto nível de uso geral. Ele tem uma sintaxe simples e fácil de aprender que enfatiza a capacidade de leitura. Não há etapa de compilação. O Python tem uma biblioteca padrão grande, mas também dá suporte à capacidade de adicionar módulos e pacotes. Isso incentiva a modularidade e permite expandir os recursos quando necessário. Há um ecossistema grande e crescente de bibliotecas de IA e ML para Python, incluindo muitas prontamente disponíveis no Azure.
Introdução ao machine learning com o Python e o Azure Notebooks
scikit-learn
. Uma biblioteca de ML de código aberto para PythonPyTorch. Uma biblioteca Python de código aberto com um ecossistema rico que pode ser usado para aprendizado profundo, pesquisa visual computacional, processamento de idioma natural e muito mais
TensorFlow. Uma biblioteca matemática simbólica de código aberto também usada para aplicativos de ML e redes neurais
Tutorial: aplicar modelos de machine learning no Azure Functions com o Python e o TensorFlow
O R é uma linguagem e um ambiente para gráficos e computação estatística. Ele pode ser usado para tudo, desde o mapeamento de tendências sociais e de marketing online amplas até o desenvolvimento de modelos financeiros e climáticos.
A Microsoft adotou totalmente a linguagem de programação R e fornece muitas opções diferentes para os desenvolvedores de R executarem os próprios códigos no Azure.
Informações gerais sobre IA personalizada no Azure
IA da Microsoft no GitHub: exemplos, arquiteturas de referência e melhores práticas
Notebooks do SDK do Python do Azure Machine Learning. Um repositório do GitHub com notebooks de exemplo que demonstram o SDK do Python do Azure Machine Learning.
Treinar modelos do R usando a CLI do Azure Machine Learning (v2)
Histórias do cliente
Diferentes setores estão aplicando IA de maneiras inovadoras e inspiradoras. A seguir estão alguns estudos de caso de clientes e histórias de sucesso:
- Volkswagen: tradução automática fala Volkswagen em 40 idiomas
- Assistência médica para todos com Kry usando o Azure Open AI
- A PIMCO aprimora o atendimento ao cliente com uma plataforma de pesquisa baseada em IA criada no Azure AI
- Legrand e Azure OpenAI Service: potencializando soluções mais inteligentes com ferramentas orientadas por IA
- A C.H. Robinson supera barreiras de décadas para automatizar o setor de logística usando a IA do Azure
Procurar mais histórias de clientes de IA
Informações gerais sobre a IA da Microsoft
Saiba mais sobre a IA da Microsoft e fique por dentro das notícias relacionadas:
Próximas etapas
Para saber mais sobre os produtos de desenvolvimento de inteligência artificial disponíveis na Microsoft, acesse Microsoft AI.
Para obter treinamento sobre como desenvolver soluções de IA, acesse o hub de aprendizado de IA.
IA da Microsoft no GitHub: exemplos, arquiteturas de referência e melhores práticas organiza os repositórios baseados em IA de código aberto da Microsoft, fornecendo tutoriais e materiais de aprendizado.