fa ▾

مستندات API Mistral: راهنمای شروع سریع

کد موجود خود را با تعویض URL پایه و کلید API به LLM بدون سانسور ما مهاجرت دهید. این مستندات API mistral مراحل دقیق شروع ارسال درخواست‌ها را بدون وابستگی به ارائه‌دهنده خاص به شما نشان می‌دهد.

نصب SDK و تنظیم URL پایه

ابتدا SDK رسمی برای زبان مورد نظر خود را نصب کنید و آن را به نقطه پایانی ما اشاره دهید. URL پایه HTTPS://api.mistralapidoc.com/v1 است. این تغییر واحد تمام فراخوانی‌ها را به زیرساخت بدون سانسور ما هدایت می‌کند بدون اینکه منطق موجود شما را تغییر دهد. می‌توانید از هر کلاینت استانداردی که سازگاری OpenAI را پشتیبانی می‌کند استفاده کنید. راه‌اندازی در چند ثانیه انجام می‌شود و به فایل‌های پیکربندی پیچیده نیاز ندارد.

اطمینان حاصل کنید که کلید API منحصر به فرد خود را در هدر Authorization ارسال می‌کنید. سیستم ما این کلید را قبل از پردازش هر توکن با موجودی پیش‌پرداخت شما اعتبارسنجی می‌کند. این رویکرد تضمین می‌کند که شما تنها برای آنچه استفاده می‌کنید پرداخت می‌کنید. کلید خود را امن نگه دارید و اگر احتمال نفوذ وجود دارد، آن را تغییر دهید. کلید بلافاصله پس از ثبت‌نام از طریق Google یا ایمیل صادر می‌شود.

اولین درخواست خود را برای مدل uncensored انجام دهید

درخواست POST را به /v1/chat/completions ارسال کنید و شناسه مدل را روی "uncensored" تنظیم کنید. این مدل به محتوای بزرگسالان قانونی، داستان‌ها و موضوعات بحث‌برانگیز بدون رددهی‌های استاندارد پاسخ می‌دهد. این یک مدل با وزن باز است که برای پاسخ‌های مستقیم تنظیم شده است. نیازی به مشخص کردن شماره نسخه یا انتخاب بین ارائه‌دهندگان مختلف نیست. پاسخ متن را در فیلد content برمی‌گرداند.

curl https://api.mistralapidoc.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List all available models and their context windows"}]
  }'

بدنه درخواست شامل آرایه پیام‌های شما و پارامترهای اختیاری است. API ما فیلدهای اضافی را به راحتی نادیده می‌گیرد. اگر یک پرامپت ساده ارسال کنید، یک تکمیل مستقیم دریافت می‌کنید. از این برای بررسی عملکرد یکپارچه‌سازی خود پیش از افزودن منطق پیچیده استفاده کنید. مدل با بستر تا 100,000 توکن به‌طور کارآمد مدیریت می‌شود.

استریمینگ را فعال کنید و مصرف توکن را مدیریت کنید

stream را روی true تنظیم کنید تا توکن‌ها را از طریق رویدادهای Server-Sent دریافت کنید. این روش تأخیر ادراک‌شده را برای پاسخ‌های طولانی کاهش می‌دهد. آخرین قطعه در استریم شامل آمار کامل استفاده‌ی توکن برای آن درخواست است. می‌توانید این معیارها را برای ردیابی دقیق مصرف اعتبار پیش‌پرداخت خود ثبت کنید. استریم برای رابط‌های چت و برنامه‌های بلادرنگ ایده‌آل است.

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

پاسخ‌های ناقص را با انباشت دلتای محتوا مدیریت کنید. API ما تضمین می‌کند که تعداد کل توکن‌ها با مصرف واقعی مطابقت دارد. در صورت بروز خطا در حین استریم، بابت توکن‌های ناقص از شما هزینه دریافت نمی‌شود. این ویژگی تجربه کاربری روانی فراهم می‌کند و در عین حال هزینه‌ها را شفاف نگه می‌می‌دارد. در صورت قطع تولید توسط کاربر، می‌توانید استریم را زودتر متوقف کنید.

از فراخوانی تابع و حالت JSON استفاده کنید

یک آرایه tools ارسال کنید تا فراخوانی تابع فعال شود. مدل در صورت مناسب بودن، فراخوانی‌های ابزار ساختاریافته را خروجی می‌دهد. همچنین می‌توانید با تنظیم response_format روی json_object، حالت JSON را اجبار کنید. این تضمین می‌کند که خروجی JSON معتبری باشد که تجزیه آن در برنامه شما را ساده می‌کند. هر دو ویژگی با سینتکس استاندارد SDK OpenAI کار می‌کنند.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.mistralapidoc.com/v1", apiKey: process.env.API_KEY });

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);

اسکیمای تابع خود را با نام، توضیحات و پارامترها تعریف کنید. API نام تابع و آرگومان‌ها را در پاسخ بازمی‌گرداند. این به کد شما اجازه می‌دهد تا منطق خارجی را بر اساس تصمیم مدل اجرا کند. حالت JSON زمانی مفید است که به ساختارهای داده دقیق نیاز دارید. این ویژگی‌ها را برای جریان‌های کاری خودکار و مقاوم ترکیب کنید.

پارامترها: دما، top_p و Seed

دمای (temperature) را برای کنترل تصادفی‌سازی تنظیم کنید. مقادیر پایین‌تر پاسخ‌ها را قطعی‌تر می‌کنند. top_p نمونه‌گیری هسته را به محتمل‌ترین توکن‌ها محدود می‌کند. seed خروجی‌های قابل تکرار را برای اشکال‌زدایی تضمین می‌کند. این پارامترها کنترل دقیقی بر رفتار مدل به شما می‌دهند. از آن‌ها برای تنظیم تعادل بین خلاقیت و دقت استفاده کنید.

from openai import OpenAI

client = OpenAI(base_url="https://api.mistralapidoc.com/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)

presence_penalty و frequency_penalty را تنظیم کنید تا تکرار کاهش یابد. مدل از تمام پارامترهای استاندارد OpenAI پشتیبانی می‌کند. می‌توانید یک دنباله توقف (stop sequence) ارسال کنید تا تولید در نشانگرهای خاص متوقف شود. این کنترل‌ها به شما کمک می‌کنند تا فرمت خروجی مورد نیاز خود را دقیقاً دریافت کنید. با ترکیبات مختلف آزمایش کنید تا تنظیمات بهینه برای مورد استفاده خود پیدا کنید.

Limits, errors, and context window

API ما از پنجره زمینه ۱۰۰,۰۰۰ توکنی پشتیبانی می‌کند. حداکثر خروجی در هر درخواست ۱۶,۰۰۰ توکن است، یا ۲,۰۴۸ در صورت عدم تعیین max_tokens. شما به ۳۰۰ درخواست در دقیقه و ۸ درخواست همزمان به ازای هر کلید محدود هستید. بدنه درخواست باید کمتر از ۸ مگابایت باشد. این محدودیت‌ها مصرف منصفانه را برای همه مشتریان پیش‌پرداخت تضمین می‌کنند.

خطاهای HTTP 401 را با بررسی کلید API خود مدیریت کنید. خطای 402 نشان‌دهنده اعتبار پیش‌پرداخت ناکافی است. برای ادامه سرویس با ارز دیجیتال شارژ کنید. خطای 429 به معنای تجاوز از محدودیت نرخ است. پیش از تلاش مجدد کمی صبر کنید. سیستم ما از پرامپت‌ها برای آموزش استفاده نمی‌کند و حریم خصوصی داده‌های شما را حفظ می‌کند. خطاها و رد شدن‌ها رایگان هستند، بنابراین فقط برای تکمیل‌های موفق پرداخت می‌کنید.

پرسش‌های رایج

آیا این API رسمی Mistral است؟

خیر، این یک سرویس مستقل است که یک مدل بدون سانسور را میزبانی می‌کند. ما از همان پروتکل سازگار با OpenAI استفاده می‌کنیم اما زیرساخت خودمان را اجرا می‌کنیم. برای جزئیات خاص، مستندات فروشنده را بررسی کنید.

اگر خطای 402 دریافت کنم چه اتفاقی می‌افتد؟

خطای 402 به معنای تمام شدن موجودی پیش‌پرداخت شماست. می‌توانید با USDT یا USDC اعتبار اضافه کنید. اعتبار موجود شما منقضی نمی‌شود، بنابراین می‌توانید هر زمان که مایل بودید اعتبار بیشتری اضافه کنید.

آیا این API از تولید تصویر پشتیبانی می‌کند؟

خیر، ما تنها تکمیل متن را از طریق /v1/chat/completions ارائه می‌دهیم. از embedding، تولید تصویر، صدا یا ویدیو پشتیبانی نمی‌کنیم. بر پاسخ‌های متنی باکیفیت با مدل بدون سانسور خود تمرکز کنید.

کلید API شما منتظر

ثبت‌نام کنید، کلید را بردارید و URL پایه را به‌روز کنید. همین است.

با اعتبار آزمایشی امتحان کنید