Skip to main content
IT Tutorial 25 June 2026 ~3 menit baca

Membangun Chatbot AI dengan Python dan OpenAI API di 2026

Dengan Python dan OpenAI API, kamu bisa membangun chatbot AI yang fungsional dalam waktu singkat. Panduan ini mencakup setup, manajemen riwayat percakapan, pembungkusan sebagai REST API, dan tips produksi.

R
Reyzone Dev Team
Technical Writer · Reyzone

Era Chatbot AI Sudah Dimulai

Di 2026, mengintegrasikan kemampuan AI ke dalam aplikasi bukan lagi hak eksklusif perusahaan besar. Dengan OpenAI API dan Python, seorang developer solo pun bisa membangun chatbot cerdas dalam hitungan jam.

Persiapan Lingkungan

python -m venv .venv
source .venv/bin/activate  # Linux/Mac
.venv\Scripts\activate     # Windows

pip install openai python-dotenv fastapi uvicorn

File .env:

OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
OPENAI_MODEL=gpt-4o-mini

Chatbot Dasar dengan Memory Percakapan

import os
from openai import OpenAI
from dotenv import load_dotenv

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

def chatbot():
    messages = [
        {
            "role": "system",
            "content": "Kamu adalah ReyBot, asisten IT berbahasa Indonesia."
        }
    ]
    print("ReyBot aktif! Ketik 'keluar' untuk berhenti.\n")
    while True:
        user_input = input("Kamu: ").strip()
        if user_input.lower() == "keluar":
            break
        messages.append({"role": "user", "content": user_input})
        response = client.chat.completions.create(
            model="gpt-4o-mini",
            messages=messages,
            max_tokens=800
        )
        reply = response.choices[0].message.content
        messages.append({"role": "assistant", "content": reply})
        print(f"\nReyBot: {reply}\n")

Membungkus sebagai REST API dengan FastAPI

from fastapi import FastAPI
from pydantic import BaseModel
from openai import OpenAI

app = FastAPI(title="ReyBot API")
client = OpenAI()
sessions = {}

class ChatRequest(BaseModel):
    session_id: str
    message: str

@app.post("/chat")
async def chat(req: ChatRequest):
    if req.session_id not in sessions:
        sessions[req.session_id] = [
            {"role": "system", "content": "Kamu adalah ReyBot."}
        ]
    sessions[req.session_id].append({"role": "user", "content": req.message})
    response = client.chat.completions.create(
        model="gpt-4o-mini",
        messages=sessions[req.session_id]
    )
    reply = response.choices[0].message.content
    sessions[req.session_id].append({"role": "assistant", "content": reply})
    return {"reply": reply}

Tips Produksi

  • Jangan hardcode API key — selalu gunakan environment variable
  • Simpan riwayat chat di Redis untuk produksi
  • Gunakan streaming response agar user tidak menunggu lama
  • Monitor penggunaan token di dashboard OpenAI untuk kontrol biaya

Kesimpulan

Dengan Python dan OpenAI API, membangun chatbot AI yang fungsional membutuhkan waktu kurang dari satu hari kerja. Kembangkan lebih jauh dengan menambahkan knowledge base perusahaan atau integrasikan dengan database produksi.

Bagikan Tutorial Ini:
Kembali ke Daftar Tutorial