Introducing Canvas: A New Way to Write and Code with ChatGPT
Today's post introduces Canvas, a new interface for working with ChatGPT on writing and coding projects that goes beyond simple chat. Canvas opens in a separate window, allowing you and ChatGPT to collaborate on a project. This first beta introduces a new way to work together—not just through chat, but by creating and refining ideas in parallel.
Canvas is built using GPT-4o and can be manually selected in the model selector while in beta. Starting October 3, 2024, Canvas will roll out globally to ChatGPT Plus and Team users. Enterprise and Edu users will get access in approximately 1 week. There are also plans to make Canvas available to all ChatGPT Free users once it leaves beta.
Collaborate Better with ChatGPT
People use ChatGPT every day to get help with writing and coding. While the chat interface is easy to use and works well for many tasks, it gets limited when you want to work on projects that require editing and revisions. Canvas provides a new interface for this type of work.
With Canvas, ChatGPT can better understand the context of what you're trying to accomplish. You can highlight specific sections to indicate exactly what you want ChatGPT to focus on. Like a copy editor or code reviewer, it can give feedback and suggestions online with the entire project in mind.
You control your project in the Canvas, editing text or code directly. There is a menu of shortcuts that let you ask ChatGPT to adjust text length, debug code, and perform other useful actions quickly. You can also restore previous versions of your work using the Back button in the Canvas.
Canvas opens automatically when ChatGPT detects a situation where it might be useful. You can also include "use Canvas" in the prompt to open Canvas and use it to work on an existing project.
Writing shortcuts include:
- Suggest edits : ChatGPT provides online suggestions and feedback.
- Adjust the length : Adjust the document length to make it shorter or longer.
- Change reading level : Adjust reading level, from Kindergarten to High School.
- Add final polish : Check for grammar, clarity, and consistency.
- Add emojis : Add relevant emojis for emphasis and highlighting.
Code in Canvas
Coding is an iterative process and it can be difficult to keep track of all the changes to your code in chat. Canvas makes it easier to track and understand changes to ChatGPT and will continue to improve transparency around these types of edits.
Shortcut codes include:
- Code Review : ChatGPT provides inline suggestions to improve your code.
- Add logs : Insert print statements to help you debug and understand your code.
- Add comments : Add comments to the code to make it easier to understand.
- Fix bugs : Detect and rewrite problematic code to resolve errors.
- Port to a language : Compile your code to , TypeScript, , Java, C++ or PHP.
Train models to become collaborators
GPT-4o is trained to collaborate as a creative partner. It knows when to open Canvas, make targeted edits, and completely rewrite. It also understands broader context to provide accurate feedback and suggestions.
To support this, the team developed the following core behaviors:
- Enable Canvas for writing and coding
- Create different types of content
- Make targeted edits
- Rewrite the document
- Provide inline criticism
Progress is measured with over 20 automated internal assessments. New synthetic data generation techniques, such as distilling output from OpenAI o1-preview, are used to post-train the model on its core behaviors. This approach allows for rapid resolution of writing quality and new user interactions, all without relying on human-generated data.
One key challenge is figuring out when to trigger Canvas. OpenAI trained the Canvas model to generate prompts like 'Write a blog post about the history of coffee beans' while avoiding over-triggering for general Q&A tasks like 'Help me cook a new recipe for dinner.' For writing tasks, OpenAI prioritized improving 'correct triggers,' achieving 83% better than GPT-4o with no initial prompts.
It is worth noting that the quality of such baselines is highly sensitive to the specific prompt used. With different prompts, the baseline may still perform poorly but in different ways—for example, it may be unevenly accurate between coding and writing tasks, leading to different error distributions and alternative forms of suboptimal performance. For coding, OpenAI intentionally biases the model against activation to avoid disrupting expert users. OpenAI will continue to refine this based on user feedback.
The second challenge involved tuning the model's editing behavior once the Canvas was activated—specifically, deciding when to make targeted edits versus rewriting the entire text. OpenAI trained the model to make targeted edits when the user explicitly selected text through the interface, and to favor rewriting otherwise. This behavior continued to evolve as OpenAI refined the model.
Finally, training the model to generate high-quality comments requires careful iteration. Unlike the first two cases, which are easy to adapt to automated evaluation with thorough manual review, measuring quality in an automated manner is particularly difficult. Therefore, OpenAI used human reviewers to assess comment quality and accuracy. OpenAI's integrated Canvas model outperformed GPT-4o without prompts by 30% in accuracy and 16% in quality, suggesting that ensemble training significantly improves response quality and behavior over prompts without prompts accompanied by detailed instructions.
To make AI more useful and accessible, we need to rethink how we interact with it. Canvas is a new approach and the first major update to ChatGPT's visual interface since OpenAI launched it two years ago.
Canvas is in early beta and OpenAI plans to rapidly improve its capabilities. You can read more: 4 Ways to Use ChatGPT's Canvas Mode for more details.
You should read it
- What is ChatGPT Code Interpreter? Why is it so important?
- How to register for ChatGPT's new plugin feature
- Can ChatGPT be used to create malware?
- 9 ChatGPT and Generative AI API alternatives for developers
- Is ChatGPT accessible with a VPN?
- What are the default plugins of ChatGPT?
- Compare ChatGPT 4o and ChatGPT 4
- 4 ways to use ChatGPT to manage time
- Why were new ChatGPT registrations stopped? When will it reopen?
- 9 useful Chrome extensions for ChatGPT
- 9 practical applications of ChatGPT in programming
- How to use ChatGPT API