وصل کردن هر 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/پروژه یه کلید جدا بسازی (تا دهتا کلید فعال، هر کدوم با اسم و سقف مصرف مخصوص خودش) — از «اتصال به ابزارها».