Are you interested in learning how to use large language models, such as ChatGPT, in application and product development? This article introduces you to an exciting video course that teaches you best practices for working with these models, covering common use cases and creating a custom chatbot.
ChatGPT Prompt Engineering for Developers is now free for a limited time. The course teaches prompt engineering best practices for application development, different ways to use LLMs, and how to iterate on prompts using the OpenAI API. It covers how to write effective prompts, how to systematically develop good prompts, and how to build a custom chatbot. The course is designed for beginners, but is also suitable for advanced machine learning engineers.
This course on ChatGPT prompt engineering for developers features Isa Fulford, a member of OpenAI’s technical staff. The course aims to provide best practices for using large language models (LLMs) in application and product development. It will cover best practices for software development, common use cases, and how to build a chatbot using an LLM.
There are two main types of LLM development: basic LLMs and instruction tuning LLMs. Base LLMs predict words based on text training data, while instructional LLMs are designed to follow instructions. Most practical applications recommend the use of instruction-set LLMs, which are easier to use and safer.
When using an instruction-set LLM, it is important to give clear and specific instructions, similar to how you would give instructions to another person. In the next video we will give examples of how to give clear and specific instructions and teach a second principle of prompting: giving the LLM time to think.
Key principles for working with large language models
Throughout the course you will learn two key principles for working with language models such as ChatGPT: write clear and specific instructions and give the model time to think. These principles are fundamental to achieving optimal results in your applications, and are explored with practical examples in the Jupyter Notebook.
OpenAI Library Installation and Configuration
The course guides you through the installation of the OpenAI library using PIP and the configuration of the API key. You will learn tactics for writing clear and specific instructions, such as using delimiters, requesting structured output, checking conditions, and using the “few-shot prompting” approach.
Iterating and improving instructions
An iterative process for improving instructions is essential when developing applications with large language models. The course teaches how to analyse errors and modify instructions to achieve optimal performance. The key to being a good instruction engineer is not knowing the perfect instruction, but having a solid process for developing effective instructions for specific applications.
The power of large language models
In this course, you will explore various capabilities of large language models, such as summarising text, inferring information from text, transforming text, and extending short text. You will learn how to create department-specific summaries, extract sentiment and emotion from reviews, translate text into other languages, and switch between formats such as HTML and JSON.
Building a custom chatbot
One of the most exciting aspects of the course is building a custom chatbot using OpenAI’s ChatCompletions format and a large language model such as ChatGPT. The chatbot in the example is called “orderbot” and takes orders in a pizza restaurant. You will learn the components of the ChatCompletions format and how to guide the conversation with system, user and wizard messages.
The course also introduces utilities for handling multi-shift conversations and provides examples of how the chatbot works. The importance of context is fundamental, as the model needs all relevant messages in the conversation as input in order to understand and respond accurately.
Course Conclusions
This video course provides you with a solid foundation to start developing applications using large language models. Throughout the course, you will gain valuable knowledge and practical skills that will allow you to build things that few people can do today.