# Andrew Ng Explores The Rise Of AI Agents And Agentic Reasoning | BUILD 2024 Keynote

Canal: Snowflake Inc.
Data: 20241119

## Transcrições

### Vídeo: https://www.youtube.com/watch?v=KrRD7r7y7NY
Idioma: English (auto-generated)

# Bem-vindo, Andrew: O Futuro das Oportunidades da IA

[Aplausos]

Obrigado! É um momento excelente para ser um construtor. Estou entusiasmado por estar de volta ao Snowflake Build. Hoje, gostaria de partilhar onde penso que estão algumas das maiores oportunidades da IA.

## A IA como a Nova Eletricidade

Já me devem ter ouvido dizer que acho que a IA é a nova eletricidade. Isso porque a IA, tal como a eletricidade, é uma tecnologia de propósito geral. Se vos perguntar: "Para que serve a eletricidade?", é sempre difícil responder porque serve para tantas coisas diferentes. Da mesma forma, a nova tecnologia de IA está a criar um enorme conjunto de oportunidades para construirmos novas aplicações que antes não eram possíveis.

## A Pilha da IA

As pessoas perguntam-me muitas vezes: "Ei, Andrew, onde estão as maiores oportunidades da IA?" Isto é o que eu considero como a pilha da IA:

- **Semicondutores**: No nível mais baixo.
- **Infraestrutura Cloud**: Incluindo, claro, a Snowflake.
- **Treinadores de Modelos de Base e Modelos**: No topo da infraestrutura cloud.

Muito do entusiasmo e hype mediático, especialmente nas redes sociais, tem-se centrado nestas novas camadas tecnológicas. Quando surge uma nova tecnologia como a IA generativa, o foco está nestas camadas tecnológicas. Não há nada de errado com isso, mas acho que, quase por definição, há outra camada da pilha que tem de funcionar ainda melhor: a **camada de aplicações**.

Precisamos que as aplicações gerem ainda mais valor e receita para realmente podermos pagar aos fornecedores de tecnologia abaixo. Por isso, passo muito do meu tempo a pensar em aplicações de IA, e acho que é aí que estarão muitas das melhores oportunidades para construir coisas novas.

## Desenvolvimento Rápido e Mais Rápido de Modelos de Machine Learning

Uma das tendências que tem vindo a crescer nos últimos anos, em grande parte devido à IA generativa, é o desenvolvimento rápido e ainda mais rápido de modelos de machine learning. A IA generativa está a permitir-nos construir coisas mais rapidamente do que nunca.

Tomemos o problema de construir um classificador de sentimentos — pegar num texto e decidir se tem um sentimento positivo ou negativo para monitorização de reputação. Um fluxo de trabalho típico usando aprendizagem supervisionada pode demorar um mês para obter alguns dados rotulados, depois treinar um modelo de IA, o que pode demorar alguns meses, e depois encontrar um serviço cloud para implementar, o que pode demorar mais alguns meses. Assim, durante muito tempo, sistemas de IA muito valiosos podiam demorar seis a 12 meses a serem construídos por boas equipas de IA.

Não há nada de errado com isso; muitas pessoas criam sistemas de IA muito valiosos desta forma. Mas com a IA generativa, há certas classes de aplicações onde se pode escrever um prompt em dias e depois implementá-lo talvez também em dias. Isto significa que há muitas aplicações que antes me levavam a mim e a boas equipas de IA meses a construir e que hoje se podem construir em talvez 10 dias.

Isto abre a oportunidade de experimentar a construção de novos protótipos e lançar novos produtos de IA. A experimentação rápida está a tornar-se um caminho mais promissor para a invenção. Anteriormente, se demorasse seis meses a construir algo, era melhor estudá-lo, garantir que havia procura do utilizador, fazer com que os gestores de produto o analisassem, documentá-lo e depois gastar todo esse esforço a construí-lo, na esperança de que valesse a pena.

Mas agora, para equipas de IA em movimento rápido, vejo um padrão de design onde se pode dizer: "Sabes que mais? Demora-nos um fim de semana a montar um protótipo. Vamos construir 20 protótipos e ver o que resulta." Se 18 deles não funcionarem, ficamos com o que funciona. Assim, a iteração rápida e a experimentação rápida estão a tornar-se um novo caminho para inventar novas experiências de utilizador.

## O Gargalo das Avaliações

Uma das implicações interessantes é que as avaliações, ou "evals" para abreviar, estão a tornar-se um gargalo maior na forma como construímos coisas. No mundo da aprendizagem supervisionada, se estivesses a recolher 10.000 pontos de dados de qualquer maneira para treinar um modelo, então se precisasses de recolher mais 1.000 pontos de dados para testes, não havia problema — apenas um aumento de 10% no custo.

Mas para muitas aplicações baseadas em modelos de linguagem grandes, se não houver necessidade de ter dados de treino, se me obrigarem a abrandar para recolher mil exemplos de teste, isso parece um grande gargalo. Assim, o novo fluxo de trabalho de desenvolvimento muitas vezes parece que estamos a construir e a recolher dados mais em paralelo do que sequencialmente. Construímos um protótipo, e à medida que se torna mais importante e à medida que a robustez e a fiabilidade se tornam mais importantes, vamos gradualmente construindo esse conjunto de testes em paralelo.

Vejo inovações emocionantes a serem feitas ainda na forma como construímos evals.

## Prototipagem e Produção

O que também estou a ver é que a prototipagem de machine learning se tornou muito mais rápida, mas construir uma aplicação de software tem muitos passos. O produto funciona? O design funciona? A integração do software funciona? Muito trabalho de canalização. Depois, após a implementação, há DevOps e L Ops.

Algumas dessas outras peças estão a tornar-se mais rápidas, mas não se tornaram mais rápidas à mesma taxa que a parte de modelação de machine learning se tornou mais rápida. Assim, pegas num processo, e uma parte dele torna-se muito mais rápida. O que estou a ver é que a prototipagem é realmente rápida, mas por vezes levar um protótipo para uma produção robusta e fiável com guardrails e assim ainda demora algum tempo.

A dinâmica interessante que estou a ver é que o facto de a parte de machine learning ser tão rápida está a colocar muita pressão nas organizações para acelerar todas essas outras partes também. Isso tem sido um progresso emocionante para o nosso campo em termos de como o desenvolvimento de machine learning está a acelerar as coisas.

## Mover Rápido e Ser Responsável

Acho que o mantra "mover rápido e partir coisas" ganhou má reputação porque, bem, partiu coisas. Algumas pessoas interpretam isto como significando que não devemos mover-nos rápido, mas discordo disso. Acho que o melhor mantra é "mover rápido e ser responsável."

Estou a ver muitas equipas capazes de prototipar rapidamente, avaliar e testar de forma robusta sem enviar nada para o mundo exterior que possa causar danos ou prejuízos significativos. Estou a encontrar equipas inteligentes capazes de construir muito rapidamente e mover-se muito depressa, mas também a fazê-lo de uma forma muito responsável. Acho isto emocionante — que se possam construir coisas e enviar coisas de uma forma responsável muito mais rapidamente do que nunca.

## Fluxos de Trabalho de IA Agente

Agora, há muita coisa a acontecer na IA, e de todas as coisas que estão a acontecer em termos de tendências técnicas, a tendência que mais me entusiasma são os **fluxos de trabalho de IA agente**. Se me perguntassem qual é a tecnologia de IA mais importante a que devemos prestar atenção, diria que é a IA agente.

Quando comecei a dizer isto no início deste ano, era uma afirmação um pouco controversa, mas agora o termo "agentes de IA" tornou-se tão amplamente utilizado por pessoas técnicas e não técnicas que se tornou um pouco um termo de hype. Por isso, deixem-me partilhar convosco como vejo os agentes de IA e porque acho que são importantes.

Do ponto de vista técnico, a forma como a maioria de nós usa modelos de linguagem grandes hoje é com o que se chama **prompting zero-shot**. Isso significa que lhe pedimos para dar um prompt — escrever um ensaio ou escrever uma saída para nós — e é um pouco como se estivéssemos a ir a uma pessoa ou, neste caso, a ir a uma IA e pedir-lhe para escrever um ensaio para nós indo da primeira palavra escrevendo da primeira palavra até à última palavra de uma só vez sem nunca usar o backspace, simplesmente do início ao fim assim.

Acontece que as pessoas — não fazemos a nossa melhor escrita desta forma. Mas apesar da dificuldade de ser forçado a escrever desta forma, os modelos de IA fazem um trabalho bastante bom. Aqui está como é um fluxo de trabalho agente: para gerar um ensaio, pedimos a uma IA para primeiro escrever um esboço do ensaio, fazer alguma pesquisa na web se necessário, descarregar algumas páginas web e colocá-las no contexto do modelo de linguagem grande, depois escrever o primeiro rascunho, ler o primeiro rascunho e criticá-lo.

# Fluxos de Trabalho Agentes: Revolucionando o Desempenho da IA

## Introdução aos Fluxos de Trabalho Agentes

Ao rever um rascunho ou lidar com tarefas complexas, o fluxo de trabalho envolve frequentemente um processo cíclico de pensamento, pesquisa, revisão e iteração. Este ciclo, embora demorado, melhora significativamente a qualidade do resultado. Em várias equipas com as quais colaboro, aplicamos este **fluxo de trabalho agente** para lidar com tarefas intrincadas, como o processamento de documentos legais complexos, assistência em diagnósticos de saúde e gestão de documentação de conformidade governamental. Esta abordagem produz consistentemente resultados superiores em comparação com métodos tradicionais.

## O Poder dos Fluxos de Trabalho Agentes na IA

Uma área que me entusiasma particularmente discutir é a **IA visual**, onde os fluxos de trabalho agentes permitem o processamento de dados de imagem e vídeo. Mas antes de mergulharmos nisso, vamos explorar como os fluxos de trabalho agentes superam os métodos tradicionais em benchmarks de IA.

### Benchmarking dos Fluxos de Trabalho Agentes

O **HumanEval Benchmark**, desenvolvido pela OpenAI, mede a capacidade dos grandes modelos de linguagem (LLMs) para resolver puzzles de codificação. A minha equipa recolheu dados sobre este benchmark, e os resultados são impressionantes:

- **GPT-3.5** alcançou uma taxa de precisão de 48%.
- **GPT-4** mostrou uma melhoria significativa, atingindo 67%.
- No entanto, a melhoria mais notável veio do **GPT-3.5 usando um fluxo de trabalho agente**, que alcançou até 95% de precisão. O GPT-4 com um fluxo de trabalho agente também teve um desempenho excecional.

Estes resultados destacam o potencial transformador dos fluxos de trabalho agentes para melhorar o desempenho da IA.

---

## Quatro Padrões de Design Principais para Fluxos de Trabalho Agentes

Para desmistificar os fluxos de trabalho agentes, vamos decompor os quatro padrões de design principais que os sustentam:

### 1. Reflexão
A reflexão envolve pedir a um LLM para criticar e melhorar o seu próprio output. Por exemplo:
- Comece por pedir ao LLM para gerar código para uma tarefa específica.
- Copie o código gerado de volta para o prompt e peça ao LLM para o criticar.
- Use o feedback para pedir ao LLM que refine o código.
- Opcionalmente, incorpore testes unitários para fornecer feedback adicional para mais iterações.

Este processo iterativo frequentemente eleva o desempenho de base para um nível superior.

### 2. Uso de Ferramentas
Neste padrão, o LLM é solicitado a gerar pedidos para chamadas de API, permitindo-lhe realizar tarefas como:
- Pesquisar na web
- Executar código
- Emitir reembolsos a clientes
- Enviar emails
- Consultar entradas de calendário

Este padrão de design expande as capacidades dos LLMs, permitindo-lhes interagir com ferramentas e sistemas externos.

### 3. Planeamento
O planeamento envolve a divisão de tarefas complexas numa sequência de ações. Por exemplo:
- Dado um pedido como "gerar uma imagem de uma rapariga a ler um livro", o LLM pode:
  1. Usar um modelo OpenPose para detetar a pose.
  2. Gerar a imagem.
  3. Descrever a imagem.
  4. Usar text-to-speech (TTS) para gerar áudio.

Ao planear e executar tarefas passo a passo, os LLMs podem lidar com pedidos mais complexos de forma eficaz.

### 4. Colaboração Multi-Agente
Este padrão envolve pedir a um LLM para desempenhar múltiplos papéis dentro de um único fluxo de trabalho. Por exemplo:
- Um agente pode atuar como programador, enquanto outro critica o código.
- Estes agentes simulados interagem para resolver tarefas de forma colaborativa.

Esta abordagem espelha o conceito de executar múltiplos processos numa CPU, onde a divisão de tarefas em subtarefas e a sua atribuição a agentes especializados leva a melhores resultados.

---

## A Ascensão dos Fluxos de Trabalho Agentes Multimodais

Embora os fluxos de trabalho agentes tenham sido principalmente aplicados a modelos de linguagem, estou particularmente entusiasmado com o seu potencial em **modelos multimodais**. Por exemplo, dada uma imagem, um modelo multimodal pode realizar previsões zero-shot (por exemplo, identificar o número de corredores numa corrida). No entanto, os fluxos de trabalho agentes podem melhorar este processo, dividindo-o em passos:
1. Detetar rostos na imagem.
2. Identificar números.
3. Combinar os dados para fornecer um output mais preciso.

Esta abordagem passo a passo permite que os modelos multimodais lidem com tarefas mais complexas de forma eficaz.

---

## Demonstração: Fluxos de Trabalho Agentes na IA Visual

Para ilustrar o poder dos fluxos de trabalho agentes, vamos ver uma demonstração desenvolvida por Dan Malone e a equipa HAI. Vamos usar uma imagem de um jogo de futebol e pedir ao modelo para contar os jogadores. Ao aproveitar os fluxos de trabalho agentes, o modelo pode:
- Detetar jogadores.
- Contá-los.
- Fornecer um resultado preciso.

Este exemplo mostra como os fluxos de trabalho agentes podem transformar tarefas de IA visual, permitindo que os modelos lidem com desafios complexos com precisão.

---

## Conclusão

Os fluxos de trabalho agentes representam um salto significativo nas capacidades da IA. Ao incorporar reflexão, uso de ferramentas, planeamento e colaboração multi-agente, podemos construir sistemas que entregam resultados muito além do que era possível há apenas um ano. Seja aplicado a modelos de linguagem ou sistemas multimodais, os fluxos de trabalho agentes estão a desbloquear novas possibilidades e a impulsionar a inovação em várias indústrias.

# Vision Agent: Revolucionando as Aplicações de IA Visual

Deixe-me demonstrar como isto funciona. Vamos começar por contar o número de jogadores em campo. Isto inicia um processo que decorre durante alguns minutos, pensando em como escrever código para contar com precisão o número de jogadores visíveis. Isto é na verdade um pouco complexo porque não queremos contar os jogadores que estão em segundo plano.

Já executei isto anteriormente, por isso vamos saltar para o resultado. O código selecionou sete jogadores em campo e, ao contar, vemos que está correto: 1, 2, 3, 4, 5, 6, 7. Ao ampliar a saída do modelo, confirmamos esta precisão.

## Geração de Código Reutilizável

Um dos resultados é o código Python gerado que pode ser executado repetidamente em grandes coleções de imagens. Isto é emocionante porque muitas empresas e equipas têm grandes quantidades de dados de IA visual — imagens e vídeos — armazenados algures, mas até agora tem sido difícil extrair valor destes dados.

Para pequenas equipas ou grandes empresas com extensos dados visuais, capacidades como o Vision Agent permitem-lhe aproveitar dados previamente armazenados e extrair valor real deles. Isto representa uma transformação significativa para a IA.

## Processamento de Dados de Vídeo

Aqui está outro exemplo: dado um vídeo de um jogo de futebol, a tarefa é dividir o vídeo em clips de 5 segundos e encontrar o clip onde um golo é marcado, depois exibir o frame relevante. O sistema gera e avalia código, e a saída indica que um golo foi marcado por volta do minuto 10:15. Também extrai frames associados a este evento, tornando-o altamente útil para processar dados de vídeo.

## Geração de Metadados

Outra funcionalidade poderosa é a capacidade de dividir um vídeo de entrada em pequenos segmentos, descrever cada segmento e armazenar a informação num Pandas DataFrame juntamente com os nomes dos clips e timestamps. Estes metadados podem então ser armazenados em plataformas como o Snowflake para construir outras aplicações em cima deles.

## Construção de Aplicações com o Vision Agent

Utilizando as capacidades de geração de código do Vision Agent, a minha equipa na Landing AI construiu uma aplicação de demonstração que indexa vários vídeos. Por exemplo, pesquisar por "esquiador no ar" mostra clips com alta similaridade, marcados a verde na linha do tempo. Isto permite uma navegação e recuperação fácil de segmentos de vídeo específicos.

Outro exemplo é pesquisar por "lobo cinzento à noite", onde as partes verdes da linha do tempo indicam onde o lobo cinzento aparece. Saltar para diferentes partes do vídeo revela outro conteúdo, tornando-o uma forma divertida e eficiente de navegar por coleções de vídeo.

## Aplicações Práticas

Considere um cenário onde precisa de encontrar a sua mala preta com uma correia arco-íris entre muitas malas pretas. O Vision Agent pode ajudar a identificar e recuperar a mala correta com base em descritores específicos.

## Oportunidades e Tendências de IA

Em termos de oportunidades de IA, os fluxos de trabalho agentes estão a mudar a stack de IA. Há uma nova camada emergente de orquestração agentes, tornando mais fácil para os desenvolvedores construir aplicações. O Vision Agent da Landing AI contribui para isto ao simplificar o processo de construção de aplicações de IA visual para processar dados de imagem e vídeo.

### Tendências Chave de IA

1. **Velocidade de Geração de Tokens**: Os fluxos de trabalho agentes geram muitos tokens, e há esforços emocionantes para acelerar a geração de tokens através de avanços em semicondutores e software.
2. **Otimização do Uso de Ferramentas**: Os grandes modelos de linguagem estão cada vez mais ajustados para suportar o uso de ferramentas, melhorando as suas capacidades em fluxos de trabalho agentes.
3. **Engenharia de Dados**: A importância da engenharia de dados está a aumentar, particularmente com dados não estruturados como texto, imagens e vídeo.
4. **Revolução dos Dados Visuais**: Enquanto o processamento de texto já revolucionou a IA, o processamento de imagens está nos seus estágios iniciais mas promete desbloquear valor significativo a partir de dados visuais.

Estas tendências estão a moldar o futuro da IA, permitindo aplicações mais sofisticadas e valiosas do que nunca.

# Construir com IA: Desbloquear Novas Possibilidades

Este é um momento emocionante para ser um construtor. A IA generativa está a permitir-nos experimentar e inovar mais rapidamente do que nunca. As capacidades da IA estão a expandir o âmbito do que é possível, abrindo portas para inúmeras novas aplicações — seja em IA visual ou além — que antes eram inimagináveis.

## Experimente as Demonstrações de IA Visual

Se estiver interessado em explorar as demonstrações de IA visual que mostrei, visite [va.landing.ai](https://va.landing.ai). Encontrará as mesmas demonstrações que executei, juntamente com o código, para que possa experimentá-las você mesmo e integrá-las nas suas próprias aplicações.

## Agradecimentos e Palavras Finais

Com isto, gostaria de estender os meus sinceros agradecimentos a todos. Por favor, juntem-se a mim para dar as boas-vindas de volta ao palco à Elsa. Obrigado!

---
