اگر برنامهتان را با OpenAI SDK ساختهاید، برای اتصال به یک API سازگار معمولاً لازم نیست بخش ارتباط با مدل را از ابتدا بنویسید. در درخواستهای Chat Completions، نقطه شروع تغییر سه مقدار است: کلید API، آدرس پایه سرویس و شناسه مدل.
ما در پاستاکلود این مسیر را برای اتصال به مدلهای مختلف فراهم کردهایم. میتوانید از کتابخانه آشنای OpenAI استفاده کنید، مدل را متناسب با پروژه انتخاب کنید و مصرف و هزینه درخواستها را در فضای کاری خود ببینید.
برای شروع، یک درخواست متنی ساده کافی است. پس از دریافت اولین پاسخ، میتوانید تغییر مدل، پاسخ جریانی و مدیریت خطاها را به برنامه اضافه کنید.
OpenAI SDK چگونه به پاستا متصل میشود؟
SDK یک کتابخانه برنامهنویسی است که ساخت درخواست و دریافت پاسخ از API را سادهتر میکند. در این آموزش، از کتابخانه OpenAI استفاده میکنیم و مقصد درخواستها را روی API پاستا قرار میدهیم.
اطلاعات اتصال به این صورت است:
|
تنظیم |
مقدار مورد نیاز |
|
کلید API |
کلیدی که در پاستا ساختهاید |
|
Base URL |
https://console.paasta.cloud/api/ai/v1 |
|
شناسه مدل |
شناسه دقیق مدل از کاتالوگ پاستا |
با این تنظیمات، درخواست به پاستا ارسال میشود و احراز هویت با کلید پاستا انجام میگیرد. برای اجرای این نمونهها به کلید OpenAI نیاز ندارید. جزئیات اتصال در راهنمای API پاستا آمده است.
سازگاری با SDK به معنی پشتیبانی از تمام متدهای آن نیست. در این آموزش، روی درخواست متنی و پاسخ جریانی در مسیر Chat Completions تمرکز میکنیم.
پیش از شروع چه چیزهایی لازم دارید؟
برای ارسال اولین درخواست، این موارد را آماده کنید:
-
یک کلید API فعال در پاستا.
-
شناسه مدل انتخابی از کاتالوگ.
-
دسترسی کلید به همان مدل.
-
موجودی و سقف هزینه کافی برای درخواست.
-
محیط اجرای Python یا Node.js.
اگر هنوز مدل را انتخاب نکردهاید، برای خرید API هوش مصنوعی ابتدا قابلیتها و قیمت مدلها را مقایسه کنید. پیشنهاد ما این است که با یک کاربرد مشخص، مانند تولید توضیح محصول یا پاسخ به پرسش مشتری، شروع کنید تا ارزیابی نتیجه سادهتر باشد.
برای توسعه، کلید جدا بسازید
برای محیط توسعه و محصول اصلی، کلیدهای جداگانه در نظر بگیرید. هنگام ساخت کلید میتوانید تاریخ انقضا، سقف هزینه، نرخ درخواست و مدلهای مجاز را تعیین کنید. این تنظیمات در راهنمای شروع سریع پاستا توضیح داده شدهاند.
برای آزمایش اولیه، دسترسی کلید را به مدلهای موردنیاز محدود کنید. با این کار، مدیریت مصرف آزمایشها و لغو یا تعویض کلید توسعه سادهتر میشود.
شناسه مدل را دقیق وارد کنید
در درخواست API باید از شناسه مدل استفاده کنید؛ نام نمایشی مدل الزاماً همان شناسه نیست. مقدار را مستقیماً از کاتالوگ بردارید.
در نمونههای این مقاله، YOUR_MODEL_ID یک مقدار نمونه است. آن را با شناسه واقعی مدل انتخابی جایگزین کنید. همچنین از متغیر محیطی PAASTA_AI_MODEL استفاده میکنیم تا بتوانید مدل را بدون ویرایش فایل کد تغییر دهید.
مرحله اول: نصب OpenAI SDK در Python
ابتدا در پوشه پروژه یک محیط مجازی بسازید:
python -m venv .venv
در macOS و Linux آن را فعال کنید:
source .venv/bin/activate
در Windows PowerShell:
.\.venv\Scripts\Activate.ps1
سپس کتابخانه را نصب کنید:
python -m pip install openai
محیط مجازی، وابستگیهای پروژه را از پروژههای دیگر جدا نگه میدارد. اگر در سیستم شما Python با دستور python3 اجرا میشود، در دستورهای بالا از همان استفاده کنید.
مرحله دوم: تنظیم کلید API و مدل
کلید را داخل فایل برنامه ننویسید. در نمونههای این آموزش، کلید و شناسه مدل از متغیرهای محیطی خوانده میشوند.
در macOS و Linux:
export PAASTA_AI_KEY="YOUR_PAASTA_API_KEY"
export PAASTA_AI_MODEL="YOUR_MODEL_ID"
در Windows PowerShell:
$env:PAASTA_AI_KEY="YOUR_PAASTA_API_KEY"
$env:PAASTA_AI_MODEL="YOUR_MODEL_ID"
مقادیر نمونه را با کلید پاستا و شناسه مدل خود جایگزین کنید. سپس برنامه را در همان نشست ترمینال اجرا کنید؛ این دستورها متغیرها را برای همان نشست تنظیم میکنند.
در محیط عملیاتی، کلید را در بخش Secrets یا متغیرهای محیطی سرویس میزبانی نگه دارید. مطابق راهنمای نگهداری کلید پاستا، کلید نباید در مرورگر، Git، URL یا لاگ قرار بگیرد و باید از سمت سرور خوانده شود.
مرحله سوم: ارسال اولین درخواست با Python
فایلی با نام app.py بسازید و کد زیر را در آن قرار دهید:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["PAASTA_AI_KEY"],
base_url="https://console.paasta.cloud/api/ai/v1",
)
response = client.chat.completions.create(
model=os.environ["PAASTA_AI_MODEL"],
messages=[
{
"role": "user",
"content": (
"برای یک فروشگاه اینترنتی، "
"یک پیام خوشامدگویی کوتاه بنویس."
),
}
],
max_tokens=256,
)
print(response.choices[0].message.content)
اکنون فایل را اجرا کنید:
python app.py
در صورت موفقیت درخواست، متن پاسخ مدل در ترمینال نمایش داده میشود. این مثال بر پایه نمونه اتصال Python در مستندات پاستا نوشته شده و شناسه مدل نیز از متغیر محیطی خوانده میشود.
بخشهای اصلی کد چه کاری انجام میدهند؟
|
بخش |
کاربرد |
|
api_key |
کلید پاستا برای احراز هویت |
|
base_url |
مقصد ارسال درخواستها |
|
model |
شناسه مدل انتخابی |
|
messages |
پیامهای ورودی مدل |
|
max_tokens |
سقف خروجی درخواست در این نمونه |
|
message.content |
محتوای پاسخ متنی |
آدرس پایه را دقیقاً مطابق نمونه وارد کنید. نیازی نیست /chat/completions را به انتهای base_url اضافه کنید؛ متد client.chat.completions.create مسیر درخواست را تعیین میکند.