Text Models (LLM)openai
معرفی و مستندات مدل هوش مصنوعی gpt-4.1-nano
مستندات مدل gpt-4.1-nano ارائه شده توسط ای آی کار (AI-KAR)
معرفی و بررسی فنی
⚡ وضعیت پشتیبانی از زبان فارسی
این مدل از زبان فارسی به صورت متوسط پشتیبانی میکند. درک و تولید متون فارسی در سطح قابل قبولی انجام میشود، اما ممکن است در مواجهه با اصطلاحات تخصصی یا ساختارهای پیچیده، دقت آن کاهش یابد.
مدل gpt-4.1-nano از خانواده GPT-4.1، یک مدل زبانی بزرگ (LLM) است که توسط OpenAI توسعه یافته و از طریق ای آی کار (AI-KAR) در دسترس قرار گرفته است. این مدل به طور خاص برای ارائه سرعت، مقرون به صرفه بودن و کارایی بالا در پردازش زبان طبیعی طراحی شده است. gpt-4.1-nano با داشتن پنجره متنی بزرگ (1 میلیون توکن)، قادر است حجم وسیعی از اطلاعات را درک و پردازش کند، که آن را برای کاربردهایی که نیاز به درک متن طولانی دارند، ایدهآل میسازد. این مدل در مقایسه با مدلهای قبلی مانند GPT-4o mini، عملکرد بهتری در زمینههای مختلف از جمله کدنویسی و پیروی از دستورالعملها ارائه میدهد. دانش این مدل تا ژوئن 2024 بهروزرسانی شده است.
کاربردهای کلیدی gpt-4.1-nano شامل موارد زیر است:
1. **تکمیل خودکار (Autocomplete):** این مدل میتواند به سرعت و با دقت بالا، عبارات و جملات را تکمیل کند، که برای بهبود تجربه کاربری در برنامههای مختلف مانند ویرایشگرهای متن و موتورهای جستجو بسیار مفید است.
2. **دستهبندی (Classification):** gpt-4.1-nano قادر است متون را بر اساس موضوع، لحن یا سایر ویژگیها دستهبندی کند. این قابلیت برای سازماندهی دادهها، فیلتر کردن اطلاعات و تحلیل احساسات (Sentiment Analysis) کاربرد دارد.
3. **خلاصه سازی (Summarization):** با توجه به توانایی درک متون طولانی، این مدل میتواند خلاصههای دقیقی از مقالات، گزارشها و سایر اسناد ارائه دهد.
4. **پاسخ به سوالات (Question Answering):** gpt-4.1-nano میتواند به سوالات مطرح شده در مورد یک متن پاسخ دهد، که برای ایجاد سیستمهای پشتیبانی مشتری و دستیارهای مجازی بسیار کارآمد است.
5. **تولید محتوا (Content Generation):** این مدل میتواند متون جدیدی را بر اساس دستورالعملها و الگوهای مشخص تولید کند، که برای ایجاد محتوای تبلیغاتی، مقالات وبلاگ و سایر انواع محتوا کاربرد دارد.
6. **کدنویسی (Coding):** gpt-4.1-nano در زمینه کدنویسی نیز عملکرد بسیار خوبی دارد و میتواند کدها را تولید، تصحیح و بهینهسازی کند.
برای استفاده از این مدل، کاربران باید یک حساب کاربری در ای آی کار (AI-KAR) ایجاد کرده و یک کلید API دریافت کنند. سپس میتوانند با استفاده از API، درخواستهای خود را به مدل ارسال کرده و پاسخها را دریافت کنند. ای آی کار (AI-KAR) مستندات کاملی را برای استفاده از API ارائه میدهد که شامل نمونه کدها در زبانهای مختلف برنامهنویسی مانند Python، JavaScript، cURL و HTTP است. این مستندات به کاربران کمک میکند تا به راحتی با نحوه استفاده از مدل آشنا شوند و آن را در برنامههای خود ادغام کنند.
مشخصات فنی (API References)
| پارامتر | نوع | توضیحات و مقادیر |
|---|---|---|
model | stringRequired | شناسه مدل مورد استفاده برای تولید پاسخ. مقدار این فیلد باید `openai/gpt-4.1-nano-2025-04-14` باشد. مقادیر مجاز (کلیک برای کپی): |
messages | one of[]Required | لیستی از پیامها که مکالمه را تا این لحظه تشکیل میدهند. بسته به مدلی که استفاده میکنید، انواع مختلف پیام ( modalities ) مانند متن، اسناد ( txt, pdf )، تصاویر و صدا پشتیبانی میشوند. |
max_completion_tokens | integer | حد بالایی برای تعداد توکنهایی که میتوان برای تکمیل تولید کرد، از جمله توکنهای خروجی قابل مشاهده و توکنهای استدلال. |
max_tokens | number | حداکثر تعداد توکنهایی که میتوان در تکمیل چت تولید کرد. این مقدار میتواند برای کنترل هزینههای متن تولید شده از طریق API استفاده شود. |
stream | boolean | اگر روی True تنظیم شود، دادههای پاسخ مدل با استفاده از رویدادهای ارسال شده توسط سرور (server-sent events) به صورت جریانی به کلاینت ارسال میشوند. مقادیر مجاز (کلیک برای کپی): |
stream_options | object | تنظیمات مربوط به جریان داده. |
tools | object[] | لیستی از ابزارهایی که مدل ممکن است فراخوانی کند. در حال حاضر، فقط توابع به عنوان ابزار پشتیبانی میشوند. از این برای ارائه لیستی از توابعی استفاده کنید که مدل ممکن است ورودیهای JSON را برای آنها تولید کند. حداکثر 128 تابع پشتیبانی میشود. |
tool_choice | any of | کنترل میکند که کدام ابزار (در صورت وجود) توسط مدل فراخوانی شود. `none` به این معنی است که مدل هیچ ابزاری را فراخوانی نمیکند و به جای آن یک پیام تولید میکند. `auto` به این معنی است که مدل میتواند بین تولید یک پیام یا فراخوانی یک یا چند ابزار انتخاب کند. `required` به این معنی است که مدل باید یک یا چند ابزار را فراخوانی کند. تعیین یک ابزار خاص از طریق `{"type": "function", "function": {"name": "my_function"}}` مدل را مجبور میکند تا آن ابزار را فراخوانی کند. `none` مقدار پیشفرض است زمانی که هیچ ابزاری وجود نداشته باشد. `auto` مقدار پیشفرض است اگر ابزارها وجود داشته باشند. مقادیر مجاز (کلیک برای کپی): |
parallel_tool_calls | boolean | تعیین اینکه آیا فراخوانی موازی توابع در هنگام استفاده از ابزار فعال شود یا خیر. |
n | integer | تعداد انتخابهای تکمیل چت که برای هر پیام ورودی باید تولید شود. توجه داشته باشید که هزینه شما بر اساس تعداد توکنهای تولید شده در تمام انتخابها محاسبه میشود. مقدار `n` را روی 1 نگه دارید تا هزینهها به حداقل برسد. |
stop | any of | حداکثر 4 دنباله که API تولید توکنهای بیشتر را در آن متوقف میکند. متن برگشتی شامل دنباله توقف نخواهد بود. |
logprobs | boolean | تعیین اینکه آیا احتمال لگاریتمی توکنهای خروجی برگردانده شود یا خیر. اگر True باشد، احتمال لگاریتمی هر توکن خروجی که در محتوای پیام برگردانده شده است را برمیگرداند. |
top_logprobs | number | یک عدد صحیح بین 0 و 20 که تعداد محتملترین توکنها را برای بازگشت در هر موقعیت توکن مشخص میکند، هر کدام با یک احتمال لگاریتمی مرتبط. اگر این پارامتر استفاده شود، logprobs باید روی True تنظیم شود. |
logit_bias | object | احتمال ظاهر شدن توکنهای مشخص شده در تکمیل را تغییر میدهد. یک شی JSON را میپذیرد که توکنها (مشخص شده توسط شناسه توکن آنها در توکنساز) را به یک مقدار بایاس مرتبط از -100 تا 100 نگاشت میکند. از نظر ریاضی، بایاس به logits تولید شده توسط مدل قبل از نمونهبرداری اضافه میشود. تأثیر دقیق برای هر مدل متفاوت خواهد بود، اما مقادیر بین -1 و 1 باید احتمال انتخاب را کاهش یا افزایش دهند. مقادیری مانند -100 یا 100 باید منجر به ممنوعیت یا انتخاب انحصاری توکن مربوطه شوند. |
frequency_penalty | number | عدد بین -2.0 و 2.0. مقادیر مثبت توکنهای جدید را بر اساس فراوانی موجود آنها در متن تا کنون جریمه میکنند و احتمال تکرار عین به عین همان خط توسط مدل را کاهش میدهند. |
prediction | object | پیکربندی برای یک خروجی پیشبینیشده، که میتواند زمان پاسخ را در زمانی که بخشهای بزرگی از پاسخ مدل از قبل مشخص هستند، تا حد زیادی بهبود بخشد. |
presence_penalty | number | مقادیر مثبت توکنهای جدید را بر اساس اینکه آیا در متن تا کنون ظاهر شدهاند جریمه میکنند و احتمال صحبت کردن مدل در مورد موضوعات جدید را افزایش میدهند. |
seed | integer | این ویژگی در نسخه بتا است. اگر مشخص شود، سیستم ما تمام تلاش خود را میکند تا به طور قطعی نمونهبرداری کند، به طوری که درخواستهای مکرر با همان seed و پارامترها باید نتیجه یکسانی را برگردانند. |
response_format | one of | یک شی که فرمتی را که مدل باید خروجی دهد مشخص میکند. |
temperature | number | از چه دمای نمونهبرداری استفاده شود. مقادیر بالاتر مانند 0.8 خروجی را تصادفیتر میکنند، در حالی که مقادیر پایینتر مانند 0.2 آن را متمرکزتر و قطعیتر میکنند. ما به طور کلی توصیه میکنیم این یا top_p را تغییر دهید، اما نه هر دو را. |
top_p | number | جایگزینی برای نمونهبرداری با دما، به نام نمونهبرداری هستهای، که در آن مدل نتایج توکنها را با جرم احتمال top_p در نظر میگیرد. بنابراین 0.1 به این معنی است که فقط توکنهایی در نظر گرفته میشوند که 10٪ جرم احتمال برتر را تشکیل میدهند. ما به طور کلی توصیه میکنیم این یا دما را تغییر دهید، اما نه هر دو را. |
نمونه کدهای درخواست
نکته مهم برای توسعهدهندگان:
برای احراز هویت، حتما کلید API خود را جایگزین YOUR_API_KEY کنید. هدر Authorization الزامی است.
import requests
import json
url = 'https://api.ai-kar.com/v1/chat/completions'
headers = {
'Authorization': 'Bearer <YOUR_AI-KARAPI_KEY>',
'Content-Type': 'application/json'
}
data = {
'model': 'openai/gpt-4.1-nano-2025-04-14',
'messages': [
{
'role': 'user',
'content': 'Hello'
}
]
}
response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.json())نمونه پاسخ موفق (JSON)
RESPONSE (200 OK)
{
"id": "text",
"object": "text",
"created": 1,
"choices": [
{
"index": 1,
"message": {
"role": "text",
"content": "text",
"refusal": null,
"annotations": [
{
"type": "text",
"url_citation": {
"end_index": 1,
"start_index": 1,
"title": "text",
"url": "text"
}
}
],
"audio": {
"id": "text",
"data": "text",
"transcript": "text",
"expires_at": 1
},
"tool_calls": [
{
"id": "text",
"type": "text",
"function": {
"arguments": "text",
"name": "text"
}
}
]
},
"finish_reason": "stop",
"logprobs": {
"content": [
{
"bytes": [
1
],
"logprob": 1,
"token": "text",
"top_logprobs": [
{
"bytes": [
1
],
"logprob": 1,
"token": "text"
}
]
}
],
"refusal": []
}
}
],
"model": "text",
"usage": {
"prompt_tokens": 1,
"completion_tokens": 1,
"total_tokens": 1,
"completion_tokens_details": {
"accepted_prediction_tokens": 1,
"audio_tokens": 1,
"reasoning_tokens": 1,
"rejected_prediction_tokens": 1
},
"prompt_tokens_details": {
"audio_tokens": 1,
"cached_tokens": 1
}
}
}