لم تتم ترجمة هذا المقال إلى هذه اللغة بعد؛ تشاهد النسخة الفارسية.
متوسطوصل کردن هر SDK یا کتابخونهی سازگار با OpenAI
الگوی کلی برای وصلکردن هر SDK یا کتابخونهای که فرمت OpenAI رو میفهمه — پایتون، Node، یا هر زبون دیگهای.
اگه api-quickstart رو با curl امتحان کردی و حالا میخوای همون کار رو از داخل کد پایتون، Node، یا هر
SDK دیگهای که با فرمت OpenAI کار میکنه انجام بدی — این مقاله برای توئه. تا آخرش، یه SDK رسمی
سازگار با OpenAI رو مستقیم به بنفش وصل میکنی، بدون اینکه چیزی از خود SDK رو دستکاری کنی.
قاعدهی کلی
هر SDK که رسماً از OpenAI پشتیبانی میکنه، یه راه برای override کردن base_url (یا اسم مشابهش) داره.
همونجا آدرس سرویس بنفش رو بذار، api_key رو هم کلید خودت بذار — همین. بقیهی SDK دقیقاً همونطوری
کار میکنه که با OpenAI کار میکرد.
هم آدرس و هم کلید رو از صفحهی «اتصال به ابزارها» بگیر — همیشه از همونجا، هیچوقت یه آدرس رو جایی هاردکد نکن؛ این آدرس بین محیطهای مختلف فرق میکنه.
پایتون (SDK رسمی openai)
from openai import OpenAI
client = OpenAI(
base_url="YOUR_SERVICE_URL",
api_key="YOUR_API_KEY",
)
response = client.chat.completions.create(
model="YOUR_MODEL_ID",
messages=[{"role": "user", "content": "سلام، خودت رو معرفی کن"}],
)
print(response.choices[0].message.content)
Node / TypeScript (SDK رسمی openai)
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "YOUR_SERVICE_URL",
apiKey: "YOUR_API_KEY",
});
const response = await client.chat.completions.create({
model: "YOUR_MODEL_ID",
messages: [{ role: "user", content: "سلام، خودت رو معرفی کن" }],
});
console.log(response.choices[0].message.content);
YOUR_MODEL_ID رو با شناسهی یکی از مدلهای فعال عوض کن — «auto» که تو داکیومنت خودِ OpenAI دیده
باشی، مخصوص چت خودِ بنفش تو مرورگره و اینجا کار نمیکنه. لیست زندهی مدلهای فعال:
- All Minilm L6
- All Mpnet Base
- Bge Base En V1.5
- Bge En Icl
- Bge Large En V1.5
- Bge M3
- Bge M3 Multi
- Claude Fable 5 — مع الاشتراك فقط — بلا سعر للدفع حسب الاستخدام
- Claude Haiku 4 5 — مع الاشتراك فقط — بلا سعر للدفع حسب الاستخدام
- Claude Opus 4 6 — مع الاشتراك فقط — بلا سعر للدفع حسب الاستخدام
- Claude Opus 4 7 — مع الاشتراك فقط — بلا سعر للدفع حسب الاستخدام
- Claude Opus 4 8 — مع الاشتراك فقط — بلا سعر للدفع حسب الاستخدام
- Claude Opus 5 — مع الاشتراك فقط — بلا سعر للدفع حسب الاستخدام
- Claude Sonnet 4 6 — مع الاشتراك فقط — بلا سعر للدفع حسب الاستخدام
- Claude Sonnet 5 — مع الاشتراك فقط — بلا سعر للدفع حسب الاستخدام
- Clip Vit B 32
- Deepseek — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Deepseek V4 Flash — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Deepseek V4 Pro — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- E5 Base
- E5 Large
- Embed Multilingual V3
- Gemini 2.5 Flash — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemini 2.5 Pro — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemini 3.1 Flash Lite — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemini 3.1 Pro — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemini 3.5 Flash — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 3 12B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 3 12B It — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 3 27B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 3 4B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 4 26B A4b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 4 31B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 4 31B It Ultra — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 4 31B Turbo — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gemma 4 E4b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Glm 4 7 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Glm 4 7 Flash — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Glm 4.6 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Glm 4.7 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Glm 5 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- GPT Oss 120B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- GPT Oss 120B 1 0 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- GPT Oss 120B Turbo — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- GPT Oss 120B Ultra — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- GPT Oss 20B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Gte Base
- Gte Large
- Hermes 3 Llama 3.1 405B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Hermes 3 Llama 3.1 70B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Hy3 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Inkling — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Kimi K2 5 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Kimi K2 Thinking — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Kimi K2.5 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Kimi K2.6 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Kimi K2.7 Code — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Kimi K3 — حوالي ۶٬۹۱۳ تومان لكل رسالة عادية
- L3 8B Lunaris Turbo — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- L3.1 70B Euryale V2.2 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Ling 3.0 Flash — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Llama 3.1 70B Turbo — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Llama 3.1 8B Turbo — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Llama 3.3 70B Turbo — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Llama 4 Maverick 17B 128E Fp8 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Llama 4 Scout 17B 16E — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Llama Nemotron Embed Vl 1B
- Llama3 70B Instruct — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Mimo V2.5 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Minimax M2.7 Turbo — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Minimax M3 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Mistral Nemo Instruct — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Mistral Small 24B Instruct — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Mistral Small 3.2 24B Instruct — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Multi Qa Mpnet Base Dot
- Multilingual E5 Large
- Muse Glimmer 30B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Mythomax L2 13B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Nemotron 3 Nano 30B A3b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Nova Micro — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Nova Pro — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Nvidia Nemotron 3 Super 120B A12b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Nvidia Nemotron 3 Ultra 550B A55b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Nvidia Nemotron 3.5 Lightning — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Paraphrase Minilm L6
- Phi 4 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen2.5 72B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 14B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 235B A22b Instruct — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 235B A22b Thinking — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 30B A3b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 32B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 Coder 480B A35b Turbo — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 Embedding 0.6B
- Qwen3 Embedding 4B
- Qwen3 Max — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 Max Thinking — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3 Vl 30B A3b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.5 122B A10b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.5 27B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.5 35B A3b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.5 397B A17b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.5 9B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.6 27B — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.6 35B A3b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.7 Max — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.8 2.4T A95b — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Qwen3.8 Max — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Seed 1.8 — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Seed 2.0 Code — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Seed 2.0 Mini — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Seed 2.0 Pro — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Step 3.7 Flash — حوالي ۴٬۶۰۹ تومان لكل رسالة عادية
- Text2vec Base Chinese
- Titan Embed Text V2
⚠️ این دو نمونه هنوز مستقیم روی SDKهای واقعی اجرا و تست نشدن. ساختارشون دقیقاً همون override استانداردیه که این SDKها مستند کردن، ولی قبل از قراردادنشون تو کد production خودت، یه بار محلی امتحانشون کن. اگه جواب نگرفتی، «رفع اشکال اتصال» رو ببین.
نکته برای هر SDK دیگه
اگه از یه زبون یا کتابخونهی دیگه استفاده میکنی که مستقیماً از OpenAI پشتیبانی نمیکنه ولی میگه «سازگار با OpenAI»، دنبال یکی از این دو الگو بگرد:
- یه پارامتر صریح مثل
base_url/baseURL/endpointموقع ساختن کلاینت. - یه متغیر محیطی مثل
OPENAI_BASE_URLکه SDK خودش میخونه.
اگه هیچکدوم رو نداره — یعنی آدرس OpenAI رو تو خودِ کتابخونه هاردکد کرده — نمیتونی وصلش کنی.
چی کار نمیکنه
- SDKهای رسمی providerهای دیگه (مثلاً SDK رسمی Anthropic) کار نمیکنن — اونها فرمت درخواست/پاسخ متفاوتی دارن که بنفش امروز پیاده نکرده.
- این مسیر (SDK مستقیم به gateway) هم به کیف پولت گیت شده — با یه سقف روی gateway، نه چک لحظهای مثل چت. جزئیاتش تو «کنترل مصرف و هزینه» هست.
- میتونی برای این SDK/پروژه یه کلید جدا بسازی (تا دهتا کلید فعال، هر کدوم با اسم و سقف مصرف مخصوص خودش) — از «اتصال به ابزارها».