Conheça uma forma de programar que promete agilizar a codificação por parte dos desenvolvedores e até mesmo aproximar a programação do públi...
Conheça uma forma de programar que promete agilizar a codificação por parte dos desenvolvedores e até mesmo aproximar a programação do público leigo.Quando aprendi a programar, descobri que as linguagens de programação não eram todas exatamente equivalentes. Elas possuíam níveis! Sim. E uma linguagem de programação de baixo nível se aproximava ao máximo da manipulação direta dos componentes eletrônicos. Do passa/não passa eletricidade nos condutores, transístores e acumuladores para representar a série de dígitos binários que é a base da informação digital.
Fonte: OpenAI
Visto no Brasil Acadêmico
Destarte, para se fazer um programa apresentar uma mensagem simples como "Hello, world!" (Alô. mundo!) na tela, uma linguagem de baixo nível como o Assembly teria comandos como "Carregar o valor 72 no registrador IX" e "Pular para o endereço de memória 36000" na forma de mnemônicos como "ld" e "jp".
Já uma linguagem de alto nível seria como a linguagem natural humana. Toda a complexidade dos detalhes exigidos para comandar o computador seria executados "nos bastidores" e traduzidos (compilados) de um código que qualquer um poderia entender. Assim, um programa simples em uma linguagem de alto nível seria algo como:
Escreva “Hello World!”
E o computador já entenderia a ordem e a executaria.
Por isso, comados desse tipo são variações de coisas como write, print, say. A ideia, ainda que predominantemente em inglês, é que sejam comando perfeitamente intelegíveis para os seres humanos.
Linguagens não procedurais english-like como o SQL se aproximam ainda mais do nível de linguagens naturais com comandos como “selecione o nome, cpf, endereço da tabela motoristas onde número_de_multas é nulo e ordernado por nome” mas ainda guardam algumas regras gramaticais muito pouco familiares para os não iniciados.
Décadas atrás eu brincava dizendo como exemplo do ideal de linguagem de alto nível que um dia teríamos só que dizer para o computador: "Crie um Pacman" e ele já entregaria um código-fonte com todos os detalhes para se gerar labirintos, comandar um personagem comilão e fazer fantasmas perseguidores incremetar um placar sempre que ingeridos pelo heroi do jogo.
Pois ainda que não seja dessa vez, uma ferramenta inteligente derivada do GPT-3 avançou bastante nessa direção. Essa API denominada Codex promete, segundo seus desenvolvedores, que não vai roubar os empregos dos programadores. Mas terá condição de transformar totalmente a atividade de programar em uma busca ativa por soluções, libertando o programador de ter que se lembrar de cada comando ou da sequência correta de parâmetros para se passar para uma função.
O Codex já foi lançada a mais de um mês, mas a demonstração feita pela empresa que a desenvolve mostrou como ela seria capaz de criar um jogo (ainda bem simples, é verdade, mas bem impressionante como demonstração) apenas com comandos dados em linguagem bastante natural.
Na demonstração, o programador pede ao Codex que use uma imagem de uma nave escolhida da internet, reduza o tamanho, faça um recorte circular e depois anime horizontalmente respeitando os limites da tela.
Depois ele ordena que Codex pegue uma imagem de um asteroide, escale e recorte. Depois anime e a medida que o tempo passe um placar seja incrementado.
Comandos intuitivos como "coloque o fundo com a cor do espaço" ou "coloque a cor da letra visível" ao invés de se indicar claramente um parâmetro como "black noir" ou "&HFFFFFF" são bem impressionantes para uma ferramenta de auxílio à programação como o Codex promete ser. Esse tipo de de subjetividade tende a ser um atalho poderoso quando o assunto é produtividade.
Os dados usados em seu treinamento contêm linguagem natural e bilhões de linhas de código-fonte de fontes disponíveis publicamente, incluindo código em repositórios públicos do GitHub.
O Codex é mais capaz em fluente em Python, mas também é proficiente em mais de uma dúzia de linguagens, incluindo JavaScript, Go, Perl, PHP, Ruby, Swift e TypeScript e até mesmo Shell. Possui 14 KB na memória para o código Python, em comparação com o GPT-3, que tem apenas 4 KB, portanto, pode levar em consideração três vezes mais informações contextuais ao executar uma tarefa.
A principal habilidade do GPT-3 é gerar linguagem natural em resposta a uma entrada em linguagem natural, o que significa que a única maneira de afetar o mundo é através da mente do leitor. O Codex tem muito da compreensão da linguagem natural do GPT-3, porém produz código funcional - o que significa que você pode emitir comandos em inglês para qualquer parte do software com uma API. O Codex capacita os computadores a entender melhor as intenções das pessoas, o que pode capacitar todos a fazer mais com os computadores.
Uma vez que um programador saiba o que deseja criar, o ato de escrever código pode ser pensado como:
❶ dividir um problema em problemas mais simples e
mapear esses problemas simples para o código existente (bibliotecas, APIs ou funções) que já existir.
❷ A última atividade é provavelmente a parte menos divertida da programação (e a maior barreira de entrada), e é onde o OpenAI Codex se destaca mais.
OpenAI Codex é um modelo de programação de propósito geral, o que significa que pode ser aplicado a essencialmente qualquer tarefa de programação (embora os resultados possam variar). A empresa usa o Codex para traduzir código de uma linguagem para outra, explicar o código e refatorar o código. Mas reconhecem que estão ainda “apenas arranhamos a superfície do que pode ser feito”.
Eles estão disponibilizando o OpenAI Codex em beta privado por meio de sua API e pretendem escalar o mais rápido possível de forma segura. Durante o período inicial, o OpenAI Codex será oferecido gratuitamente. A OpenAI continuará construindo sobre a base de segurança que estabelecida com o GPT-3 - revisando aplicativos e escalando-os incrementalmente enquanto trabalha em estreita colaboração com os desenvolvedores para entender o efeito de dessas tecnologias no mundo.
Fonte: OpenAI
Visto no Brasil Acadêmico
Comentários