Membangun chatbot sendiri kini sangat mudah berkat OpenAI API. Tutorial ini membuat chatbot simpel dalam <100 baris Python.
Persiapan
pip install openai python-dotenv
Konfigurasi API Key
# .env
OPENAI_API_KEY=sk-...
main.py
from dotenv import load_dotenv
import os
from openai import OpenAI
load_dotenv() client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
Basic Chat Completion
def chat(messages: list) -> str:
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=messages,
temperature=0.7,
max_tokens=1000,
)
return response.choices[0].message.content
Chatbot dengan History
def run_chatbot():
system_prompt = {
"role": "system",
"content": "Kamu adalah asisten yang membantu dan ramah. Jawab dalam Bahasa Indonesia."
}
messages = [system_prompt]
print("Chatbot siap! Ketik 'quit' untuk keluar.")
while True: user_input = input("\nAnda: ").strip() if user_input.lower() == 'quit': break
messages.append({"role": "user", "content": user_input}) response = chat(messages) messages.append({"role": "assistant", "content": response})
print(f"\nBot: {response}")
if __name__ == "__main__": run_chatbot()
Stream Response untuk UX yang Lebih Baik
def chat_stream(messages: list):
stream = client.chat.completions.create(
model="gpt-4o-mini",
messages=messages,
stream=True,
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)