Conceitos: IA no Azure Databricks

Um aplicativo de IA é um aplicativo que usa modelos de IA (como modelos de linguagem grandes, modelos de geração de imagem e modelos de conversão de texto em fala) para criar novas saídas, automatizar tarefas complexas ou se envolver em interações inteligentes com base na entrada do usuário.

Um aplicativo de IA pode ser alimentado por chamadas simples para LLMs ou outros modelos de IA ou por agentes complexos. Leia mais sobre níveis de complexidade.

Agentes, ferramentas, avaliação, modelos e outros aspectos dos aplicativos de IA podem ser personalizados com seus dados proprietários. Essa personalização controlada por dados leva à inteligência de dados, permitindo que você vá além da inteligência geral oferecida por modelos de IA enlatados.

Aplicativos de IA

Um aplicativo de IA voltado para o usuário pode usar várias formas, como:

O sucesso com aplicativos de IA geralmente requer dois conjuntos de habilidades: desenvolvimento de aplicativos e avaliação de IA. O desenvolvimento de aplicativos de IA é muito parecido com o desenvolvimento de aplicativos que não são de IA, exigindo habilidades de software que dependem do tipo de aplicativo. No entanto, a avaliação para aplicativos de IA requer ferramentas e técnicas especializadas para lidar com a complexidade e as respostas abertas da IA.

Para saber mais sobre como criar aplicativos de IA específicos do setor no Azure Databricks, consulte:

Avaliação de IA

Modelos de IA, agentes e aplicativos geralmente têm um comportamento complexo e aberto. Os usuários podem inserir qualquer consulta. Um agente pode ter permissão para coletar texto, imagens e muito mais durante a execução. A saída pode ser um texto arbitrário, imagens ou outras mídias, e pode haver muitas respostas "boas".

Essas complicações tornam desafiador avaliar a IA. A avaliação adequada requer:

  • Automação usando IA para avaliar IA
  • Comentários humanos de especialistas e usuários para coletar a verdade básica e calibrar a avaliação automatizada
  • Aprofundando-se em agentes complexos para entender e depurar o comportamento

O MLflow gerenciado por Azure Databricks e as ferramentas relacionadas fornecem as bases para avaliação de IA:

Agentes

Um agente ou sistema de agente é um sistema impulsionado por IA que pode perceber, decidir e agir de forma autônoma em um ambiente para alcançar objetivos. Ao contrário de um modelo de IA autônomo que só produz uma saída quando solicitado, um sistema de agente possui um grau de agência. Os agentes modernos usam um modelo de IA como o "cérebro" de um sistema que:

  1. Recebe solicitações ou mensagens de um usuário ou de outro agente.
  2. Motivos sobre como proceder: quais dados buscar, qual lógica aplicar, quais ferramentas chamar ou se deseja solicitar mais entradas do usuário.
  3. Executa um plano e chama possivelmente várias ferramentas ou delega para sub-agentes.
  4. Retorna uma resposta ou solicita ao usuário esclarecimentos adicionais.

Ao fazer a ponte de inteligência geral (os recursos pré-treinados do modelo de IA) e a inteligência de dados (o conhecimento especializado e as APIs específicas para sua empresa), os sistemas de agente permitem casos de uso corporativo de alto impacto, como fluxos avançados de atendimento ao cliente, bots de análise avançados de dados e orquestração de vários agentes para tarefas operacionais complexas.

Há um continuum de modelos de IA simples para agentes complexos. Para saber mais, confira os padrões de design do sistema do Agente.

O Azure Databricks fornece uma variedade de opções para a criação de agentes, desde totalmente guiados até totalmente personalizados:

  • AI Playground fornece uma interface do usuário para a criação de agentes que chamam ferramentas, da qual você pode exportar o código do agente gerado.
  • Os agentes personalizados permitem que você crie e implante agentes usando código personalizado ou bibliotecas de criação de agente de terceiros.

Ferramentas

Os agentes podem chamar ferramentas para coletar informações ou executar ações. As ferramentas são funções de interação única que uma LLM pode invocar para realizar uma tarefa bem definida. O modelo de IA normalmente gera parâmetros para cada chamada de ferramenta e a ferramenta fornece uma interação direta entre entrada e saída.

As categorias de ferramentas comuns incluem:

  • Ferramentas que recuperam ou analisam dados
    • Recuperação semântica: consulte um índice de vetor para localizar texto relevante ou outros dados não estruturados.
    • Recuperação estruturada: execute consultas SQL ou use APIs para recuperar informações estruturadas.
    • Ferramenta de pesquisa na Web: pesquise na Internet ou em um web corpus interno.
    • Modelos de ML clássicos: invoque modelos de machine learning para executar a classificação, a regressão ou outras previsões.
    • Modelos de IA: gerar saídas especializadas, como código ou imagens.
  • Ferramentas que modificam o estado de um sistema externo
    • Chamada à API: realizar chamadas em pontos de extremidade do CRM, serviços internos ou outras integrações de terceiros.
    • Integração de aplicativos de email ou mensagens: poste uma mensagem ou envie uma notificação.
  • Ferramentas que executam a lógica ou executam uma tarefa específica
    • Execução de código: execute o código fornecido pelo usuário ou gerado por LLM em uma área restrita.

As ferramentas podem ser incorporadas à lógica agente ou acessadas usando interfaces padronizadas como o MCP.

Ferramentas versus agentes:

  • As ferramentas executam uma única operação bem definida. Os agentes podem executar tarefas menos restritas.
  • As ferramentas geralmente não possuem estado e não mantêm um contexto contínuo além de cada invocação. Os agentes mantêm o estado à medida que resolvem tarefas de forma iterativa.

Tratamento e segurança de erros de ferramenta:

Como cada chamada de ferramenta é uma operação externa, como uma chamada à API, o sistema deve lidar com falhas normalmente. Tempos limite, respostas malformadas ou entradas inválidas não devem fazer com que o próprio agente falhe completamente. Em produção, limite o número de chamadas de ferramenta permitidas, tenha uma resposta alternativa se as chamadas de ferramenta falharem e aplique proteções para garantir que o sistema de agente não tente repetidamente a mesma ação que está falhando.

Saiba mais sobre as ferramentas de IA no Databricks:

Modelos de IA e LLMs

LlMs (Modelos de Linguagem Grandes) são modelos de IA treinados em conjuntos de dados de texto maciços que podem entender, gerar e raciocinar sobre a linguagem humana. LLMs são fundamentais em aplicativos como chatbots, assistentes de código e ferramentas de geração de conteúdo, prevendo e produzindo texto contextualmente relevante com base nas entradas dadas.

De modo mais geral, modelos de IA ou modelos de base são treinados em texto massivo, imagem, vídeo, áudio ou outros dados para saber mais sobre modos além do texto. Modelos multi modais aprendem a conectar a linguagem humana com imagens, áudio e outras mídias. As LLMs são um tipo de IA ou modelo de base, embora esses termos geralmente sejam usados de forma flexível e intercambiável.

Os modelos de IA fornecem a inteligência por trás de agentes e aplicativos. Aplicativos simples geralmente são criados usando um único modelo personalizado com engenharia de prompt.

Saiba mais sobre como usar modelos de IA no Azure Databricks:

Engenharia de prompts

Os modelos de IA geralmente tomam prompts ou instruções informando ao modelo como lidar com a entrada do usuário. Os prompts podem ser altamente personalizados com etapas detalhadas, conhecimento de especialistas, dados e outras informações.

Azure Databricks fornece maneiras flexíveis de realizar prompt engineering. Por exemplo:

Modelos de ajuste fino

Os modelos de IA também podem ser personalizados por meio do ajuste fino, que personaliza um modelo para um domínio ou aplicativo específico usando seus dados personalizados.

O Azure Databricks fornece maneiras flexíveis de ajustar modelos. Por exemplo:

O que é uma plataforma de IA?

A IA exige uma plataforma combinada de dados + IA. Para desenvolvedores e administradores, os principais componentes da IA devem ser conectados e regidos em uma plataforma simples e unificada.

Os componentes principais incluem:

  • Ativos de IA, como modelos, agentes e aplicativos
  • Ativos de dados, como arquivos, tabelas, pipelines de processamento, índices de vetor e armazenamentos de recursos
  • Implantações de IA, como pontos de extremidade para modelos e agentes
  • Ferramentas para criar e implantar ativos de IA e dados

Os principais recursos de governança incluem:

Veja também Azure Databricks funcionalidades de IA e a arquitetura do Databricks.

Inteligência geral versus inteligência de dados

Diagrama comparando inteligência geral versus inteligência de dados.

  • A inteligência geral refere-se ao que o LLM inerentemente sabe de uma ampla pré-preparação em textos diversos. Isso é útil para fluência de linguagem e raciocínio geral.
  • A inteligência de dados refere-se aos dados e APIs específicos do domínio da sua organização. Isso pode incluir registros de clientes, informações do produto, bases de dados de conhecimento ou documentos que refletem seu ambiente de negócios exclusivo.

Os sistemas de agente combinam essas duas fontes de conhecimento: eles começam com o conhecimento amplo e genérico de uma LLM e, em seguida, trazem dados específicos de domínio ou em tempo real para responder a perguntas detalhadas ou executar ações especializadas. Com Azure Databricks, você pode inserir a inteligência de dados em seus aplicativos de IA em todos os níveis:

IA vs. ML versus aprendizado profundo

Os limites entre IA, ML (machine learning) e DL (aprendizado profundo) podem ser difusos. Este guia se concentra na IA, mas os seguintes recursos da plataforma Databricks dão suporte a ML, aprendizado profundo e IA:

Recursos adicionais