Text Models (LLM)openai
معرفی و مستندات مدل هوش مصنوعی gpt-4
مستندات مدل gpt-4 ارائه شده توسط ای آی کار (AI-KAR)
معرفی و بررسی فنی
⚡ وضعیت پشتیبانی از زبان فارسی
این مدل از زبان فارسی به صورت متوسط پشتیبانی میکند و درک نسبتا خوبی از متون فارسی دارد، اما ممکن است در تولید متون پیچیده و ظریف فارسی با مشکل مواجه شود.
مدل gpt-4 یک جهش بزرگ در فناوری هوش مصنوعی مکالمهای است. این مدل با ارائه درک و تولید پیشرفتهتر زبان طبیعی، قادر به مدیریت گفتگوهای پیچیده و ظریف با انسجام و حساسیت متنی بیشتر است. gpt-4 به گونهای طراحی شده است که مکالمات شبیه به انسان را نزدیکتر از همیشه تقلید کند. این مدل میتواند در زمینههای مختلفی از جمله تولید متن خلاقانه، پاسخگویی به سوالات پیچیده، ترجمه زبانها، خلاصهسازی متون طولانی و حتی تولید کد کامپیوتری به کار رود. gpt-4 با بهرهگیری از حجم عظیمی از دادههای آموزشی، قادر است الگوهای زبانی را به خوبی درک کرده و پاسخهایی مرتبط و دقیق ارائه دهد. این مدل نه تنها در درک معنای کلمات، بلکه در درک مفهوم و هدف کلی یک متن نیز توانمند است. یکی از ویژگیهای برجسته gpt-4، توانایی آن در حفظ پیوستگی و انسجام در طول یک مکالمه طولانی است. این مدل میتواند اطلاعات قبلی را به خاطر بسپارد و از آنها برای پاسخگویی به سوالات بعدی استفاده کند. همچنین، gpt-4 قادر است لحن و سبک نوشتاری خود را با توجه به موضوع و مخاطب تنظیم کند. این مدل میتواند با لحنی رسمی یا غیررسمی، جدی یا شوخطبعانه، دوستانه یا حرفهای به سوالات پاسخ دهد. علاوه بر این، gpt-4 از قابلیتهای استدلال و حل مسئله نیز برخوردار است. این مدل میتواند با تحلیل اطلاعات موجود، به نتایج منطقی دست یابد و راهحلهایی برای مسائل پیچیده ارائه دهد. با این حال، لازم به ذکر است که gpt-4 هنوز یک هوش مصنوعی است و ممکن است در برخی موارد اشتباه کند یا پاسخهای نامناسب ارائه دهد. بنابراین، استفاده از این مدل باید با احتیاط و نظارت انسانی انجام شود. در مجموع، gpt-4 یک ابزار قدرتمند و کارآمد برای تولید متن، پاسخگویی به سوالات و انجام وظایف مختلف زبانی است. این مدل میتواند به افراد و سازمانها در زمینههای مختلفی از جمله آموزش، تحقیق، بازاریابی و خدمات مشتری کمک کند. ای آی کار (AI-KAR) با ارائه این مستندات، تلاش میکند تا کاربران را با قابلیتها و نحوه استفاده از gpt-4 آشنا سازد و امکان بهرهمندی از این فناوری پیشرفته را برای همگان فراهم آورد.
مشخصات فنی (API References)
| پارامتر | نوع | توضیحات و مقادیر |
|---|---|---|
model | stringRequired | مدل مورد استفاده برای تکمیل چت. مقدار این فیلد باید gpt-4 باشد. مقادیر مجاز (کلیک برای کپی): |
frequency_penalty | number | nullable | عددی بین -2.0 و 2.0. مقادیر مثبت، توکنهای جدید را بر اساس فراوانی موجودشان در متن جریمه میکنند، و احتمال تکرار عین به عین یک خط توسط مدل را کاهش میدهند. |
logit_bias | object | nullable | تغییر احتمال ظاهر شدن توکنهای مشخص شده در تکمیل. یک شی JSON را میپذیرد که توکنها (مشخص شده توسط ID توکنشان در توکنایزر) را به یک مقدار بایاس مرتبط از -100 تا 100 نگاشت میکند. از نظر ریاضی، بایاس به logits تولید شده توسط مدل قبل از نمونهبرداری اضافه میشود. اثر دقیق بر اساس مدل متفاوت خواهد بود، اما مقادیر بین -1 و 1 باید احتمال انتخاب را کاهش یا افزایش دهند؛ مقادیری مانند -100 یا 100 باید منجر به ممنوعیت یا انتخاب انحصاری توکن مربوطه شوند. |
logprobs | boolean | nullable | مشخص میکند که آیا احتمالات لگاریتمی توکنهای خروجی برگردانده شوند یا خیر. اگر True باشد، احتمالات لگاریتمی هر توکن خروجی برگردانده شده در محتوای پیام را برمیگرداند. |
top_logprobs | number | nullable | یک عدد صحیح بین 0 و 20 که تعداد محتملترین توکنها را برای بازگشت در هر موقعیت توکن مشخص میکند، هر کدام با یک احتمال لگاریتمی مرتبط. اگر این پارامتر استفاده شود، logprobs باید روی True تنظیم شود. |
max_tokens | number | حداکثر تعداد توکنهایی که میتوان در تکمیل چت تولید کرد. این مقدار میتواند برای کنترل هزینههای متن تولید شده از طریق API استفاده شود. |
max_completion_tokens | integer | حد بالایی برای تعداد توکنهایی که میتوان برای یک تکمیل تولید کرد، از جمله توکنهای خروجی قابل مشاهده و توکنهای استدلال. |
n | integer | nullable | تعداد انتخابهای تکمیل چت که برای هر پیام ورودی تولید میشود. توجه داشته باشید که هزینه شما بر اساس تعداد توکنهای تولید شده در تمام انتخابها محاسبه میشود. مقدار n را 1 نگه دارید تا هزینهها به حداقل برسد. |
prediction | object | پیکربندی برای یک خروجی پیشبینیشده، که میتواند زمان پاسخ را در زمانی که بخشهای بزرگی از پاسخ مدل از قبل مشخص هستند، بسیار بهبود بخشد. |
presence_penalty | number | nullable | مقادیر مثبت، توکنهای جدید را بر اساس اینکه آیا در متن تا کنون ظاهر شدهاند جریمه میکنند، و احتمال صحبت کردن مدل در مورد موضوعات جدید را افزایش میدهند. |
seed | integer | این ویژگی در حالت بتا است. اگر مشخص شود، سیستم ما تمام تلاش خود را میکند تا به صورت قطعی نمونهبرداری کند، به طوری که درخواستهای مکرر با همان seed و پارامترها باید نتیجه یکسانی را برگردانند. |
messages | arrayRequired | لیستی از پیامها که مکالمه را تا کنون تشکیل میدهند. بسته به مدلی که استفاده میکنید، انواع پیامهای مختلف ( modalities ) مانند متن، اسناد (txt, pdf)، تصاویر و صدا پشتیبانی میشوند. |
stream | boolean | اگر روی True تنظیم شود، دادههای پاسخ مدل به صورت جریانی با استفاده از رویدادهای ارسال شده از سرور به کلاینت ارسال میشوند. |
stream_options | object | تنظیمات مربوط به استریم کردن داده ها. |
top_p | number | جایگزینی برای نمونهبرداری با دما، به نام نمونهبرداری هستهای، که در آن مدل نتایج توکنها را با جرم احتمال top_p در نظر میگیرد. بنابراین 0.1 به این معنی است که فقط توکنهایی که شامل 10٪ جرم احتمال برتر هستند در نظر گرفته میشوند. ما به طور کلی توصیه میکنیم این یا دما را تغییر دهید اما نه هر دو. |
temperature | number | چه دمای نمونهبرداری استفاده شود. مقادیر بالاتر مانند 0.8 خروجی را تصادفیتر میکنند، در حالی که مقادیر پایینتر مانند 0.2 آن را متمرکزتر و قطعیتر میکنند. ما به طور کلی توصیه میکنیم این یا top_p را تغییر دهید اما نه هر دو. |
stop | string | string[] | any | حداکثر 4 دنباله که API تولید توکنهای بیشتر را متوقف میکند. متن برگشتی شامل دنباله توقف نخواهد بود. |
tools | object[] | لیستی از ابزارهایی که مدل ممکن است فراخوانی کند. در حال حاضر، فقط توابع به عنوان یک ابزار پشتیبانی میشوند. از این برای ارائه لیستی از توابعی استفاده کنید که مدل ممکن است ورودیهای JSON را برای آنها تولید کند. حداکثر 128 تابع پشتیبانی میشود. |
tool_choice | string | object | کنترل میکند که کدام ابزار (در صورت وجود) توسط مدل فراخوانی شود. none به این معنی است که مدل هیچ ابزاری را فراخوانی نمیکند و در عوض یک پیام تولید میکند. auto به این معنی است که مدل میتواند بین تولید یک پیام یا فراخوانی یک یا چند ابزار انتخاب کند. required به این معنی است که مدل باید یک یا چند ابزار را فراخوانی کند. تعیین یک ابزار خاص از طریق {"type": "function", "function": {"name": "my_function"}} مدل را مجبور میکند تا آن ابزار را فراخوانی کند. none مقدار پیشفرض است زمانی که هیچ ابزاری وجود نداشته باشد. auto مقدار پیشفرض است اگر ابزارها وجود داشته باشند. مقادیر مجاز (کلیک برای کپی): |
parallel_tool_calls | boolean | مشخص میکند که آیا فراخوانی موازی توابع در طول استفاده از ابزار فعال شود یا خیر. |
reasoning_effort | string | تلاش برای استدلال را برای مدلهای استدلال محدود میکند. مقادیر پشتیبانی شده در حال حاضر low، medium و high هستند. کاهش تلاش استدلال میتواند منجر به پاسخهای سریعتر و توکنهای کمتری شود که در استدلال در یک پاسخ استفاده میشوند. مقادیر مجاز (کلیک برای کپی): |
response_format | object | یک شیء که فرمتی را مشخص میکند که مدل باید خروجی دهد. |
audio | object | nullable | پارامترها برای خروجی صدا. در صورت درخواست خروجی صدا با modalities: ["audio"] مورد نیاز است. |
modalities | string[] | nullable | انواع خروجی که می خواهید مدل تولید کند. اکثر مدل ها قادر به تولید متن هستند که مقدار پیش فرض است: ["text"] مدل gpt-4o-audio-preview همچنین می تواند برای تولید صدا استفاده شود. برای درخواست از این مدل برای تولید پاسخ های متنی و صوتی، می توانید از: ["text", "audio"] استفاده کنید. |
web_search_options | object | این ابزار وب را برای نتایج مرتبط برای استفاده در پاسخ جستجو می کند. |
نمونه کدهای درخواست
نکته مهم برای توسعهدهندگان:
برای احراز هویت، حتما کلید 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': 'gpt-4',
'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
}
}
}