Texto original:Agentes com capacidade geral em mundos abertos [S62816]
1. inteligência reflexiva
- Capacidade de verificar e modificar seu próprio código ou conteúdo gerado e otimizá-lo iterativamente
- Por meio da autorreflexão e da revisão, é possível gerar resultados de maior qualidade
- É uma tecnologia robusta e eficaz, adequada para uma ampla gama de aplicações.
2. uso de inteligências instrumentais
- Capacidade de usar uma variedade de ferramentas para coletar informações, analisar e agir, expandindo a gama de aplicativos
- As primeiras pesquisas sobre o uso de ferramentas originaram-se principalmente no campo da visão computacional, em que os modelos de linguagem ainda não eram capazes de processar imagens.
3. inteligência de planejamento
- Demonstra uma incrível capacidade de desenvolver e executar planos de forma autônoma com base nos objetivos da tarefa.
- Se uma etapa falhar, a capacidade de redirecionar a rota para evitar falhas, com um grau de autonomia e adaptabilidade.
- Ainda não é totalmente confiável, mas quando funciona, é incrível.
4. inteligência múltipla colaborativa
- Ao estabelecer inteligências com funções diferentes e permitir que trabalhem juntas para concluir tarefas, elas podem demonstrar habilidades mais fortes do que uma única inteligência.
- A inteligência múltipla pode se envolver em um diálogo profundo e na divisão de trabalho para realizar tarefas criativas ou de desenvolvimento complexas.
- Também é possível que várias inteligências sejam debatidas, o que é uma maneira eficaz de melhorar o desempenho do modelo.
Estou ansioso para compartilhar minhas descobertas sobre inteligências de IA, que considero uma tendência empolgante à qual qualquer pessoa envolvida no desenvolvimento de IA deve ficar atenta. Também estou ansioso por todas as "tendências futuras" que serão apresentadas.
Então, vamos falar sobre a inteligência da IA. Agora, a maneira como a maioria de nós usa o Big Language Modelling é assim: por meio de um fluxo de trabalho sem inteligência, digitamos um prompt e geramos uma resposta. É como quando você pede a alguém para escrever um artigo sobre um determinado tópico, e eu digo que você simplesmente se senta diante do teclado e o digita de uma só vez, como se não fosse permitido o retrocesso. Apesar da dificuldade dessa tarefa, o modelo de linguagem grande tem um desempenho surpreendentemente bom.
Por outro lado, um fluxo de trabalho com inteligências de IA pode ter a seguinte aparência. Faça com que uma IA ou um modelo de linguagem grande escreva o esboço de um artigo. Precisa procurar algo on-line? Se você precisar, procure. Em seguida, escreva um primeiro rascunho e leia o primeiro rascunho que você mesmo escreveu e pense em quais partes precisam ser alteradas. Em seguida, revise seu primeiro rascunho e siga em frente. Portanto, esse fluxo de trabalho é iterativo, você pode fazer com que o modelo de linguagem grande pense um pouco, depois revise o artigo, depois pense mais um pouco e assim por diante. Poucas pessoas percebem que os resultados são melhores dessa forma. Eu mesmo me surpreendi com os resultados dos fluxos de trabalho dessas inteligências de IA.
Vou fazer um estudo de caso. Minha equipe analisou alguns dados usando um benchmark de programação chamado Human Evaluation Benchmark, que foi lançado pela OpenAI há alguns anos. Esse benchmark consiste em problemas de programação, como encontrar a soma de todos os elementos ímpares ou elementos em posições ímpares, dada uma lista não vazia de números inteiros. A resposta pode ser um trecho de código como este. Muitos de nós usamos dicas de amostra zero, o que significa que dizemos à IA para escrever o código e, em seguida, ela o executa de uma só vez. Quem programaria dessa forma? Ninguém faz isso. Simplesmente escrevemos o código e depois o executamos. Talvez você faça isso. Eu não consigo.
Portanto, de fato, se você usar o GPT 3.5 para cueing de amostra zero, ele obtém 481 TP3 T. O GPT-4 se sai muito melhor, obtendo 671 TP3 T. Mas se você criar um fluxo de trabalho de inteligências de IA sobre o GPT 3.5, ele poderá se sair ainda melhor do que o GPT-4. Se você aplicar esse fluxo de trabalho ao GPT-4, os resultados também serão muito bons. Você notará que o GPT 3.5 com o fluxo de trabalho AI Intelligentsia é realmente melhor que o GPT-4, o que significa que ele terá um grande impacto na maneira como criamos aplicativos.
O termo AI Intelligentsia é amplamente discutido e há muitos relatórios de consultoria discutindo sobre AI Intelligentsia, o futuro da IA e assim por diante. Gostaria de compartilhar com você, de forma mais substantiva, alguns dos padrões de design comuns que vejo nas inteligências de IA. Trata-se de um campo complexo e confuso, com muitas pesquisas e muitos projetos de código aberto. Há muita coisa acontecendo. Mas estou tentando dar uma visão geral mais relevante do que está acontecendo nas inteligências de IA.
A reflexão é uma ferramenta que acho que a maioria de nós deveria usar. Ela funciona. Acho que ela deveria ser mais amplamente utilizada. É realmente uma técnica muito robusta. Quando as utilizo, sempre consigo fazê-las funcionar. Quanto ao planejamento e à colaboração com várias inteligências, acho que é um campo emergente. Quando as utilizo, às vezes me surpreendo com o seu bom funcionamento. Mas, pelo menos neste momento, não tenho certeza de que sempre consigo fazer com que funcionem de forma consistente. Portanto, vou falar mais detalhadamente sobre esses quatro padrões de design nos próximos slides. Se algum de vocês voltar e experimentá-los, ou fizer com que seus engenheiros usem esses padrões, acho que verão ganhos de produtividade muito rapidamente.
Então, com relação à reflexão, aqui está um exemplo. Digamos que eu peça a um sistema para codificar uma tarefa para mim. E, então, temos uma inteligência de programação que simplesmente lhe dá um prompt para codificar a tarefa, por exemplo, definir uma função que execute a tarefa, escrever uma função como essa. Um exemplo de autorreflexão é que você pode solicitar ao modelo de linguagem grande o seguinte. Aqui está um trecho de código escrito para uma determinada tarefa. Em seguida, apresente a ele exatamente o mesmo código que acabou de gerar novamente. Em seguida, peça a ele que examine esse código para ver se está correto, eficiente e bem estruturado, fazendo perguntas como esta. Os resultados mostram que o mesmo modelo de linguagem grande que você solicitou para o código antes pode ser capaz de detectar um problema como o bug na linha 5 e corrigi-lo. E assim por diante. E assim por diante. Se agora você apresentar a ele seu próprio feedback novamente, ele poderá criar a versão dois do código, que poderá ter um desempenho melhor do que a primeira versão. Não há garantias, mas na maioria dos casos vale a pena tentar essa abordagem em muitos aplicativos. Revelando isso antecipadamente, se você pedir que ele execute testes de unidade e, se não passar nos testes de unidade, poderá perguntar por que ele não passou nos testes de unidade. Ao manter esse diálogo, talvez possamos descobrir por que ele não passou nos testes de unidade, então você deve tentar mudar alguma coisa e gerar uma versão V3 do código. A propósito, para aqueles que quiserem saber mais sobre essas técnicas, estou muito animado com elas. Para cada parte da apresentação, incluí algumas leituras recomendadas na parte inferior para fornecer mais referências.
Novamente, para visualizar o sistema de corpo multiinteligente, estou descrevendo um corpo com inteligência de programação que pode ser solicitado a ter esse diálogo consigo mesmo. Uma evolução natural dessa ideia é que, em vez de ter apenas uma inteligência de programação, você poderia configurar duas inteligências, uma inteligente de programação e outra inteligente de revisão. Todas elas poderiam se basear no mesmo grande modelo de linguagem, apenas com dicas diferentes que fornecemos. Para uma parte, dizemos: você é um especialista em programação, escreva código. Para a outra parte, diríamos: você é um especialista em revisão de código, por favor, revise este código. Na verdade, é um fluxo de trabalho muito fácil de implementar. Acho que é uma técnica muito versátil que pode ser adaptada a uma variedade de fluxos de trabalho. Ela melhorará significativamente o desempenho do modelo de linguagem grande.
O segundo padrão de design é o uso de ferramentas. Muitos de vocês já devem ter visto como os sistemas baseados em grandes modelos de linguagem usam ferramentas. À esquerda, há uma captura de tela do copiloto e, à direita, uma parte do que extraí do GPT-4. No entanto, se você pedir ao grande modelo de linguagem atual para responder a uma pergunta como qual é a melhor copiadora para uma pesquisa na Web, ele gerará e executará o código. De fato, há muitas ferramentas diferentes que são usadas por muitas pessoas para realizar análises, coletar informações, tomar medidas e melhorar a eficiência pessoal.
Grande parte das primeiras pesquisas sobre o uso de ferramentas veio da comunidade de visão computacional. Isso se deve ao fato de que, antes do advento dos grandes modelos de linguagem, eles não podiam processar imagens. Portanto, a única opção era fazer com que o modelo de linguagem grande gerasse uma função que pudesse manipular imagens, como gerar imagens ou realizar a detecção de objetos. Portanto, se você examinar atentamente a literatura, verá que grande parte da pesquisa sobre o uso de ferramentas parece ter se originado no campo da visão, porque antes do advento do GPT-4 e do LLaVA e assim por diante, os grandes modelos de linguagem não sabiam nada sobre imagens. É aí que entra o uso de ferramentas, que amplia a gama de aplicações dos modelos de linguagem grandes.
O próximo passo é o planejamento. Para aqueles que ainda não se aprofundaram nos algoritmos de planejamento, acho que muitas pessoas falarão sobre o ChatGPT O momento chocante, a sensação de nunca ter estado lá antes. Acho que vocês provavelmente não usaram algoritmos de planejamento. Há muitas pessoas que exclamarão: "Nossa, não achei que as inteligências de IA pudessem fazer isso tão bem". Já fiz demonstrações ao vivo em que, quando algo falha, a inteligência de IA replaneja o caminho para evitar a falha. De fato, houve várias ocasiões em que fiquei impressionado com a autonomia dos meus próprios sistemas de IA.
Adaptei um exemplo de um artigo sobre modelos GPT, no qual você poderia fazer com que ele gerasse uma imagem de uma menina lendo um livro, com a mesma pose do menino na imagem, por exemplo, example.jpeg, e depois descreveria o menino na nova imagem. Usando as inteligências de IA existentes, você poderia decidir primeiro determinar a pose do menino e depois encontrar um modelo adequado, possivelmente na plataforma HuggingFace, para extrair a pose. Em seguida, você precisa encontrar um modelo que pós-processe a imagem, sintetize uma imagem da garota de acordo com as instruções e, em seguida, use técnicas de imagem para texto e, finalmente, de texto para fala.
Atualmente, temos várias inteligências de IA e, embora nem sempre sejam confiáveis e, às vezes, possam ser um pouco complicadas e nem sempre funcionem, quando funcionam, os resultados são surpreendentes. Com esse tipo de projeto inteligente de ciclo corporal, às vezes podemos até nos recuperar de falhas anteriores. Descobri que comecei a usar inteligências de pesquisa como essa em alguns de meus trabalhos, quando preciso de alguma pesquisa, mas não quero gastar muito tempo procurando por ela. Entrego a tarefa à inteligência de pesquisa e volto um pouco mais tarde para ver o que ela encontrou. Às vezes, ele encontra resultados válidos, às vezes não. Mas, de qualquer forma, isso se tornou parte do meu fluxo de trabalho pessoal.
O último padrão de design é o Multi-Intelligence Collaboration (Colaboração Multi-Inteligência). Esse padrão pode parecer estranho, mas funciona melhor do que você imagina. À esquerda, há uma captura de tela de um documento chamado "Chat Dev", um projeto totalmente aberto e, na verdade, de código aberto. Muitos de vocês já devem ter visto aqueles lançamentos chamativos de mídia social chamados "Devin"A demonstração do "Chat Dev" está disponível em meu laptop." O "Chat Dev" é um exemplo de sistema de inteligência múltipla em que você pode configurar um Modelo de Linguagem Grande (LLM) para assumir a função de CEO, designer, gerente de produto ou testador de uma empresa de engenharia de software. Tudo o que você precisa fazer é dizer ao LLM que agora você é o CEO e que agora você é um engenheiro de software, e eles começarão a colaborar e a ter um diálogo profundo. Se você lhes disser para desenvolver um jogo, como o jogo GoMoki, eles passarão alguns minutos escrevendo código, testando, iterando e gerando programas incrivelmente complexos. Nem sempre funciona, e já tive minha cota de fracassos, mas às vezes é incrível o desempenho, e a tecnologia está melhorando o tempo todo. Além disso, outro padrão de design é permitir que diferentes inteligências debatam, você pode ter várias inteligências diferentes, como ChatGPT e Gêmeos A realização de um debate também é um padrão eficaz para melhorar o desempenho. Portanto, ter várias inteligências de IA simuladas trabalhando juntas provou ser um padrão de design muito poderoso.
Em geral, esses são os padrões de design que observei e acho que, se pudermos aplicá-los em nosso trabalho, poderemos melhorar os resultados da IA mais rapidamente. Acredito que o padrão de design Intelligent Body Reasoning será um desenvolvimento importante.
Este é o meu último slide. Espero que as tarefas que a IA possa realizar se expandam drasticamente este ano, devido ao impacto dos fluxos de trabalho corporais inteligentes. Uma coisa que pode ser difícil para as pessoas aceitarem é que, quando enviamos uma sugestão para o LLM, esperamos uma resposta imediata. De fato, em uma discussão que tive no Google há dez anos, chamada "Big Box Search", inserimos prompts muito longos. Não tive sucesso em insistir nisso porque, quando fazemos uma pesquisa na Web, queremos uma resposta em meio segundo, é a natureza humana. Gostamos de feedback instantâneo. Mas, para muitos fluxos de trabalho corporais inteligentes, acho que precisamos aprender a delegar tarefas a inteligências de IA, ser pacientes e esperar alguns minutos, talvez até horas, por uma resposta. Da mesma forma que vejo muitos gerentes novatos que delegam tarefas e depois verificam cinco minutos mais tarde, o que não é eficiente, precisamos fazer o mesmo com algumas inteligências de IA, embora isso seja muito difícil. Acho que ouvi algumas risadas.
Além disso, a rápida geração de token Os LLMs leem e geram tokens para si mesmos, e poder gerar tokens mais rapidamente do que qualquer outra pessoa é ótimo. Acredito que a capacidade de gerar mais tokens rapidamente, mesmo a partir de LLMs de qualidade ligeiramente inferior, pode produzir bons resultados, ao contrário da geração lenta de tokens a partir de LLMs de melhor qualidade, que pode não ser tão boa. Essa ideia pode causar alguma controvérsia, pois pode lhe dar mais algumas voltas no processo, como os resultados que mostrei no primeiro slide para o GPT-3 e a arquitetura de corpo inteligente.
Sinceramente, estou ansioso por isso. Claude 4, GPT-5, Gemini 2.0 e todos os outros modelos maravilhosos em construção. Parece-me que se você estiver ansioso para executar seu projeto no aprendizado de amostra zero do GPT-5, poderá descobrir que, ao usar a inteligência e a inferência nos primeiros modelos, poderá se aproximar dos níveis de desempenho do GPT-5 mais cedo do que o esperado. Acho que essa é uma tendência importante.
Com toda a honestidade, o caminho para a IA generalizada é mais uma jornada do que um destino, mas acho que esse fluxo de trabalho de corpo inteligente pode nos ajudar a dar um pequeno passo nessa longa jornada.
Muito obrigado.