How Do I Run ChatGPT Locally Using Docker Desktop?

Running ChatGPT locally using Docker Desktop can be a great way to experiment with the popular AI-powered chatbot without having to rely on an internet connection or worry about data privacy concerns. Docker Desktop is a powerful tool that allows you to create and run containers on your local machine, making it easy to deploy and test ChatGPT in a local environment. In this guide, we will walk you through the step-by-step process of running ChatGPT natively using Docker Desktop, so you can start experimenting with this cutting-edge technology today.

Steps to run ChatGPT locally using Docker Desktop

  1. Install Docker Desktop: Download and install Docker Desktop from the official Docker website.
  2. Enable Kubernetes: Open Docker Desktop and go to “Settings” > “Kubernetes” and enable Kubernetes.
  3. Writing the Dockerfile: Create a new file called “Dockerfile” in a new directory. Copy and paste the following code into the Dockerfile:
FROM python:3.8-slim-buster
ENV MODEL_ENGINE "text-davinci-002"
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "app.py"]
  1. Create requirements.txt: Create a new file called “requirements.txt” in the same directory as the Dockerfile. Copy and paste the following code into the requirements.txt file:
openai==0.10.2
flask==2.0.1
  1. Create app.py: Create a new file called “app.py” in the same directory as the Dockerfile. Copy and paste the following code into the app.py file:
from flask import Flask, request
import openai
import os

app = Flask(__name__)

openai.api_key = os.environ["OPENAI_API_KEY"]
model_engine = os.environ["MODEL_ENGINE"]

@app.route("/chat", methods=["POST"])
def chat():
    data = request.json
    response = openai.Completion.create(
        engine=model_engine,
        prompt=data["message"],
        max_tokens=1024,
        n=1,
        stop=None,
        temperature=0.5,
    )
    return {"message": response.choices[0].text.strip()}

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=8080)
  1. Build the Docker image: Open a terminal or command prompt and navigate to the directory where the Dockerfile, requirements.txt, and app.py files are located. Run the following command to build the Docker image:
docker build -t chatgpt .
  1. Run the Docker container: Once the Docker image is built, run the following command to start the Docker container:
docker run -d -p 8080:8080 --name chatgpt chatgpt
  1. Test ChatGPT: Open a web browser and go to http://localhost

Share This