Deem um martelo a uma criança e tudo à sua volta é prego*
A Inteligência Artificial (IA) sempre teve expetativas exageradamente otimistas. Agora, empolamos e imaginamos que tudo pode vir a ser feito e a curtíssimo prazo pelo GPT.
Estranhamente, há um domínio em que a ambição da nova IA é limitada: o desenvolvimento de software. As expetativas são baixas. Ficam muito aquém do que já se faz hoje em Portugal.
Pergunte-se ao próprio GPT. A resposta será “A IA pode assistir, completar uma linha, documentar, sugerir correções, formatar, pode mesmo escrever blocos de código…”. Só que a validação tem de ser feita por um humano, bloco a bloco.
Um humano escreve até 3 carateres por segundo. Com um assistente de código pode multiplicar essa produtividade 20 vezes. Seguramente, é bom. Mas será o ideal? A máquina continua a ajustar o seu ritmo ao do humano, quando devia ser o inverso.
Imagine robots, cada um à frente do seu computador, a escrever código através dos respetivos teclados. Embora pareça futurista, isto não é lógico. Os robots não precisam de interagir com as máquinas da mesma forma que os humanos. Podem comunicar direta e muito mais rapidamente, sem necessidade de teclados.
Para abrir horizontes, note-se que existem dois tipos de IA generativa: a conversacional, do GPT, e a baseada em conhecimento, que utiliza regras lógicas e inferência e é uma extensão da segunda vaga de IA. A partir de modelos, escreve, num computador normal, dois milhões de carateres por segundo, numa só interação. Esse é o ritmo das máquinas.
Podemos assim aproveitar as vantagens de cada IA generativa na criação de software.
1. Conceção/Exploração
Vamos construir uma casa. Antes, fazemos um plano: quantos quartos, onde ficarão portas e janelas, que materiais vamos usar, deve ter um jardim? O início no desenvolvimento de software é similar: planear o que deve fazer e como deve funcionar. Um modelo é, para o software, o que a planta de um arquiteto é para uma casa.
Esta fase é onde a IA generativa conversacional, o GPT, ajuda. Se queremos uma casa aconchegante e com muita luz natural, o GPT sugere materiais a usar ou a posição das janelas. No software, o GPT faz algo semelhante: explora o âmbito, organiza ideias e dá sugestões.
2. Construção
Depois do projeto, o que falta é realmente construir a casa. Fazer os alicerces, levantar a estrutura, colocar tijolos, instalar janelas, canalizações… No software, transformar o modelo em código.
Nesta fase, a IA não deve improvisar. Imagine-se que as ferramentas usadas para construir a casa de repente adquirem vontade própria e começam a fazer alterações sem que alguém valide. Talvez o martelo decida que precisamos de uma janela maior ou a serra pense colocar a porta num lugar diferente. Algo caótico, não?
Da mesma forma, ao construir software, não queremos que as ferramentas que transformam o modelo em código tomem decisões aleatórias. Queremos que sigam um conjunto de regras, rastreáveis e bem definidas, para execução do projeto com precisão, sem erros e sem surpresas.
Resumindo, o GPT é útil para criar o projeto, mas quando se trata de o realizar, é melhor que a IA se baseie em inferência lógica e não probabilística e em conhecimento explícito, sem tentar “aprender” ou fazer alterações por conta própria.
Combinar ambas as IA generativas é a fórmula do software do futuro.
*Este artigo foi originalmente publicado na Link to Leaders.