Personalized AI: Exploring Custom GPTs
Uncovering the Potential and Possibilities of Custom GPTs
Introduction
In the ever-evolving landscape of artificial intelligence, OpenAI recently introduced a groundbreaking development just a few days before the boardroom drama: 'Custom GPTs', a version of ChatGPT, or simply what they call 'GPTs'. Over the last couple of weeks, I have been delving into the potential of these customized GPTs. Meanwhile, Amazon has also launched a similar feature called PartyRock. This blog is the first in a multi-part series where we will explore what customized GPTs are and their potential use cases, In the coming parts we will be exploring how to create a custom GPT along with some of the custom GPTs I have developed in the process.
Problem
ChatGPT, which uses Large Language Models(LLM) like GPT-4 or GPT-3.5, is already one of the most powerful AI tools, used by millions of end-users every day. When interacting with ChatGPT, they often need to provide extensive context in their prompts or follow up with multiple prompts to extract the desired or optimal output. This can be time-consuming, especially for those seeking quick and precise answers.
Small applications built using APIs on top of GPT models must create pre-trained models that incorporate the necessary context and data specific to their application's focus.
This involves not just mastering the art of prompt engineering but also managing the costs associated with these models. Using GPT-4 costs approximately $0.06 per 1,000 tokens.
What are Custom GPTs
Custom GPTs represent a new approach to creating mini GPTs tailored for specific use cases.
Custom GPTs can be as simple as using your already saved prompts that you reuse daily. By providing these as a context, they function as a form of custom GPT, enabling users to quickly obtain the results they need without repetitive prompting.
Users also gain the ability to store context and upload significant amounts of data, up to 20 knowledge files of 512 MB each. This feature is particularly beneficial for small applications and power users, providing the necessary depth of data for more specialized and accurate results.
What truly makes Custom GPTs remarkable is their accessibility. The creation of a custom GPT isn't limited to developers or tech experts. OpenAI has democratized the GPT creation process, allowing all end users to craft their own Custom GPTs. This is facilitated by the GPT builder, a tool that simplifies the process, requiring users to provide just a prompt to begin creating their personalized AI model. More details about this will be discussed in later sections.
GPTs Store
Currently, despite the presence of multiple models like BERT, Claude, PaLM, and LLaMA, GPT-4 has emerged as the most reliable choice in the GenAI landscape and for projects built on top of LLMs. Many likened ChatGPT's unveiling last year to an 'iPhone moment' in the AI industry when it reached a million users in just 5 days.
But how exactly do these mini GPTs compare to the App Store? As of now, you can access Custom GPTs via a direct URL, and some popular GPTs are featured on the discovery page which can be found by clicking on Explore in the sidebar. OpenAI will soon be launching a GPT Store. This platform will enable not only the sharing of custom GPTs but also provide creators with the opportunity to monetize their models through a revenue-sharing model. This initiative is expected to boost the development of GPTs, similar to how mobile app development surged in the past.
Practical Applications and Benefits of Custom GPTs
Where can we use Custom GPT? Listing down some of the usecases I can think of, along with some usecases I have encountered while exploring GPTs created by other users.
Disclaimer: I understand many of these can also be created by building a pretrained models on top of other LLMs. I'm just trying to list down the ones that can be built with GPT Builder via prompts and knowledge files.
Organization Use Cases
Customer Service and FAQs: Companies can upload their entire FAQ database to a custom GPT. Then, this custom GPT can be shared via a URL, or it can be integrated into the company's bot for better customer service.
Internal HR Bot: Companies often have a ton of HR policies. By uploading all these policies and creating a custom GPT, employees can gain quick and easy access to the information they need. (But yeah need to ensure the information is accessible only to employees)
Data Analysis: We can train the custom GPT model to recognize and analyze data, thereby providing insights that aid in faster and more accurate decision-making. This approach is particularly helpful for businesses that need to understand complex data, ultimately enhancing operational efficiency.
General Use Cases
Cooking and Recipe Generation: Create a GPT model trained in culinary arts, incorporating a wide array of recipes from around the world. This model, when given a list of available ingredients, could quickly suggest multiple recipes.
Educational Tools: Custom GPTs can be tailored to specific educational subjects or languages. Imagine a GPT model fine-tuned with particular textbooks or subjects, assisting students in understanding complex concepts or practicing a new language.
Legal and Medical Assistance: Lawyers and medical professionals often need quick access to a wealth of references. Custom GPTs, fine-tuned with legal or medical texts, can aid these professionals by providing rapid references and suggestions based on specialized knowledge bases.
Travel Planner: By training a custom GPT with the best travel itineraries as knowledge files, users can receive tailor-made holiday suggestions based on their preferences.
Agricultural Advisor: A custom GPT could be trained with regional weather patterns and market demands to provide farmers with insights about the most suitable crops for a given season and market.
Finance Planning: Customized to individual financial situations and goals, a custom GPT could offer advice on budgeting, investment strategies, and retirement planning.
Copy Checker: We can have a custom GPT designed to assist with everyday writing. Its primary function isn't to change sentences but to check for spelling and grammatical errors. This tool would be invaluable for enhancing our day-to-day written communications, including social media posts, emails, blogs, and more, ensuring they are polished and professional.
Personal Use Cases
Personalized Book Companions: By uploading book contents, custom GPTs can be created to serve as interactive companions for readers. These GPTs can answer questions, discuss themes, and provide analysis, enhancing the reading experience.
Personal Assistants: If you maintain a digital diary or a 'second brain' on Notion or any other note-taking app, this can serve as a knowledge base for a custom GPT. Imagine a custom GPT trained on this data, encompassing your personal preferences, schedules, and tasks. Such a GPT could act as a highly personalized assistant, aiding in daily decision-making.
Personal Motivator: If you have favorite authors or books that inspire you, they can serve as knowledge files for a custom GPT. This model could help you find motivation using quotes or themes from these sources, be it Dale Carnegie's books, Naval Ravikant's tweets, or the Bhagavad Gita.
Personal Design Critique: A custom GPT can act as a critique for any uploaded design and provide suggestions based on knowledge files. These files could include works from your favorite artists or standard design patterns.
Developer Use Cases
Custom GPTs come equipped with a code interpreter, enabling users to directly attach a file in any programming language as input.
Software Migration: As developers, we often have numerous modernization tasks at hand. This could involve migrating code from one language to another, or from one framework to another, such as Angular to React/Next, or even upgrading from one version to another, like Python 2 to 3. We can create a custom GPT with prompts for this task, along with cheat sheets for the most commonly used migrations as knowledge files.
Unit Tests: Writing unit tests can be quite a tedious task for many developers, yet they are vital for preventing future bugs and issues as the code evolves. Creating a custom GPT for this purpose would be hugely beneficial. Such a GPT could generate extensive unit tests covering all possible cases, simply by uploading or pasting a file. This would not only save time but also enhance the quality and thoroughness of the testing process.
Mockup to Component: For frontend developers, who often need to convert Figma files to frontend components, or for those who are prototyping an application, a custom GPT could be a game-changer. Imagine a GPT that can swiftly convert mockups into React, Svelte, vanilla JS, or any frontend stack of choice.
Code Documentation: Writing documentation for code on platforms like GitHub (in the ReadMe) or on Confluence is a regular necessity. We can simplify this process by creating a custom GPT with specific prompts tailored for documentation purposes.
In the next part of this blog series, we will focus on understanding how to create a custom GPT. Additionally, we'll dive deeper into some of the use cases discussed earlier. This exploration will involve building custom GPTs to showcase their practical applications and demonstrate their effective utilization in various scenarios.