AI Tutorials tutorial

Building Chatbots with Python and OpenAI API

Chatbot Python OpenAI Tutorial

Introduction

This tutorial teaches you how to build a fully functional chatbot using Python and the OpenAI API, including conversation memory and context management.

Prerequisites

pip install openai python-dotenv

Setup

import openai
import os
from dotenv import load_dotenv

load_dotenv()
client = openai.OpenAI(api_key=os.getenv("OPENAI_API_KEY"))

Basic Chatbot

def chat(user_message):
    response = client.chat.completions.create(
        model="gpt-4",
        messages=[
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": user_message}
        ]
    )
    return response.choices[0].message.content

Adding Conversation Memory

class ChatBot:
    def __init__(self, system_prompt="You are a helpful assistant."):
        self.messages = [{"role": "system", "content": system_prompt}]
    
    def chat(self, user_message):
        self.messages.append({"role": "user", "content": user_message})
        
        response = client.chat.completions.create(
            model="gpt-4",
            messages=self.messages
        )
        
        assistant_message = response.choices[0].message.content
        self.messages.append({"role": "assistant", "content": assistant_message})
        
        return assistant_message

# Usage
bot = ChatBot("You are a Python expert.")
print(bot.chat("How do I read a file?"))

Resources

Source: JackAI Hub