git.wine logo
Published on

Wine Bots and How to Make a Custom ChatGPT

If you want to try out a wine bot or experiment with making your own with ChatGPT you're in luck! I did some of the hard work so you can understand how best to go about things.

Want to try it out? Go here πŸ‘‰ WineGPT Plus.

A quick introβ€”

Hi πŸ‘‹ I'm Rijnard. I'm a credentialed Certified Sommelier (Court of Master Sommeliers) and a Certified Specialist of Wine. My day job is programming, and I earned my PhD in Computer Science from Carnegie Mellon University in 2019.

Getting into wine changed how I spend my free time, and I want to make your wine experiences more valuable. I hope this article will lead you to authentic life-long memories with people and places.

Below are my tips, and many of them are general: This guide will even help you even if you're not interested in wine and want to build your own custom ChatGPT for a different topic. If you are interested in wine, you'll get a kick out of this.

Goals and Questions

  • How do I teach my GPT to use as a basis specific tips I give it?

    • For example, I have some beginner tips that I want WineGPT to give in certain contexts for enjoying wine.
  • How can I give my GPT raw data, what does it need to know, and how can it use that information to help users?

    • For example, I have many tasting notes and personal wine reviews that I want WineGPT to tap into when making food recommendations or different styles of wine to try.
  • How can I enhance my GPT with data to create educational responses and combine it with other data?

    • For example, I have some map data of wine regions that I'd like WineGPT to use to help the user understand wine regions and even have it create quizzes.

Here's a video at the of me building an example WineGPT bot from start to finish. Note: you'll need ChatGPT Plus (paid subscription) to build and submit your own GPT. If you prefer text guidance instead of the video, scroll down!

General tips for making your own custom GPT

  • Look at Existing Models for Ideas and Inspiration. Before starting, search in the "Explore GPTs" section to find existing GPTs in your chosen topic or theme (like wine), and see what they do.

  • Customizing is iterative and involves a several steps. When creating your custom GPT, you'll need to name it, set a descriptive focus, and input specific instructions tailored to your theme.

  • Save Your Instructions and Data Separately. Save the instructions and all the information you input to the GPT when you begin and as you continue building. The website can sometimes error and you may lose the instructions you gave it during the customization process.

  • Be Detailed in Your Instructions. Use the ChatGPT builder things that may seem "obvious". For example, it should have some level of enthusiasm (depending on your theme), respond directly with plain or casual language, and preferably focus only on the content of your theme.

  • Teach the GPT to Prioritize Your Data Over Default Knowledge. Make sure the GPT prioritizes the data you provide over its default knowledge base (literally type that out and tell it that!). If you don't, your GPT may decide to just use its general knowledge and never bother using the data you gave it, limiting the value that you tailor for your theme.

  • Structure Your Data Correctly. Using data formats that the GPT can understand and process with code, such as JSON or CSV, will help enhance its understanding of your data. You should tell it specifically what this data is about. When there is structure, like CSV headers or particular keys or fields in the JSON, explain to the GPT that data schema and what the headers represent (e.g., scores, price, and so on).

  • Pay attention to Issues where GPT Doesn't Respond as Expected. This can happen particularly when you give it structured formats and it errors while analyzing, processing, or parsing the data based on a user's questions. To mitigate, you should test and instruct the GPT to process file data in a specific way.

  • Anticipate User Questions and Continuously Refine the GPT's Responses. Test specifically for the kinds of responses you expect from a typical user. For example, if you are teaching the GPT beginner tips, ask it questions about beginner tips and whether it responds with the data you gave it and expect (more or less). Do this for all the data that you teach the GPT.

Here's a pleasing response of my ChatGPT

WineGPT Plus screenshot

Summary

To really get mileage out of a custom GPT means fine-tuning it, don't assume that it will figure out your data and intentions. A lot of customization boils down to balancing your custom data with GPT's abilities and default Knowledge. Finding the right balance is what will really make your GPT stand out and not be a generic bot with GPT as the backend. I typically find that anticipating likely user questions and instructing the GPT to respond with your relevant information first is the best method for starting this customizing process.

There are a lot of ways to enhance your GPT, and you want to consider how your data can best support those activities, whether providing tips in certain context, general recommendations, or educational content. All of those topics are excellent themes for a WineGPT when you have great data to enhance it with!