Text Models (LLM)openai
معرفی و مستندات مدل هوش مصنوعی gpt-4o-mini
مستندات مدل gpt-4o-mini ارائه شده توسط ای آی کار (AI-KAR)
معرفی و بررسی فنی
⚡ وضعیت پشتیبانی از زبان فارسی
این مدل از زبان فارسی به صورت متوسط پشتیبانی میکند. درک نسبتا خوبی از متون فارسی دارد اما ممکن است در تولید متون پیچیده یا تخصصی به زبان فارسی با مشکل مواجه شود.
مدل gpt-4o-mini از OpenAI، یک مدل هوش مصنوعی مقرون به صرفه است که برای ارائه قابلیتهای پیشرفته پردازش زبان طبیعی و چندوجهی طراحی شده است. هدف این مدل، در دسترس قرار دادن هوش مصنوعی با هزینه کمتر است، که به طور قابل توجهی دامنه کاربردهایی که میتوانند از فناوری هوش مصنوعی بهره ببرند را گسترش میدهد. این مدل برای انجام وظایف مختلفی از جمله پاسخ به سوالات، تولید متن، ترجمه زبان، خلاصه سازی متون، و تولید محتوای خلاقانه مناسب است. با توجه به طراحی بهینه، gpt-4o-mini میتواند در محیطهای مختلف، از جمله برنامههای کاربردی موبایل، وبسایتها، و سیستمهای تعاملی مورد استفاده قرار گیرد. این مدل با ارائه عملکردی قوی و کارآمد، به توسعهدهندگان و کسبوکارها کمک میکند تا راهحلهای هوشمندانه و نوآورانهای را با هزینه کمتری ایجاد کنند. یکی از ویژگیهای برجسته gpt-4o-mini، توانایی آن در پردازش و درک زبانهای مختلف است، که آن را به یک ابزار ارزشمند برای کاربردهای بینالمللی تبدیل میکند. همچنین، این مدل از قابلیتهای چندوجهی پشتیبانی میکند، به این معنی که میتواند ورودیهای مختلفی مانند متن، تصویر و صدا را پردازش کند و پاسخهای مناسبی ارائه دهد. این ویژگی به gpt-4o-mini امکان میدهد تا در برنامههای کاربردی متنوعی مانند تشخیص چهره، تحلیل احساسات، و تولید محتوای چندرسانهای مورد استفاده قرار گیرد. با توجه به معماری پیشرفته و الگوریتمهای بهینهسازی شده، gpt-4o-mini قادر است با سرعت بالا و دقت مناسب، پاسخهای مرتبط و مفیدی را ارائه دهد. این مدل به طور مداوم در حال بهبود و بهروزرسانی است تا با نیازهای روزافزون کاربران و تغییرات فناوری همگام باشد. در مجموع، gpt-4o-mini یک راهکار قدرتمند و مقرون به صرفه برای استفاده از هوش مصنوعی در برنامههای کاربردی مختلف است و به کاربران امکان میدهد تا با هزینه کمتر، از مزایای این فناوری بهرهمند شوند. این مدل به ویژه برای کسبوکارهای کوچک و متوسط که به دنبال راهحلهای هوشمندانه و کارآمد هستند، بسیار مناسب است.
مشخصات فنی (API References)
| پارامتر | نوع | توضیحات و مقادیر |
|---|---|---|
model | stringRequired | شناسه مدلی که برای تولید پاسخ استفاده میشود. مقادیر مجاز (کلیک برای کپی): |
messages | one of[]Required | لیستی از پیامها که مکالمه را تا به اینجا تشکیل میدهند. بسته به مدلی که استفاده میکنید، انواع مختلف پیام ( modalities ) مانند متن، اسناد (txt, pdf)، تصاویر و صدا پشتیبانی میشوند. |
max_completion_tokens | integer | حد بالایی برای تعداد توکنهایی که میتوان برای تکمیل تولید کرد، از جمله توکنهای خروجی قابل مشاهده و توکنهای استدلال. |
max_tokens | number | حداکثر تعداد توکنهایی که میتوان در تکمیل چت تولید کرد. این مقدار میتواند برای کنترل هزینههای متن تولید شده از طریق API استفاده شود. |
stream | boolean | اگر روی True تنظیم شود، دادههای پاسخ مدل به صورت جریانی با استفاده از رویدادهای ارسال شده توسط سرور به کلاینت ارسال میشوند. |
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 و پارامترها باید نتیجه یکسانی را برگردانند. |
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': 'gpt-4o-mini',
'messages': [
{
'role': 'user',
'content': 'Hello'
}
]
}
response = requests.post(url, headers=headers, data=json.dumps(data))
if response.status_code == 200:
print(json.dumps(response.json(), indent=2))
else:
print(f'Error: {response.status_code}')
print(response.text)نمونه پاسخ موفق (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
}
}
}