ساختن یک ربات چت هوش مصنوعی شخصی با کدنویسی غلط ممکن است ترسناک به نظر برسد. اما نگران نباشید؛ ChatGPT API یک راه میانبر مفید به شما ارائه میدهد. با فکت کوینز و آموزش ساخت chatbot شخصی همراه باشید.
API OpenAI به شما امکان دسترسی به مدل زبان آن را میدهد. بنابراین، میتوانید یک چتبات ایجاد کنید که نه تنها پاسخهای رباتگونه را ارائه میکند، بلکه حال و هوای یک مکالمه واقعی را به شما میدهد. در این مقاله، یکی از سادهترین راهها برای ساخت chatbot شخصی را با استفاده از OpenAI API بررسی میکنیم.
مقدمه
قبل از اینکه به آموزش ساخت chatbot بپردازیم، در اینجا چند نکته وجود دارد که باید به آنها توجه کنید. چه از ویندوز، مک، لینوکس یا ChromeOS استفاده کنید، روند ساخت یک ربات چت هوش مصنوعی کم و بیش یکسان است.
ما این فرآیند را در سیستم عامل ویندوز نشان خواهیم داد و هر مرحله را با دستورالعملهای واضح و مثالهای گویا تجزیه میکنیم. بنابراین، حتی اگر دانش رایانهای شما ضعیف باشد، هیچ مشکلی ندارد و میتوانید این کار را به سادگی انجام دهید.
در مورد نیازهای سخت افزاری هم نگران نباشید. نیازی به CPU یا کارت گرافیک رده بالا نیست. API مبتنی بر کلود (ابر) OpenAI همه محاسبات فشرده را انجام میدهد.
آموزش ساخت Chatbot شخصی با ChatGPT API
قبل از ساخت یک چتبات هوش مصنوعی مبتنی بر ChatGPT، به برخی از ابزارهای ضروری برای راهاندازی آن نیاز دارید. در یک نگاه، این ابزارها شامل پایتون (Python)، Pip، کتابخانههای OpenAI و گرادیو Gradio))، OpenAI API و یک ویرایشگر کد مثل Notepad++ است.
پایتون را نصب کنید
برای شروع، میبایست پایتون را روی رایانه خود نصب کنید و ترجیحاً یکی از نسخههای اخیر آن را دانلود کنید. به بخش دانلود وبسایت رسمی پایتون بروید تا بسته به نسخه ویندوز خود، نسخه 32 یا 64 بیتی را دریافت کنید.
هنگامی که فایل نصبی را دانلود کردید، آن را اجرا کنید تا فرایند نصب آغاز شود. یک نکته: در حین نصب، گزینه «Add Python XX to PATH» را انتخاب کنید، «XX» مخفف نسخهای است که شما نصب میکنید. این به سیستم شما کمک میکند تا بدون دردسر پایتون را پیدا کند. پس از انجام این کار، روی “Install Now” کلیک کنید.
برای اینکه پایتون در سیستم شما اجرا میشود، موارد زیر را انجام دهید:
- منوی Start را باز کنید و به دنبال “Command Prompt” یا “CMD” بگردید.
- هنگامی که ترمینال ظاهر شد، “python –version” را وارد کرده و Enter را فشار دهید.
اگر پایتون به درستی نصب شده باشد، ترمینال نسخه پایتونی را که شما نصب کردهاید نمایش میدهد، همانطور که در تصویر زیر نشان داده شده است.
پیپ را ارتقا دهید
Pip پکیج منجر (package manager) پایتون است که برای نصب و مدیریت کتابخانهها و ابزارهای پایتون ضروری است. به روز نگه داشتن آن باعث میشود که از جدیدترین ویژگیها و اصلاحات بهره مند شوید، که هنگام راه اندازی کتابخانهها برای چت ربات هوش مصنوعی بسیار مهم است.
برای بررسی نسخه فعلی Pip:
- یک خط فرمان (برای ویندوز) یا ترمینال (برای macOS/Linux) راه اندازی کنید.
- دستور pip –version را وارد کنید تا نسخه فعلی را ببینید.
- برای دریافت آخرین نسخه Pip، دستور python -m pip install –upgrade pip را اجرا کنید.
ما از قبل آخرین نسخه پیپ را روی رایانه نصب کردهایم، به همین دلیل است که پیام زیر را دریافت کردیم: ” Requirement already satisfied.”
با این حال، اگر به روز رسانی در دسترس باشد، پیپ به طور خودکار فرآیند دانلود و نصب را انجام میدهد. پس از پایان فرآیند، نسخه Pip را با دستور pip –version دوباره بررسی کنید تا مطمئن شوید که به روز رسانی موفقیت آمیز بوده است.
بیشتر بخوانید: افزونه ChatGPT چیست؟ آشنایی با بهترینها!
یک محیط مجازی راه اندازی کنید
راه اندازی یک محیط مجازی یک حرکت هوشمندانه قبل از کار با کتابخانه است. این اطمینان میدهد که ابزارهای پروژه شما با تنظیمات اصلی پایتون شما در تضاد نیست. این یک مرحله اختیاری در آموزش ساخت chatbot است، اما به شدت توصیه میشود.
برای شروع کار با virtualenv:
- آن را با استفاده از دستور pip install virtualenv نصب کنید
- در مرحله بعد، به دایرکتوری (directory) پروژه خود بروید و یک محیط مجازی را با: virtualenv venv راه اندازی کنید
- محیط مجازی را با استفاده از دستور زیر فعال کنید: .\venv\Scripts\activate
پس از فعالسازی محیط مجازی، متوجه تغییر کوچکی خواهید شد. خط فرمان یا ترمینال شما اکنون نام محیط مجازی (در این مورد “venv”) را به عنوان پیشوند نمایش میدهد. این نشان میدهد که شما اکنون در منطقه ویژه “venv” فعالیت میکنید.
با طی این مراحل، پروژه شما با موفقیت ایزوله شده و فرآیند توسعه روانتر خواهد شد.
کتابخانههای Gradio و OpenAI را نصب کنید
مرحله بعدی نصب کتابخانههای OpenAI و Gradio است. OpenAI دروازه شما به مدل زبان بزرگی است که برای تقویت چت ربات خود استفاده خواهید کرد. در همین حال، Gradio یک کتابخانه قدرتمند متن باز پایتون است که برای ایجاد رابطهای یادگیری ماشینی عالی است. در اینجا نحوه دریافت آنها با استفاده از pip آمده است:
- کتابخانه Gradio را با دستور زیر نصب کنید: pip install gradio
- کتابخانه OpenAI را با استفاده از دستور زیر نصب کنید: pip install openai
هنگامی که این دستورات را اجرا کردید، Pip کتابخانههای مورد نیاز را از Python Package Index (PyPI) دریافت میکند و آنها را در محیط پایتون شما قرار میدهد. اکنون تنها چند قدم تا انتهای آموزش ساخت chatbot شخصی خود فاصله دارد.
یک ویرایشگر کد نصب کنید
اکنون که پشت صحنه را با محیط نرم افزاری مورد نیاز راه اندازی کردهاید، زمان آن رسیده است که یک ویرایشگر کد برای خود تهیه کنید. گزینههای زیادی وجود دارد، اما انتخاب گزینهای که با نیازهای شما و زبانهایی که در آن کدنویسی میکنید همسو باشد، ضروری است.
کد ویژوال استودیو (VS Code) گزینه خوبی است که تمام نیازهای شما را در اینجا برآورده میکند. این یک ویرایشگر کد رایگان و پر از قابلیت است و میتوانید آن را از پورتال رسمی Visual Studio دانلود کنید.
پس از دانلود، فایل نصبی را اجرا کنید. اگر VS Code را دوست نداشتید، گزینههای دیگری که ارزش بررسی دارند عبارتاند از Notepad++، Sublime Text، PyCharm و Atom و غیره.
بیشتر بخوانید: الگوتریدینگ (Algo Trading) چیست و چطور کار میکند؟
کلید OpenAI API خود را دریافت کنید
اکنون، شما به یک کلید API از OpenAI نیاز دارید. این کلید را به عنوان پاسپورت پشت صحنه خود در نظر بگیرید، که قابلیت اجرای مستقیم ChatGPT در رابط چت بات شما را آزاد میکند.
با رفتن به وبسایت OpenAI: https://www.OpenAI.com/ کار را شروع کنید. حساب OpenAI دارید؟ عالی است، وارد آن شوید. اگر نه، جای نگرانی نیست! فقط با پر کردن مشخصات لازم ثبت نام کنید.
هنگامی که وارد شدید، به گوشه بالا سمت راست نگاه کنید و نماد پروفایل خود را ببینید. روی ان یک کلیک کنید. از منوی کشویی، «View API keys» را انتخاب کنید.
سپس روی «Create new secret key» کلیک کنید. وقتی کلید API ایجاد شد، سریع آن را کپی کنید. هشدار: این یک حرکت هوشمندانه برای ذخیره فوری آن است.
کلید OpenAI API شما اکنون آماده و در انتظار شماست. از آن به خوبی محافظت کنید. این کلید خصوصی شما است که فقط برای شما در نظر گرفته شده است و برای عموم نیست. اگر زمانی احساس نیاز کردید، میتوانید کلیدهای قدیمی را کنار بگذارید و کلیدهای تازه را استفاده کنید (حداکثر پنج مورد).
چت ربات ChatGPT خود را با این کد بسازید
لحظه نهایی فرا رسیده است! ما میخواهیم از Creme de la Crème OpenAI، مدل GPT 3.5 توربو، که موتور ChatGPT-3.5 است استفاده کنیم.
توربو GPT-3.5 یک پله بالاتر از داوینچی است و دادههای آموزشی تا سپتامبر 2021 را به خود اختصاص میدهد. این نسخه سریعتر از نسخههای قبلی خود است و context window وسیعتری دارد.
برای سادهسازی فرآیند، ما از Gradio برای ایجاد یک رابط وب استفاده میکنیم که میتوانید هم از طریق دستگاه محلی خود و هم از طریق اینترنت به آن دسترسی داشته باشید. در اینجا چه باید کرد:
VS Code (یا ویرایشگر کد اصلی خود) را راه اندازی کنید و کد زیر را کپی کنید.
کد:
import openai
import gradio as gr
import os
from datetime import datetime
from collections import defaultdict
# Use environment variable for API key
openai.api_key = os.getenv(“OPENAI_API_KEY”)
# Basic rate limiter
class RateLimiter:
def __init__(self, max_requests, time_window):
self.max_requests = max_requests
self.time_window = time_window
self.timestamps = defaultdict(list)
def is_allowed(self, session_id):
Sponsored
Sponsored
now = datetime.now()
if session_id not in self.timestamps:
self.timestamps[session_id].append(now)
return True
timestamps = self.timestamps[session_id]
# Remove old timestamps
self.timestamps[session_id] = [t for t in timestamps if (now – t).seconds <= self.time_window]
if len(self.timestamps[session_id]) < self.max_requests:
self.timestamps[session_id].append(now)
return True
return False
rate_limiter = RateLimiter(max_requests=5, time_window=60) # Allow 5 requests per minute
# Store separate conversations for different user sessions
chat_sessions = {}
def chatbot(input, session_id):
if not input:
return “Please enter a message.”
if not rate_limiter.is_allowed(session_id):
return “Rate limit exceeded. Please wait for a while.”
# Initialize session if not present
if session_id not in chat_sessions:
chat_sessions[session_id] = [
{“role”: “system”, “content”: “You are a helpful and kind AI Assistant.”}
]
session_messages = chat_sessions[session_id]
session_messages.append({“role”: “user”, “content”: input})
try:
chat = openai.ChatCompletion.create(
model=”gpt-3.5-turbo”, messages=session_messages
)
reply = chat.choices[0].message.content
session_messages.append({“role”: “assistant”, “content”: reply})
except Exception as e:
reply = f”Error: {e}”
print(f”Error for session {session_id}: {e}”) # Basic logging
return reply
inputs = gr.inputs.Textbox(lines=7, label=”Chat with AI”)
outputs = gr.outputs.Textbox(label=”Reply”)
gr.Interface(fn=chatbot, inputs=inputs, outputs=outputs, title=”AI Chatbot”,
description=”Ask anything you want”,
theme=”compact”, live=False, session=True).launch(share=True)
خوب، به مراحل پایانی آموزش ساخت chatbot نزدیک شدهایم. حالا بیایید کد را ذخیره کنیم. به گزینه “File” در منوی بالا بروید و روی “Save As…” کلیک کنید. اکنون، نام فایل خود را “chatbot.py” و در ” Save as type “، ” All types ” را انتخاب کنید. یک مکان مناسب در هارد دیسک خود را برای ذخیره فایل انتخاب کنید (به عنوان مثال، Desktop).
اتصال ایمن کد به کلید API شما
به بخش “OPENAI_API_KEY” در کد بالا توجه کردید؟ این جایی است که کلید OpenAI شما باید باشد.
به دلایل امنیتی، بسیار مهم است که اطلاعات حساس مانند کلیدهای API را مستقیماً در کد خود وارد نکنید. هاردکد کردن آنها، برنامه های شما را آسیبپذیر میکند و اگر کد به اشتراک گذاشته یا منتشر شود، میتواند چتبات شما را در معرض خطر قرار دهد.
یک رویکرد ایمنتر، استفاده از متغیرهای محیطی است. اینها متغیرهای خارجی هستند که کد شما میتواند به آنها دسترسی داشته باشد اما خارج از کدبیس باقی میمانند. در اینجا نحوه اجرای این کار آمده است:
متغیر محیط (environment variable) را تنظیم کنید:
- قبل از کدنویسی، ابتدا باید متغیر محیطی حاوی کلید API خود را تنظیم کنید.
این معمولاً خارج از اسکریپت پایتون شما اتفاق میافتد. برای کاربران ویندوز، به Command Prompt رفته و دستور زیر را اجرا کنید. توجه داشته باشید که اگر پنجره قبلی Command Prompt را ببندید، ابتدا مطمئن شوید که با استفاده از مراحل توضیح داده شده در آموزش ساخت chatbot ، محیط مجازی را دوباره فعال کنید.
setx OPENAI_API_KEY «YOUR_ACTUAL_API_KEY_HERE»
- YOUR_ACTUAL_API_KEY_HERE را با کلید OpenAI API واقعی خود جایگزین کنید.
با استفاده از تابع os.getenv() میتوانید به مقدار متغیر محیطی که قبلاً تنظیم کردهاید دسترسی داشته باشید. قبل از اجرای اسکریپت پایتون اطمینان حاصل کنید که متغیر محیط به درستی تنظیم شده است.
ربات چت هوش مصنوعی شما اکنون آماده انتشار است
در مرحله آخر آموزش ساخت chatbot ، “python” را در Command Prompt تایپ کنید، پس از آن یک فاصله بگذارید، سپس قبل از زدن enter، مسیر فایل خود را انتخاب کنید. بری من، مسیر فایل C:\Users\user\chatbot_x.py است. بسته به دایرکتوری که کد را در آن ذخیره کردهاید ممکن است مال شما متفاوت باشد.
python c:\Users\user\chatbot_x.py
ممکن است چند هشدار ظاهر شود اما نگران نباشید. فقط به پایین اسکرول کنید، هم URL محلی و URL هم عمومی را مشاهده خواهید کرد. URL محلی را در مرورگر خود کپی کنید. اگر میخواهید دستاورد خود را با دوستانتان به نمایش بگذارید، این کار را با اشتراکگذاری URL عمومی انجام دهید. توجه داشته باشید که این URL ها فقط برای مدت محدودی معتبر هستند. علاوه بر این، ممکن است مجبور شوید رایانه خود (و پنجره خط فرمان) را فعال نگه دارید تا URL ها معتبر بمانند.
هر یک از URL ها را در مرورگر مورد علاقه خود کپی کنید، و voilà! ربات چت هوش مصنوعی شما اکنون راه اندازی شده است. مسلماً این رابط کاربری فانتزی نیست، اما جواب میدهد. حال سوالات خود را از چت ربات هوش مصنوعی خانگی خود بپرسید.
جمع بندی؛ آموزش ساخت chatbot
دنیای هوش مصنوعی دیگر فقط مختص افراد باهوش دنیای فناوری نیست. اینکه بتوانیم نحوه ساخت چتبات ChatGPT را آموزش دهیم، گواهی بر این است که فضای هوش مصنوعی چقدر در دسترس است. با پلتفرمهایی مانند OpenAI و ابزارهای کاربرپسند، مرزهای نوآوری برای همه در حال گسترش است. همانطور که به کاوش ادامه میدهید، به یاد داشته باشید که این صنعت نوپا اما پر رونق هر روز در حال پیشرفت است و فرصتها و چالشهای جدیدی را ارائه میدهد.