OpenAI kan oversette engelsk til kode med sin nye maskinlæringsprogramvare Codex

0
93

AI -forskningsselskapet OpenAI lanserer et nytt maskinlæringsverktøy som oversetter det engelske språket til kode. Programvaren heter Codex og er designet for å fremskynde arbeidet til profesjonelle programmerere, samt hjelpe amatører med å komme i gang med koding.

I demonstrasjoner av Codex viser OpenAI hvordan programvaren kan brukes til å bygge enkle nettsteder og rudimentære spill ved hjelp av naturlig språk, samt å oversette mellom forskjellige programmeringsspråk og håndtere datavitenskapelige spørsmål. Brukere skriver engelske kommandoer i programvaren, for eksempel “lag en webside med en meny på siden og tittel øverst”, og Codex oversetter dette til kode. Programvaren er langt fra ufeilbarlig og krever litt tålmodighet for å fungere, men kan vise seg å være uvurderlig ved å gjøre koding raskere og mer tilgjengelig.

“Det tar folk som allerede er programmerere og fjerner sludderarbeidet.”

“Vi ser på dette som et verktøy for å multiplisere programmerere,” sa OpenAIs CTO og medgründer Greg Brockman til The Verge. “Programmering har to deler: du har 'tenkt godt på et problem og prøver å forstå det', og 'kartlagt de små bitene til eksisterende kode, enten det er et bibliotek, en funksjon eller et API.'” Den andre delen er kjedelig, sier han, men det er det Codex er best på. “Det tar folk som allerede er programmerere og fjerner sludderarbeidet.”

OpenAI brukte en tidligere versjon av Codex til å bygge et verktøy som heter Copilot for GitHub, et kodelager som eies av Microsoft, som selv er en nær partner til OpenAI. Copilot ligner på autofullføringsverktøyene som finnes i Gmail, og tilbyr forslag til hvordan du fullfører kodelinjer mens brukerne skriver dem ut. OpenAIs nye versjon av Codex er imidlertid mye mer avansert og fleksibel, ikke bare å fullføre koden, men lage den.

Codex er bygget på toppen av GPT-3, OpenAIs språkgenereringsmodell, som ble trent på en betydelig del av internett, og som et resultat kan generere og analysere det skrevne ordet på imponerende måter. En applikasjonsbrukere som ble funnet for GPT-3, genererte kode, men Codex forbedrer sine forgjengeres evner og er spesielt opplært i åpen kildekode-lagre som er skrapt fra nettet.

Dette siste punktet har fått mange kodere til å klage på at OpenAI tjener urettferdig på arbeidet sitt. OpenAIs Copilot-verktøy foreslår ofte kodebiter skrevet av andre, for eksempel, og hele kunnskapsbasen til programmet er til slutt hentet fra åpen kildekode-arbeid, delt til fordel for enkeltpersoner, ikke selskaper. Den samme kritikken vil trolig rettes mot Codex, selv om OpenAI sier at bruken av disse dataene er lovlig beskyttet under rimelig bruk.

“Den virkelige nettoeffekten er mye verdi for økosystemet”

På spørsmål om disse klagene svarer Brockman: “Ny teknologi kommer, vi trenger denne debatten, og det vil være ting vi gjør som samfunnet har gode poeng om, og vi vil ta tilbakemeldinger og gjøre ting annerledes.” Han argumenterer imidlertid for at det bredere kodingssamfunnet til syvende og sist vil dra nytte av OpenAIs arbeid. “Den virkelige nettoeffekten har stor verdi for økosystemet,” sier Brockman. “På slutten av dagen tror jeg denne typen teknologier kan omforme økonomien vår og skape en bedre verden for oss alle.”

Codex vil også absolutt skape verdi for OpenAI og dets investorer. Selv om selskapet startet livet som et ideelt laboratorium i 2015, byttet det til en “begrenset fortjeneste” -modell i 2019 for å tiltrekke seg eksterne midler, og selv om Codex i utgangspunktet blir utgitt som gratis API, vil OpenAI begynne å ta betalt for tilgang på et tidspunkt i fremtid.

OpenAI sier at den ikke ønsker å bygge sine egne verktøy ved hjelp av Codex, da den er bedre plassert til å forbedre kjernemodellen. “Vi innså at hvis vi forfulgte noen av disse, ville vi kutte alle våre andre ruter,” sier Brockman. “Du kan velge som oppstart å være best på én ting. Og for oss er det ingen tvil om at det lager bedre versjoner av alle disse modellene. ”

Hva er det egentlig Codex liker å bruke?

Selv om Codex høres ekstremt spennende ut, er det vanskelig å bedømme hele omfanget av evnene før virkelige programmerere har fått tak i det. Jeg er ingen kode selv, men jeg så Codex i aksjon og hadde noen tanker om programvaren.

OpenAIs Brockman og Codex -leder Wojciech Zaremba demonstrerte programmet for meg online, ved å bruke Codex til først å lage et enkelt nettsted og deretter et rudimentært spill. I spilldemoen fant Brockman en silhuett av en person på Google Bilder og ba Codex om å “legge til dette bildet av en person fra siden” før han limte inn nettadressen. Silhuetten dukket opp på skjermen, og Brockman endret deretter størrelsen (“gjør personen litt større”) før den ble kontrollerbar (“nå gjør den kontrollerbar med venstre og høyre piltast”).

Å gi Codex de riktige instruksjonene er like mye en kunst som en vitenskap

Det hele fungerte veldig greit. Figuren begynte å blande rundt skjermen, men vi løp snart inn i et problem: det forsvant forsvunnet utenfor skjermen. For å stoppe dette ga Brockman datamaskinen en ekstra instruksjon: “Sjekk hele tiden om personen er utenfor siden, og legg den tilbake på siden i så fall.” Dette stoppet det fra å bevege seg utenfor synet, men jeg var nysgjerrig på hvor presise disse instruksjonene må være. Jeg foreslo at vi prøvde en annen: “Sørg for at personen ikke kan gå ut av siden.” Dette fungerte også, men av grunner som verken Brockman eller Zaremba kan forklare, endret det også bredden på figuren og klemte den flat på skjermen.

“Noen ganger vet den ikke helt hva du spør,” ler Brockman. Han har noen flere forsøk, og kommer deretter med en kommando som fungerer uten denne uønskede endringen. “Så du måtte tenke litt på hva som skjer, men ikke veldig dypt,” sier han.

Dette er greit i vår lille demo, men det sier mye om begrensningene i denne typen program. Det er ikke en magisk geni som kan lese hjernen din, og gjøre hver kommando til feilfri kode – og det hevder heller ikke OpenAI. I stedet krever det tanke og litt prøving og feiling å bruke. Codex vil ikke gjøre ikke-kodere til ekspertprogrammerere over natten, men det er absolutt mye mer tilgjengelig enn noe annet programmeringsspråk der ute.

Fremtiden for programmering

OpenAI er bullish om potensialet til Codex for å endre programmering og databehandling mer generelt. Brockman sier at det kan bidra til å løse programmeringsmangel i USA, mens Zaremba ser det som det neste trinnet i den historiske utviklingen av koding.

“Codex bringer datamaskiner nærmere mennesker, lar dem snakke engelsk i stedet for maskinkode”

“Det som skjer med Codex har skjedd før et par ganger,” sier han. I begynnelsen av databehandling ble programmeringen utført ved å lage fysiske hullkort som måtte mates inn i maskiner, deretter fant folk opp de første programmeringsspråkene og begynte å foredle disse. “Disse programmeringsspråkene begynte å ligne engelsk ved å bruke ordforråd som” print “eller” exit “, og så flere ble i stand til å programmere.” Den neste delen av denne banen er å gjøre opp med spesialiserte kodingsspråk helt og erstatte det med engelskspråklige kommandoer.

“Hvert av disse stadiene representerer programmeringsspråk som blir et høyere nivå,” sier Zaremba. “Og vi tror Codex bringer datamaskiner nærmere mennesker, lar dem snakke engelsk i stedet for maskinkode.” Codex kan snakke mer enn et dusin kodingsspråk, inkludert JavaScript, Go, Perl, PHP, Ruby, Swift og TypeScript. Det er imidlertid mest dyktig i Python.

Codex har også muligheten til å kontrollere andre programmer. I en demo viser Brockman hvordan programvaren kan brukes til å lage et stemmegrensesnitt for Microsoft Word. Fordi Word har sitt eget API, kan Codex mate det med instruksjoner i kode opprettet fra brukerens talekommandoer. Brockman kopierer et dikt til et Word -dokument og forteller deretter Word (via Codex) å først fjerne alle innrykkene, så nummerere linjene, så telle frekvensen av bestemte ord og så videre. Det er ekstremt flytende, men vanskelig å si hvor godt det ville fungere utenfor rammen av en forhåndsarrangert demo.

Hvis det lykkes, kan Codex ikke bare hjelpe programmerere, men også bli et nytt grensesnitt mellom brukere og datamaskiner. OpenAI sier at Codex har testet sin evne til ikke bare å kontrollere Word, men også andre programmer som Spotify og Google Kalender. Og selv om Word -demoen bare er et bevis på konseptet, sier Brockman, er Microsoft tilsynelatende allerede interessert i å utforske programvarens mulighet. “De er veldig begeistret for modellen generelt, og du bør forvente å se at mange Codex -applikasjoner blir opprettet,” sier han.