Adaptando Estratégias de API às Tendências Dinâmicas da IA

Bobur Umurzokov

Bobur Umurzokov

September 26, 2023

Technology

No cenário tecnológico em rápida evolução de hoje, a Inteligência Artificial (IA) está recebendo muita atenção. Em todos os lugares que você olha nas redes sociais, há novas startups de IA, ferramentas de engenharia de prompts e soluções de Modelos de Linguagem de Grande Escala (LLMs). E não é surpreendente, porque a IA parece quase mágica! Por exemplo, o ChatGPT realmente deixou todo mundo empolgado. Ele atingiu 100 milhões de usuários em apenas 2 meses após se tornar publicamente disponível, tornando-se super popular, super rápido.

Agora, todo mundo está se perguntando: o que essa onda de IA significa para mim, meu trabalho e meus produtos? Mais especificamente, como isso impacta aqueles que estão na vanguarda da construção de produtos e aplicativos digitais usando APIs? Este artigo explora o que a tendência de IA significa para aqueles de nós que criamos ferramentas digitais usando APIs.

APIs tornam a IA acessível a todos

Grandes corporações foram rápidas em estabelecer laboratórios de pesquisa de IA dedicados, recrutando cientistas de dados para criar modelos de IA. Mas e as entidades menores, sem os enormes recursos de computação e GPUs para um laboratório de pesquisa de IA? Elas devem apenas observar enquanto as grandes empresas capitalizam a revolução da IA? A resposta é não. Para muitas aplicações de IA, particularmente aquelas centradas em linguagem natural, não há necessidade de um laboratório de pesquisa de IA especial. Em vez disso, modelos públicos de IA existentes, como LLMs, podem ser utilizados. Isso significa que os desenvolvedores não precisam ser especialistas em IA, eles só precisam ser proficientes com APIs. Por meio de engenharia de prompts, ajustes finos e embeddings, esses modelos podem ser personalizados para atender a requisitos específicos.

A palavra mágica aqui é "APIs". As APIs encapsulam as complexidades de seus conteúdos, tornando os modelos de IA acessíveis a todos os desenvolvedores, independentemente de sua expertise em IA. Essa separação de preocupações garante que, enquanto alguns poucos cientistas de dados criam modelos de IA e os empacotam como APIs, um grupo maior de desenvolvedores pode integrar esses modelos em seus aplicativos, criando soluções "inteligentes" proficientes em processamento de linguagem natural. O resultado é que as APIs nivelam o campo de jogo, concedendo acesso a modelos de IA poderosos para desenvolvedores de empresas de todos os tamanhos.

Chamar serviços de IA via API

Padrões de IA e API para aplicativos modernos

As APIs são fundamentais para conectar seu produto a tudo mais. Elas são ótimas para conectar diferentes componentes de software. Quando falamos de IA, essa conexão é ainda mais crucial porque a IA precisa trabalhar com diferentes fontes de dados e ferramentas para ser útil. Aplicativos modernos consistentemente aproveitam tanto a IA quanto as APIs. Enquanto a IA confere "inteligência" aos aplicativos, permitindo que eles compreendam a linguagem e a intenção humana, as APIs facilitam o acesso a dados e as conexões de sistemas. Essas tecnologias não são apenas entidades paralelas, e seu uso combinado pode ser sinérgico. Existem três padrões principais para sua integração:

Padrão 1: Chamar serviços de IA via API

Modelos de IA, como o OpenAI ChatGPT, são frequentemente empacotados como APIs. Por meio dessas APIs, os desenvolvedores podem acionar a IA, enviando prompts como entrada, permitindo que os desenvolvedores integrem a IA em seus aplicativos de forma contínua. Uma arquitetura comumente usada para construir um novo aplicativo de IA também utiliza dois endpoints de API da OpenAI, como Vector Embeddings e Chat Completion, como você vê no diagrama abaixo:

Alimentando o ChatGPT via API

Este método primeiro cria vector embeddings por meio da API da OpenAI para cada documento de entrada (texto, imagem, CSV, PDF ou outros tipos de dados estruturados/não estruturados), depois indexa os embeddings gerados para recuperação rápida e os salva em armazenamento como bancos de dados vetoriais para recuperação rápida, e esses documentos são apresentados ao ChatGPT junto com a pergunta do usuário como um prompt. Com esse conhecimento personalizado adicional, o ChatGPT pode responder de forma inteligente às consultas dos usuários.

Padrão 2: Serviços de IA chamam APIs

A saída de um modelo de IA em resposta a um prompt é tipicamente textual. Para traduzir essas "ideias" em resultados acionáveis, os serviços de IA precisam chamar APIs. Essas APIs podem iniciar ações no mundo real ou digital, como fazer pagamentos, marcar uma consulta, enviar mensagens ou ajustar a temperatura de uma sala. Em essência, as APIs atuam como as mãos de um serviço de IA, permitindo que ele interaja com seu ambiente. Um bom exemplo disso podem ser os plugins personalizados do ChatGPT. Este artigo explica como construir um plugin personalizado para API Gateway usando o APISIX. Como o APISIX pode estar na frente das APIs para rotear solicitações de IA para os serviços de API de backend pretendidos, podemos implementar facilmente medidas de segurança como autenticação, autorização e limitação de taxa ou cache de respostas semelhantes de APIs, e isso nos permite coletar insights valiosos sobre o uso, desempenho e possíveis problemas das APIs.

Padrão 3: IA conecta APIs

Anos atrás, para fazer dois sistemas de software ou APIs se comunicarem, a única opção era a codificação manual. Engenheiros de software criavam sequências de código complexas e frágeis. Essa tarefa era exclusiva para desenvolvedores, e cada modificação significava mais codificação, levando a uma teia emaranhada de códigos interconectados.

Com o advento da IA generativa, interagir com uma Plataforma de Integração como Serviço (iPaaS) pode ser tão simples quanto fazer uma solicitação em um chat. Se você deseja que os dados de uma plataforma sejam sincronizados com outra, você não precisa entender os detalhes técnicos. Você só precisa especificar seus requisitos. Por exemplo, você pode dizer: "Sincronize as pontuações de leads de clientes do Marketo para o Salesforce." ou pedir à IA para mover dados de uma API para outra. A IA então lidará com o processo, testará sua compatibilidade e corrigirá quaisquer problemas de forma autônoma. As APIs usadas em suas integrações estão sempre mudando, e isso às vezes pode causar problemas. A IA pode monitorar a saúde de suas integrações de dados e continuar corrigindo os erros ou simplesmente enviar notificações de alerta em linguagem natural se uma entrada em uma solicitação ou resposta de API exigir atenção.

Protegendo o uso de APIs

Com a capacidade da IA de chamar APIs que iniciam ações no mundo real ou digital, é crítico implementar salvaguardas. Essa proteção, idealmente implementada no nível do sistema de gerenciamento de APIs, é necessária para garantir o uso responsável e seguro da IA. Este post explora como o API Gateway pode ser benéfico para desenvolvedores de plugins do ChatGPT para expor, proteger, gerenciar e monitorar seus endpoints de API.

Concluindo

As APIs fornecem os blocos de construção perfeitos para o desenvolvimento de software impulsionado por IA. A combinação de APIs e tecnologias de IA é vital para o desenvolvimento de aplicativos poderosos. Os três padrões identificados—aplicativos integrando funcionalidades de IA por meio de APIs e serviços de IA invocando APIs para ações—oferecem um roteiro para aproveitar a IA no desenvolvimento de aplicativos. À medida que o cenário de IA continua a evoluir, o foco nas APIs e as estratégias para sua integração se tornarão ainda mais importantes.

Recursos relacionados

API Gateway For ChatGPT Plugins
Building a ChatGPT custom plugin for API Gateway

Tags: