2 pontos por GN⁺ 2023-11-10 | 1 comentários | Compartilhar no WhatsApp

vimGPT: oferecendo um playground para modelos multimodais

Visão geral

  • O uso de grandes modelos de linguagem (LLMs) para navegação na web está sendo explorado por várias startups e projetos open source.
  • Houve interesse em um projeto que experimenta se a navegação na web é possível usando apenas as capacidades visuais do GPT-4V.
  • Há uma dificuldade para o modelo identificar o alvo que deseja clicar sem um DOM textual do navegador.

Configuração

  • Instalar os requisitos de Python: pip install -r requirements.txt
  • É necessário baixar o Vimium localmente e carregar manualmente a extensão ao executar o Playwright: ./setup.sh

Ideia

  • Quando for lançado, está sendo considerado o uso da Assistant API para busca automática de contexto.
  • Há a possibilidade de desenvolver uma versão especial do Vimium que sobreponha elementos de forma seletiva com base no contexto.
  • O problema de falha de reconhecimento do modelo em baixa resolução pode ser melhorado com o uso de imagens em alta resolução.
  • É possível ajustar finamente o LLaVa ou o CogVLM para torná-lo mais rápido e barato.
  • Há planos de usar a Vision API se ela passar a oferecer suporte ao modo JSON, mas por enquanto é necessário depender de um método de prompting mais rudimentar.
  • Está sendo considerada uma forma em que a Vision API retorna instruções gerais, e isso é formalizado por uma API em modo JSON.
  • Também está sendo considerada a adição de conversão de fala para texto com Whisper ou outro modelo para eliminar a entrada de texto e aumentar a acessibilidade.
  • Há o desejo de fazer isso funcionar no navegador do próprio usuário, e não em um navegador artificial.
  • São fornecidos frames conforme a ativação do Vimium, caso o modelo não consiga ver o que está sob os retângulos amarelos.
  • Além da entrada por imagem, é fornecida como entrada a árvore de acessibilidade do Chrome para apresentar o layout de elementos interativos que podem ser mapeados para bindings do Vimium.

Materiais de referência

Opinião do GN⁺

O ponto mais importante deste artigo é a tentativa de revolucionar a experiência de navegação na web usando grandes modelos de linguagem como o GPT-4V. Oferecer, por meio da extensão Vimium, uma forma de o modelo interagir com a web é uma abordagem interessante, com potencial para melhorar a acessibilidade e a interatividade na web. Para entusiastas de tecnologia e desenvolvedores de software, esse tipo de experimento oferece insights sobre o futuro da inteligência artificial e a evolução das interfaces web, tornando o tema bastante atraente.

1 comentários

 
GN⁺ 2023-11-10
Comentários no Hacker News
  • É difícil acreditar que isso agora seja possível:

    • Há opções que o usuário pode selecionar para ajudar a executar uma tarefa específica: navigate, type, click e done.
    • navigate deve ir para a URL especificada, e type e click processam uma string como entrada.
    • Ao clicar, é preciso retornar a sequência de caracteres amarela; ao digitar, a mensagem deve ser retornada como string.
    • Se a página estiver satisfatória, deve retornar done como chave, e a resposta deve ser obrigatoriamente apenas em formato JSON.
  • No meu trabalho, há muita gente copiando dados manualmente por causa da enorme dívida técnica:

    • Foi expressada expectativa de que ferramentas assim funcionem como uma camada capaz de resolver problemas existentes.
  • Saudação do criador:

    • Agradece por compartilhar o projeto e pede que avisem caso haja perguntas.
    • Diz que há ideias para os próximos passos no README e que contribuições são bem-vindas.
  • Opinião de que o vim é uma "implementação" adequada para o ChatGPT:

    • É possível fazer tudo com fluxos de texto, e já existe muito vimscript na internet.
    • Menciona que começou um experimento parecido e compartilha o link de um projeto relacionado.
  • Discussão sobre tarefas de screenshot e navegação usando GPT-4 Vision:

    • Depois de falhar ao sobrepor informações na screenshot, trazer a árvore de acessibilidade do playwright como texto e informar ao modelo as opções de interação mostrou resultados melhores.
    • É sugerido ao criador adicionar essa ideia à lista de ideias futuras.
  • Relato de experimento pela interface do ChatGPT:

    • Sugere atualizar o CSS para remover gradientes e cantos arredondados.
    • A combinação de vermelho com texto branco em negrito apresentou os resultados mais consistentes.
    • Aconselha aumentar o tamanho da fonte e, se os rótulos se sobrepuserem, separá-los e adicionar setas.
    • Recomenda enviar para a API tanto a imagem anotada quanto a imagem sem anotações.
  • Pergunta sobre o impacto dessas ferramentas em rastreamento na web ou publicidade:

    • Potencial de funcionar como um "bloqueador de anúncios" em que o agente encontra o conteúdo desejado em nome do usuário, sem anúncios nem pop-ups.
    • Imagina-se que isso possa reduzir a importância de SEO e melhorar a qualidade da internet.
    • Por outro lado, também é expressada preocupação com impactos negativos que isso pode trazer para a publicidade.
  • Dá para criar um piloto automático para o navegador:

    • Se essa tecnologia for implantada em grande escala, será muito difícil distinguir tráfego de bots.
    • Também é levantada a questão de que, no curto prazo, isso não será barato nem acessível.
  • Opinião positiva de que o GPT-4V trouxe uma nova perspectiva para web scraping:

    • Espera-se que este código, ou algo parecido, seja aproveitado em vários projetos.
    • Por exemplo, poderia ser usado para fazer scraping de sites como LinkedIn ou Twitter, análise de concorrentes, compreensão de setores da indústria e obtenção de notícias.
  • Relato de uso real:

    • Pequenas anotações sobre opções clicáveis muitas vezes não apareciam na tela, causando loops.
    • Conseguiu fazer login no Twitter, mas esgotou rapidamente o limite de 100 imagens da API.
    • Para versões futuras, sugere usar principalmente um navegador baseado em texto e recorrer à visão apenas em situações complexas.