Text Models (LLM)openai

معرفی و مستندات مدل هوش مصنوعی gpt-4.1

مستندات مدل gpt-4.1 ارائه شده توسط ای ای کار (AI-KAR)

معرفی و بررسی فنی

⚡ وضعیت پشتیبانی از زبان فارسی

این مدل از زبان فارسی به صورت متوسط پشتیبانی می‌کند. درک مطلب فارسی قابل قبول است اما در تولید متن فارسی ممکن است نیاز به ویرایش وجود داشته باشد.

مدل gpt-4.1 از خانواده مدل‌های GPT-4 شرکت OpenAI، یک مدل زبانی بزرگ (LLM) پیشرفته است که برای انجام طیف گسترده‌ای از وظایف پردازش زبان طبیعی (NLP) طراحی شده است. این مدل با بهره‌گیری از معماری ترانسفورمر، قادر است متون را درک، تولید و ترجمه کند، به سوالات پاسخ دهد، خلاصه‌سازی انجام دهد و محتوای خلاقانه تولید کند. مدل gpt-4.1 نسبت به مدل‌های قبلی خود، بهبودهای چشمگیری در زمینه‌های مختلف از جمله درک زبان، استدلال، کدنویسی و پیروی از دستورالعمل‌ها داشته است. این مدل با داشتن پنجره متنی بزرگتر (تا 1 میلیون توکن)، قادر است اطلاعات بیشتری را در حافظه خود نگه دارد و در نتیجه، پاسخ‌های دقیق‌تر و مرتبط‌تری ارائه دهد. این قابلیت به ویژه در مواردی که نیاز به پردازش متون طولانی و پیچیده است، بسیار حائز اهمیت است. مدل gpt-4.1 با دانش بروز شده تا ژوئن 2024، اطلاعات جدیدتری را در اختیار دارد و می‌تواند به سوالات مربوط به رویدادها و تحولات اخیر پاسخ دهد. این مدل برای کاربردهای مختلفی از جمله توسعه چت‌بات‌ها، تولید محتوا، ترجمه ماشینی، خلاصه‌سازی متون، پاسخ به سوالات، و تحلیل احساسات مناسب است. همچنین، gpt-4.1 در زمینه کدنویسی نیز پیشرفت‌های قابل توجهی داشته است و می‌تواند به توسعه‌دهندگان در نوشتن، اشکال‌زدایی و مستندسازی کد کمک کند. این مدل از زبان‌های برنامه‌نویسی مختلفی پشتیبانی می‌کند و می‌تواند کد را در قالب‌های مختلف تولید کند. ای ای کار (AI-KAR) با ارائه این مدل، امکان دسترسی به پیشرفته‌ترین فناوری‌های هوش مصنوعی را برای کاربران فراهم می‌کند و به آن‌ها کمک می‌کند تا در زمینه‌های مختلف، بهره‌وری خود را افزایش دهند و نوآوری‌های جدیدی را خلق کنند. این مدل با ارائه API قدرتمند، به توسعه‌دهندگان اجازه می‌دهد تا به راحتی آن را در برنامه‌ها و سرویس‌های خود ادغام کنند. با استفاده از gpt-4.1، می‌توانید به سوالات پیچیده پاسخ دهید، محتوای خلاقانه تولید کنید، کد بنویسید، و بسیاری از وظایف دیگر را به طور خودکار انجام دهید. این مدل یک ابزار قدرتمند برای هر کسی است که به دنبال استفاده از هوش مصنوعی برای حل مشکلات و ایجاد فرصت‌های جدید است.

مشخصات فنی (API References)

پارامترنوعتوضیحات و مقادیر
model
stringRequired
شناسه مدل مورد استفاده برای تولید پاسخ. مقدار این فیلد باید 'openai/gpt-4.1-2025-04-14' باشد.
مقادیر مجاز (کلیک برای کپی):
messages
one of[]Required
لیستی از پیام‌ها که مکالمه را تا به اینجا تشکیل می‌دهند. بسته به مدلی که استفاده می‌کنید، انواع مختلفی از پیام‌ها (modalities) مانند متن، اسناد (txt, pdf)، تصاویر و صدا پشتیبانی می‌شوند.
max_completion_tokens
integer
حد بالایی برای تعداد توکن‌هایی که می‌توان برای یک تکمیل تولید کرد، از جمله توکن‌های خروجی قابل مشاهده و توکن‌های استدلال. حداقل مقدار: 1
max_tokens
number
حداکثر تعداد توکن‌هایی که می‌توان در تکمیل چت تولید کرد. این مقدار می‌تواند برای کنترل هزینه‌های متن تولید شده از طریق API استفاده شود. حداقل مقدار: 1
stream
boolean
اگر روی True تنظیم شود، داده‌های پاسخ مدل با استفاده از رویدادهای ارسال شده از سرور (server-sent events) به صورت جریانی به کلاینت ارسال می‌شوند. مقدار پیش‌فرض: false
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 | nullable
تعداد انتخاب‌های تکمیل چت که برای هر پیام ورودی باید تولید شود. توجه داشته باشید که هزینه بر اساس تعداد توکن‌های تولید شده در تمام انتخاب‌ها محاسبه می‌شود. مقدار n را 1 نگه دارید تا هزینه‌ها به حداقل برسد.
stop
any of
حداکثر 4 دنباله که API تولید توکن‌های بیشتر را متوقف می‌کند. متن برگشتی شامل دنباله توقف نخواهد بود.
logprobs
boolean | nullable
تعیین اینکه آیا احتمالات لگاریتمی توکن‌های خروجی برگردانده شوند یا خیر. اگر True باشد، احتمالات لگاریتمی هر توکن خروجی که در محتوای پیام برگردانده شده است را برمی‌گرداند.
top_logprobs
number | nullable
یک عدد صحیح بین 0 و 20 که تعداد محتمل‌ترین توکن‌ها را برای بازگشت در هر موقعیت توکن مشخص می‌کند، که هر کدام دارای یک احتمال لگاریتمی مرتبط هستند. اگر این پارامتر استفاده شود، logprobs باید روی True تنظیم شود.
logit_bias
object | nullable
احتمال ظاهر شدن توکن‌های مشخص شده در تکمیل را تغییر می‌دهد. یک شی JSON را می‌پذیرد که توکن‌ها (مشخص شده توسط شناسه توکن آنها در توکن‌ساز) را به یک مقدار بایاس مرتبط از -100 تا 100 نگاشت می‌کند. از نظر ریاضی، بایاس به logits تولید شده توسط مدل قبل از نمونه‌برداری اضافه می‌شود. اثر دقیق برای هر مدل متفاوت خواهد بود، اما مقادیر بین -1 و 1 باید احتمال انتخاب را کاهش یا افزایش دهند؛ مقادیری مانند -100 یا 100 باید منجر به ممنوعیت یا انتخاب انحصاری توکن مربوطه شوند.
frequency_penalty
number | nullable
عددی بین -2.0 و 2.0. مقادیر مثبت، توکن‌های جدید را بر اساس فراوانی موجود آنها در متن تا به حال جریمه می‌کنند، و احتمال تکرار عین به عین یک خط توسط مدل را کاهش می‌دهند.
prediction
object
پیکربندی برای یک خروجی پیش‌بینی‌شده، که می‌تواند زمان پاسخ را در زمانی که بخش‌های بزرگی از پاسخ مدل از قبل مشخص هستند، تا حد زیادی بهبود بخشد.
presence_penalty
number | nullable
مقادیر مثبت، توکن‌های جدید را بر اساس اینکه آیا در متن تا به حال ظاهر شده‌اند جریمه می‌کنند، و احتمال صحبت کردن مدل در مورد موضوعات جدید را افزایش می‌دهند.
seed
integer
این ویژگی در حالت بتا است. اگر مشخص شود، سیستم ما تمام تلاش خود را می‌کند تا به طور قطعی نمونه‌برداری کند، به طوری که درخواست‌های مکرر با همان seed و پارامترها باید نتیجه یکسانی را برگردانند. حداقل مقدار: 1
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-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
    }
  }
}