Definindo APIs para Tarefas de IA no Mundo Real
Um jeito de criar APIs pra IA usando tutoriais do wikiHow.
― 6 min ler
Índice
- O Propósito do Experimento
- O Desafio da Implementação no Mundo Real
- Usando o wikiHow como Recurso
- Definindo um Ambiente Hipotético
- Traduzindo Instruções em Passos Acionáveis
- Princípios para Criar Ações
- Induzindo Ações a partir de Tutoriais
- Expandindo a Base de Conhecimento
- Avaliando as APIs e Ações Induzidas
- Métricas de Avaliação Automática
- Resultados e Insights
- Conclusão
- Direções Futuras
- Agradecimentos
- Fonte original
- Ligações de referência
Sistemas de IA estão ficando mais capazes de tomar decisões em situações do mundo real. Eles fazem isso usando Ações simples que se conectam a diferentes interfaces conhecidas como APIS. Essas APIs permitem que a IA execute tarefas como mover objetos ou interagir com o ambiente. Embora implementar IA no mundo real envolva várias ações diferentes, os Ambientes de simulação disponíveis muitas vezes oferecem um número limitado dessas APIs. Isso nos leva a perguntas importantes: quantas ações simples precisamos para um agente de IA que consiga lidar com várias tarefas? Como essas ações deveriam ser?
Para responder a essas perguntas, pensamos em Tutoriais do wikiHow, que são guias escritos por humanos que cobrem várias tarefas. Queremos descobrir que tipos de APIs seriam necessárias se usássemos esses tutoriais para guiar um agente de IA. Sugerimos um método para criar novas APIs gradualmente, ligando as instruções do wikiHow a como um agente agiria em uma situação real.
O Propósito do Experimento
O objetivo principal é descobrir como definir essas APIs. Queremos focar no que as APIs são em vez de se podem ser executadas imediatamente. Ao aplicar nosso método às instruções do wikiHow, conseguimos identificar mais de 300 APIs diferentes apenas olhando para um número pequeno de tutoriais. Nossa análise mostra que os ambientes de simulação existentes costumam apoiar apenas um número limitado das APIs que criamos. Isso destaca a necessidade de ambientes de simulação que possam lidar com uma gama mais ampla de ações.
O Desafio da Implementação no Mundo Real
Quando pensamos em usar um agente de IA em situações do mundo real, percebemos que ele precisa realizar uma variedade de ações. No entanto, muitos sistemas de IA atuais são limitados pelo pequeno número de APIs disponíveis em suas simulações. Isso é um grande problema porque tarefas da vida real exigem muito mais flexibilidade.
Para construir um agente de IA que consiga lidar com atividades diárias no mundo real, precisamos saber quais APIs ele precisa e como elas devem ser estruturadas. Abordamos isso observando as tarefas cobertas pelos tutoriais do wikiHow. Propomos uma maneira de criar novas APIs com base nessas instruções. Em nosso método, primeiro definimos algumas APIs básicas, depois as usamos para ajudar a gerar mais APIs conforme necessário.
Usando o wikiHow como Recurso
O wikiHow é um site conhecido com milhares de tutoriais para diferentes tarefas. Cada tutorial consiste em várias etapas escritas em linguagem natural, o que facilita para os humanos acompanharem. Usando esse recurso, podemos guiar nossa exploração das APIs necessárias para um agente de IA em tarefas do mundo real.
Definindo um Ambiente Hipotético
Criamos um ambiente simples com base nas instruções fornecidas no wikiHow. Cada tutorial dá informações sobre os objetos necessários para completar a tarefa. Para nosso propósito, simplificamos o ambiente ignorando detalhes espaciais e focando em como os objetos se relacionam entre si.
Traduzindo Instruções em Passos Acionáveis
Nosso objetivo é traduzir a linguagem do wikiHow em políticas claras para o agente de IA. Para isso, usamos exemplos dos tutoriais para guiar como definimos as ações. O objetivo é desabilitar ações excessivamente complicadas e criar APIs simples e claras que a IA possa usar.
Princípios para Criar Ações
Com base em trabalhos recentes, seguimos alguns princípios-chave para formar ações. Primeiro, buscamos simplicidade e clareza, evitando ações muito abstratas que possam confundir a IA. Em vez de criar uma ação ampla que cubra muitas tarefas, preferimos ações específicas que definam claramente o que o agente pode fazer.
Além disso, queremos que nossas APIs sejam úteis e fáceis de implementar em um cenário real. Isso exige encontrar um equilíbrio entre ações de alto nível e etapas mais específicas que o agente possa seguir.
Induzindo Ações a partir de Tutoriais
Estabelecemos um processo para criar ações olhando os tutoriais do wikiHow. Para cada tutorial, selecionamos aleatoriamente e construímos um prompt que inclui instruções e programas anteriormente criados. A IA, então, gera novos programas com base nesse input.
Expandindo a Base de Conhecimento
Ao avaliar os programas gerados, conseguimos adicionar novas APIs ao nosso conjunto crescente. Esse processo se repete, onde a IA constrói sobre sua saída anterior. Ao passar por mais tutoriais, criamos um conjunto de APIs mais abrangente.
Avaliando as APIs e Ações Induzidas
Avaliamos quão eficaz nosso método é olhando a qualidade das APIs e dos programas gerados. Como não podemos executar nossas APIs fisicamente, confiamos em avaliações humanas e estatísticas automáticas para medir sua eficácia. Observamos fatores como redundância, que mede quão únicas cada API é, e fidelidade, que verifica se os programas podem alcançar seus objetivos pretendidos.
Métricas de Avaliação Automática
Além das avaliações humanas, também acompanhamos estatísticas automáticas para entender o tamanho e a utilidade do conjunto de APIs. Medimos quantas APIs únicas criamos e com que frequência elas são usadas à medida que processamos mais tutoriais.
Resultados e Insights
Nossos resultados mostram que nosso método de criação de APIs pode levar a um conjunto diversificado de ações para um agente de IA. Depois de examinar uma pequena fração dos tutoriais, geramos um número considerável de APIs úteis. Isso sugere que há um espaço de ações muito maior no wikiHow do que o que é representado nos ambientes de simulação existentes.
Conclusão
Neste trabalho, buscamos aproximar o número e a natureza das ações necessárias para um agente de IA versátil em tarefas do mundo real. Ao usar uma abordagem sistemática para criar APIs com base em tutoriais do wikiHow, oferecemos uma maneira de enriquecer o espaço de ações dos agentes de IA. Nossas descobertas revelam lacunas significativas nos ambientes de simulação atuais, enfatizando a necessidade de sistemas que permitam um conjunto de ações mais rico e diversificado.
Direções Futuras
Embora tenhamos avançado na definição de uma ampla gama de APIs, nosso trabalho também destaca algumas limitações. Muitas das APIs que criamos ainda são um pouco redundantes, e escalar nosso processo de avaliação exigirá a execução dos programas gerados. Trabalhos futuros devem focar em refinamento dessas APIs, reduzindo redundâncias e testando nossos sistemas em configurações mais práticas, possivelmente usando ambientes baseados em vídeo para ver como os agentes se comportam em tempo real.
Agradecimentos
Esta pesquisa foi apoiada por várias doações e contribuições que forneceram recursos para nosso trabalho. Também apreciamos o feedback e o suporte da comunidade de pesquisa que guiou nossos esforços nesta área.
Título: WorldAPIs: The World Is Worth How Many APIs? A Thought Experiment
Resumo: AI systems make decisions in physical environments through primitive actions or affordances that are accessed via API calls. While deploying AI agents in the real world involves numerous high-level actions, existing embodied simulators offer a limited set of domain-salient APIs. This naturally brings up the questions: how many primitive actions (APIs) are needed for a versatile embodied agent, and what should they look like? We explore this via a thought experiment: assuming that wikiHow tutorials cover a wide variety of human-written tasks, what is the space of APIs needed to cover these instructions? We propose a framework to iteratively induce new APIs by grounding wikiHow instruction to situated agent policies. Inspired by recent successes in large language models (LLMs) for embodied planning, we propose a few-shot prompting to steer GPT-4 to generate Pythonic programs as agent policies and bootstrap a universe of APIs by 1) reusing a seed set of APIs; and then 2) fabricate new API calls when necessary. The focus of this thought experiment is on defining these APIs rather than their executability. We apply the proposed pipeline on instructions from wikiHow tutorials. On a small fraction (0.5%) of tutorials, we induce an action space of 300+ APIs necessary for capturing the rich variety of tasks in the physical world. A detailed automatic and human analysis of the induction output reveals that the proposed pipeline enables effective reuse and creation of APIs. Moreover, a manual review revealed that existing simulators support only a small subset of the induced APIs (9 of the top 50 frequent APIs), motivating the development of action-rich embodied environments.
Autores: Jiefu Ou, Arda Uzunoglu, Benjamin Van Durme, Daniel Khashabi
Última atualização: 2024-07-10 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2407.07778
Fonte PDF: https://arxiv.org/pdf/2407.07778
Licença: https://creativecommons.org/licenses/by/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.