Por baixo do capô: O GPT além do Chat!
No meu artigo anterior: O GPT além do Chat eu mostrei uma prova de conceito de uma possibilidade que os grandes modelos de linguagem (do Inglês, LLM) nos trazem; criar interfaces conversacionais, interfaces de linguagem natural. Já estamos acostumados com formulário, páginas, botões e várias outras interfaces gráficas há anos, mas elas não precisam ser a única alternativa. Quando vemos várias aplicações Copiloto que estão surgindo (se não conhece ainda vai ler o artigo anterior que explico melhor e deixo alguns vídeos de exemplos) vemos que o caminho que as ferramentas de tecnologia estão tomando é criar interfaces conversacionais. Seja um sistema sofisticado ou um aplicativo simples, ter a possibilidade de conversar com ele ao invés de decorar parâmetros, funções, botões e telas é muito empolgado e inclusivo.
Nesse artigo eu quero detalhar um pouco de como construi a prova e conceito e, ainda melhor, como faria se fosse começar de novo agora. Eu criei a prova de conceito uns 2 meses atrás, mas o cenário de AI está em um momento tão quente que muita coisa mudou nesses 2 meses e eu poderia fazer algumas coisas muito melhor. Se ainda não leu o artigo anterior vale fazê-lo, para não ser repetitivo vou partir de onde ele terminou.
Como funciona?
A interface conversacional é baseada nem dois modelos do Azure OpenAI, Ada e ChatGPT, e segue o fluxo:
Arquitetura
Os serviços que integram a solução são mostrados abaixo:
O app está dividido em 4 microserviços, todos publicados em Azure Functions:
Além dos microserviços temos usamos os seguintes serviços do Azure:
Recomendados pelo LinkedIn
O que eu faria diferente?
Nesses dois meses muita coisa surgiu entre eles dois SDKs/Frameworks que ajudam bastante o desenvolvimento de apps como esse:
Mesmo quem não desejar adotá-los são uma boa referência definir as partes, arquitetura e componentes de um app que utilize LLM. Recomendo fortemente conhecer os dois e outros que devem surgir nos próximos meses.
Não acredito que isso funciona!
Eu também não acreditava que funcionária até fazer com minhas próprias mãos. É uma prova de conceito e sem dúvida precisa passar por diversas melhorias antes de ser levado a produção ou empregado em larga escala. Como é baseado em um modelo de IA, não deterministico, variações nas respostas são inevitáveis e isso precisa ser sempre levado em consideração. Dito isso, disponibilizei o código no GitHub para qualquer um que queira ver, colocar para rodar, testar ou até mesmo modificar. Aqui o link: marlosb/microfarmerbot (github.com)
Inteligencia Articial responsável
Assim como a Microsoft, eu acredito que todos os projetos envolvendo Inteligência Artificial devam ser conduzidos com princípios éticos firmes e colocando as pessoas em primeiro lugar. Para quem não conhece a iniciativa deixo o link do portal Responsible AI.
A criação de interfaces conversacionais utilizando IA tem potencial para ser especialmente inclusivo, uma vez que ainda existem milhões de pessoas com dificuldade de interagir com o mundo digital através das interfaces convencionais. Com certeza dentro desse grupo temos inúmeras pessoas que estão habituadas a conversar através de aplicativos de mensagens instantâneas (como Whatsapp e Telegram). Possibilitar que essas pessoas interajam com o restante do mundo digital dessa mesma forma abrirá uma enorme miríade de novas possibilidades.
Data and AI | Account Executive @Databricks | ex-Oracle | ex-Microsoft
1 aInteressante como as conversas atuais em torno de tecnologia tem se manifestado cada vez mais em casos de uso reais e utilizáveis. O uso de dados, ferramentas e IA estão por trás, mas estamos aprendendo a traduzir isso na vida real! Obrigado por compartilhar Marlão! Aprendi no primeiro artigo com o exemplo do cultivo de microverdes até este aqui. Abração