Gå direkt till huvudinnehåll
OpenAI

3 oktober 2024

Produkt

Vi presenterar canvas

Ett nytt sätt att arbeta med ChatGPT för att skriva och koda

Bilden visar ett vertikalt verktygsfält med fem ikoner ordnade i en kolumn mot en mjuk pastellbakgrund. Den tredje ikonen från toppen är en öppen bok, och den har markerats med en etikett bredvid som innehåller texten ”Läsnivå”.
Laddar …

Vi presenterar Canvas, ett nytt gränssnitt som är mer än en vanlig chatt och används för att samarbeta med ChatGPT under skriv- och kodningsprojekt. Canvas öppnas i ett separat fönster, så att du och ChatGPT kan samarbeta med ett projekt. Denna tidiga betaversion innebär ett nytt sätt att samarbeta – inte bara genom att samtala, utan genom att skapa och förfina idéer sida vid sida.   

Canvas byggdes med GPT‑4o och kan under betaperioden väljas manuellt i modellväljaren. Från och med idag lanserar vi Canvas för ChatGPT Plus- och Team-användare över hela världen. Enterprise- och Edu-användare får tillgång nästa vecka. Vi planerar också att göra Canvas tillgängligt för alla ChatGPT Free-användare när den har lämnat betaversionen.

Samarbeta bättre med ChatGPT

ChatGPT används varje dag för att hjälpa till med skrivande och kodning. Chattgränssnittet är lättanvänt och fungerar bra för många uppgifter, men det har sina begränsningar när du vill arbeta med projekt som kräver redigering och omarbetningar. Canvas är ett nytt gränssnitt för den typen av arbete.

Med Canvas kan ChatGPT bättre förstå kontexten kring det du försöker uppnå. Du kan markera specifika avsnitt så att ChatGPT kan fokusera på precis det du vill göra. Precis som en redaktör eller kodgranskare kan den ge feedback mellan raderna och förslag som tar hela projektet i beaktande.

Du styr projektet i Canvas. Du kan ändra texten eller koden direkt. Det finns en meny med genvägar som gör att du kan be ChatGPT justera textens längd, felsöka din kod och snabbt utföra andra användbara åtgärder. Du kan även återställa tidigare versioner av ditt arbete genom att trycka på tillbaka-knappen i Canvas.

Canvas öppnas automatiskt när ChatGPT upptäcker ett passande användningsfall. Du kan även lägga till frasen ”använd canvas” i din prompt om du vill öppna Canvas för att arbeta med ett befintligt projekt.

Genvägar för skrivande:

  • Föreslå ändringar: ChatGPT ger förslag mellan raderna och feedback.
  • Justera längden: Redigerar dokumentet för att göra det kortare eller längre.
  • Ändra läsnivå: Justerar läsnivån, från förskolenivå till doktorandnivå.
  • Finputsa: Kontrollerar grammatik, tydlighet och konsekvens.
  • Lägg till emojis: Lägger till relevanta emojis för att understryka viktiga punkter och ge innehållet mer färg.

Kodning i canvas

Kodning är en iterativ process och det kan vara svårt att hänga med i alla ändringar genom en chatt. Med canvas blir det enklare att spåra och förstå ChatGPT:s ändringar, och vi fortsätter att förbättra insynen i den här typen av redigeringar.

Genvägar för kodning:

  • Granska koden: ChatGPT ger förslag mellan raderna för att förbättra koden.
  • Lägg till loggar: Lägger till utskriftskommandon som hjälper dig att avlusa och förstå din kod.
  • Lägg till kommentarer: Lägger till kommentarer i koden som gör den lättare att förstå.
  • Åtgärda buggar: Upptäcker och skriver om problematisk kod för att åtgärda fel.
  • Port till ett språk: Översätter koden till JavaScript, TypeScript, Python, Java, C++ eller PHP.

Träna modellen att samarbeta

Vi har tränat GPT‑4o att samarbeta som en kreativ partner. Modellen vet när canvas ska öppnas, när specifika delar ska redigeras eller när en fullständig omskrivning är nödvändig. Den förstår även bredare kontexter för att kunna ge exakt feedback och bättre förslag.

För att uppnå detta tog vårt forskningsteam fram följande huvudsakliga beteenden:

  • Utlös canvas för skrivande och kodning 
  • Generera olika innehållstyper
  • Redigera specifika stycken
  • Skriv om hela dokument
  • Ge kritik mellan raderna

Framstegen mättes med hjälp av över 20 automatiserade interna utvärderingar. Vi använde nya syntetiska tekniker för datagenerering, som destillering av utdata från OpenAI:s förhandsgranskning av o1 för att träna upp modellens huvudsakliga beteenden. Den metoden innebar att vi snabbt kunde ta itu med skrivkvalitet och nya användarinteraktioner, utan att behöva använda mänskligt genererade data.

En central utmaning var att definiera när canvas ska utlösas. Vi lärde modellen att öppna canvas vid prompter som exempelvis: ”Skriv ett blogginlägg om kaffebönans historia.” Samtidigt undvek vi att utlösa Canvas vid allmänna förfrågningar som exempelvis: ”Hjälp mig hitta ett nytt recept till middagen.” När det gällde skrivuppgifter prioriterade vi att förbättra ”rätt utlösare” (snarare än ”rätt icke-utlösare”) och nådde 83 % i förhållande till en zero-shot-baslinje för GPT‑4o med instruktioner via prompter.

Nämnvärt är att sådana baslinjers kvalitet beror mycket på vilken prompt som används. Beroende på prompten kanske baslinjen presterar dåligt, men på olika sätt – exempelvis genom att begå ungefär samma antal misstag i kodnings- och skrivuppgifter, vilket kan resultera i olika fördelningar av misstagen och olika former av otillfredsställande resultat. När det kom till kodning vinklade vi avsiktligt modellen att undvika utlösning av canvas, så att vi inte skulle störa våra mest avancerade användare. Vi kommer att fortsätta finjustera detta baserat på användarfeedback.

Kanvas beslutsgräns för aktivering – skriva och koda

För skriv- och kodningsuppgifter lyckades vi förbättra beslutsgränsen när det gällde att utlösa canvas, och uppnådde 83 % respektive 94 % i förhållande till en zero-shot-baslinje för GPT‑4o med instruktioner via prompt.

Ytterligare en svårighet var att ställa in modellens redigeringsbeteende när canvas väl hade öppnats – i synnerhet vad gällde beslut att redigera ett specifikt stycke kontra att skriva om hela dokumentet. Vi tränade modellen att ändra specifika stycken om användaren hade markerat text i gränssnittet, och i annat fall prioritera omskrivning. Detta beteende utvecklas ständigt i takt med att vi finjusterar modellen.

Kanvas-redigeringsgräns – Skriva och koda

Vid skriv- och kodningsuppgifter prioriterade vi att förbättra ändringar av specifika stycken i canvas. GPT‑4o med canvas presterade 18 % bättre än en baslinje för GPT‑4o med prompt.

Slutligen krävdes noggrann iterering för att träna modellen att generera kommentarer av hög kvalitet. Till skillnad från de två första fallen, som enkelt kan anpassas till automatiserad utvärdering med omfattande manuella granskningar, är det synnerligen svårt att mäta kvalitet på automatiserat vis. Därför använde vi mänsklig utvärdering för att bedöma kommentarernas kvalitet och exakthet. Vår modell med integrerad canvas presterade 30 % bättre än zero-shot-baslinjen för GPT‑4o med instruktioner via prompt när det kom till exakthet, och 16 % bättre när det kom till kvalitet. Detta bevisade att syntetisk träning i betydande grad förbättrar svarens kvalitet och beteendet, jämfört med en zero-shot-prompt med detaljerade instruktioner.

Canvas Suggested Comments

Canvas-kommentarernas kvalitet och exakthet bedömdes via mänsklig utvärdering. Vår canvas-modell presterar 30 % bättre än zero-shot-GPT‑4o med instruktioner via prompt när det kommer till exakthet, och 16 % bättre när det kommer till kvalitet.

Vad händer härnäst?

För att göra AI mer användbart och tillgängligt måste vi reflektera över hur vi interagerar med den. Canvas är ett nytt sätt och den första större uppdateringen av ChatGPT:s visuella gränssnitt sedan lanseringen för två år sedan.

Canvas är i en tidig betaversion och vi planerar att skyndsamt förbättra dess förmågor.

Författare

OpenAI

Forskningschef

Karina Nguyen

Kärnforskning

Kai Chen, Michael Wu, Tarun Gogineni

Primära medarbetare inom teknik, produkt, design

Alexi Christakis, Bryan Ashley, Bryant Jow, Chris Haugli, Daniel Levine, Eric Jiang, Gabriel Peal, Lee Byron, Lukas Gross, Matt Lim, Sara Culver, Thomas Dimson

Deltagare

Andrew Gibiansky, Andrew Howell, Arianna McClain, David Li, Doug Li, Ilya Kostrikov, Katy Shi, Noah Deutsch, Randall Lin, Sara Culver, Sean Fitzgerald, Shuaiqi Xia, Spencer Papay, Thomas Shadwell, Valerie Qi, Xiaolin Hao, Yilei Qian

Stödjande ledarskap

Akshay Nathan, Barret Zoph, Ian Silber, Joanne Jang, John Schulman, Kevin Weil, Mia Glaese, Mira Murati, Nick Turley, Sam Altman, Sulman Choudhry