June 2022

You should build an AI chatbot

The same basic mechanics that underlie every AI chatbot, and that you can learn in minutes (this post will show you how), can be used to launch a 1,000 new startups. All that's missing is a unique perspective, which is where you come in.

I wrote this article for anyone who's curious about AI but specifically for law students and product designers at the start of their career.

tl;dr: To create a game-changing AI chatbot, all you need is a dataset that serves a niche community you have insight into. The low-code way to build this chatbot is Zapier, but even if you have no technical background you can get an actual code chatbot up and running by forking this Replit project and following the instructions in this video.

What is an AI chatbot?

You've likely used a chatbot and, honestly, probably didn't enjoy the experience. Chatbots have been around for almost as long as computers, but an AI chatbot feels like an entirely new thing.

An AI chatbot generates human-like responses based on natural language inputs. The chatbot can be restricted to a specific dataset, resulting in situations where it says "I don't know", or unrestricted and allowed to generate responses to any question you ask of it (occasionally resulting in inaccurate statements known as hallucinations).

If you haven't yet, I highly encourage you to try products like ChatGPT and Claude to get a feel for what it's like to interact with software using "natural language inputs", i.e. what it's like to talk to an app.

The broader implications of enhancing a chatbot with an LLM are profound, but I'm a practical person and this is a practical guide so we'll just concern ourselves with the immediate effect: you can now talk to any book, codex, or collection of data. You can ask these things to explain themselves to you as if you were a five year old. You can type or use your voice. You can receive answers as text or spoken word. You can describe your situation and ask the chatbot "what should I do?"

AI chatbot mechanics

The type of AI chatbot we're going to explore includes the following working parts:

  • Large language model (LLM): A machine learning algorith used to generate human-like text based on the input it receives. Magic as far as we're concerned, and available for a reasonable fee from companies like OpenAI (gpt-4) or Anthropic (claude), or for free from a growing open-source movement.
  • Dataset: The subject matter the LLM will restrain itself to when generating responses.
  • Prompt: You can think of the LLM has a wildly powerful autocomplete where text goes in and text comes out. The text that goes in is the prompt. The prompt can include nothing more than the user's input, but typically also includes instructions on how the AI should respond.
  • Chat interface: This is the frontend of our chatbot, which is essentially just an SMS text user interface.

What kind of AI chatbot should you build?

You should build something minimal that is still useful (AKA a minimum viable product). But in my experience, it's very difficult to jump straight to thinking about the kinds of problems a technology can solve; it's easier if you start with a firm understanding of the mechanics. After you understand the basic mechanics, you can enter a state of play with the technology and this is the optimal state from which to innovate.

Once you're comfortable playing with the mechanics of an AI chatbot, I have some ideas on the types of issues you might tackle:

For law students

There is a lot of work to be done in making legal services more accessible. Your chatbot could contribute to that effort by simply wrapping some obscure but useful set of rules in a LLM.

The first challenge to building this kind of AI chatbot is assembling the dataset. Do you scrape government websites? Upload PDFs? Could you partner with accomplished authors to use their books/articles/videos/podcast interviews as the underlying dataset?

The second challenge is framing/marketing your chatbot so that your target audience understands exactly what this bot can and can't do. Your chatbot should have a narrowly defined purpose. This will make it easier for your audience to find it, and it allows you to focus on providing deep value which is better to have than broad/shallow value.

For product designers

ChatGPT launched late November, 2022, and introduced AI chatbots to a million people (1 million users signed up in the company's first 5 days, breaking the record for fastest-growing user base). ChatGPT's user interface is largely unchanged from its launch 9 months ago, a simple text field with some hints about the type of things you could type into it:

Screenshot of ChatGPT gpt-4 Aug 2023

Is this the best user interface? Maybe it's the best for a general-purpose, "ask me anything" style chatbot, but what about one that is ultra focused? Maybe the best user interface depends on the unique attributes of the underlying use-case, and maybe it looks nothing like a traditional chatbot?

It doesn't take much to make a meaningful contribution to this new field of expertise.

Build a chatbot in 1 minute using no-code tools

So-called "no-code" tools are a wonderful thing. They make it easy for anyone, regardless of technical ability, to build software products. The most commonly known type of no-code tool is a website builder like SquareSpace, Wix, or (imo, this is the best no-code website builder, by far) Webflow. Other types of no-code tools include:

  • Database builders: Airtable, Google Sheets, Notion
  • Integration platforms (used to connect various web services, applications, or devices): Zapier, IFTTT, Pipedream, and Make.

Zapier is what I recommend using if you want to build an AI chatbot in 1 minute.

setup
  1. Create a Zapier account;
  2. Follow Zapier's instructions for building an AI chatbot.

You'll need a Premium Zapier Interfaces plan ($20/m) and a dataset that fits on a 1MB static file. The cost and limited functionality is what you exchange for speed and ease-of-use. The actual code solution, which I promise is doable for anyone, costs less than 50 cents per month.

Before we jump to actual code, I have to point out that there are a number of people working on building a no-code tool just for building AI chatbots and services. I haven't explored these much but I encourage you to see what works (all these products are startups and they generally offer free trials as they try to find traction).

Build a chatbot in 30 minutes using actual code

Modern software development tools are some of the best software products ever created; they're simple, powerful, and worth investing the time to learn. Now it's time to introduce my current favorite tool: Replit.

Previously, if you wanted to start writing code, you'd have to first set up your computer (download a ton of stuff, configure it, etc...). Now, you can just create a free account on Replit and click 'Create Repl' to launch a new code project. Even better, you copy an existing Repl and edit it for your purpose. Which is exactly what we're going to do.

setup
  1. Sign up for an OpenAI API account to get an API key. You'll have to add a payment method to get the API key and you'll be charged according to how often that key is used (OpenAI's gpt-3.5-turbo LLM is extremely affordable).
  2. Fork this Replit project.
  3. Follow this instructions in this video:

How to troubleshoot any situation

You will run into issues. Something will break and you will not know why. This is an inescapable part of building software. Thankfully, it's never been easier to dig yourself out of these holes because you have access to an infinitly patient tutor in the form of ChatGPT or Claude.

Every instance where you get stuck is an opportunity to learn, not only how to solve the problem at hand but how to interact with an AI chatbot to get the most value from it. To troubleshoot with ChatGPT or Claude, make sure to provide as much context as possible. Trying copying and pasting the error message; try copying and pasting chunks of your code (or even your entire file). Ask the chatbot to rephrase its advice. Ask the chatbot to explain itself to you as if you were a 5 year old.

I promise, with patience and consistent effort, there is nothing you can't build.