Text Models (LLM)nvidia
معرفی و مستندات مدل هوش مصنوعی nemotron-nano-9b-v2
مستندات مدل nemotron-nano-9b-v2 از nvidia، ارائه شده توسط ای آی کار (AI-KAR).
معرفی و بررسی فنی
⚡ وضعیت پشتیبانی از زبان فارسی
این مدل از زبان فارسی به صورت متوسط پشتیبانی میکند. برای دریافت بهترین نتیجه، استفاده از پرامپتهای واضح و دقیق توصیه میشود.
مدل nemotron-nano-9b-v2 از nvidia یک مدل یکپارچه است که برای انجام وظایف استدلالی و غیر استدلالی طراحی شده است. این مدل ورودیهای کاربر را با تولید یک ردیابی استدلالی پردازش میکند و سپس پاسخ نهایی را ارائه میدهد. رفتار استدلالی را میتوان از طریق سیستم پرامپت تنظیم کرد - به مدل اجازه میدهد تا مراحل استدلالی میانی خود را نشان دهد یا مستقیماً با نتیجه نهایی پاسخ دهد. این مدل قابلیتهای قوی در درک و خلاصه سازی اسناد ارائه میدهد. به طور خلاصه، این مدل با دریافت متن، ابتدا یک زنجیره استدلالی تولید میکند که شامل مراحل منطقی برای رسیدن به پاسخ است. سپس، با استفاده از این زنجیره استدلالی، پاسخ نهایی را تولید میکند. این فرآیند به مدل کمک میکند تا پاسخهای دقیقتر و مرتبطتری ارائه دهد. یکی از ویژگیهای برجسته این مدل، قابلیت تنظیم رفتار استدلالی آن است. با استفاده از سیستم پرامپت، میتوان تعیین کرد که مدل مراحل استدلالی خود را به کاربر نشان دهد یا فقط پاسخ نهایی را ارائه کند. این ویژگی به کاربران امکان میدهد تا نحوه تعامل مدل با آنها را کنترل کنند و تجربه کاربری بهتری داشته باشند. علاوه بر این، مدل nemotron-nano-9b-v2 دارای قابلیتهای قوی در درک و خلاصه سازی اسناد است. این مدل میتواند به طور موثر اسناد متنی را تحلیل کرده و خلاصههای دقیقی از آنها ارائه دهد. این ویژگی برای کاربرانی که نیاز به پردازش حجم زیادی از اطلاعات متنی دارند، بسیار مفید است. در مجموع، مدل nemotron-nano-9b-v2 یک ابزار قدرتمند و انعطافپذیر است که میتواند در طیف گستردهای از کاربردها مورد استفاده قرار گیرد. از جمله این کاربردها میتوان به پاسخگویی به سوالات، تولید متن، خلاصه سازی اسناد و ترجمه زبان اشاره کرد. با توجه به قابلیتهای استدلالی و درک بالای این مدل، میتوان انتظار داشت که در آینده نقش مهمی در توسعه هوش مصنوعی ایفا کند. این مدل به خوبی میتواند درک و خلاصه سازی اسناد را انجام دهد و برای کارهایی که نیاز به استدلال دارند مناسب است.
مشخصات فنی (API References)
| پارامتر | نوع | توضیحات و مقادیر |
|---|---|---|
model | stringRequired | نام مدلی که برای تولید پاسخ استفاده میشود. مقدار این پارامتر باید `nvidia/nemotron-nano-9b-v2` باشد. مقادیر مجاز (کلیک برای کپی): |
messages | one of[]Required | لیستی از پیامها که مکالمه را تا کنون تشکیل میدهند. بسته به مدلی که استفاده میکنید، انواع مختلف پیام (مودالیتهها) مانند متن، اسناد (txt، pdf)، تصاویر و صدا پشتیبانی میشوند. |
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 | تعیین اینکه آیا فراخوانی موازی تابع در حین استفاده از ابزار فعال شود یا خیر. |
temperature | number | از چه دمای نمونهبرداری استفاده شود. مقادیر بالاتر مانند 0.8 خروجی را تصادفیتر میکنند، در حالی که مقادیر پایینتر مانند 0.2 آن را متمرکزتر و قطعیتر میکنند. ما عموماً توصیه میکنیم این یا top_p را تغییر دهید، اما نه هر دو را. |
top_p | number | جایگزینی برای نمونهبرداری با دما، به نام نمونهبرداری هستهای، که در آن مدل نتایج توکنها را با جرم احتمال top_p در نظر میگیرد. بنابراین 0.1 به این معنی است که فقط توکنهایی که 10٪ جرم احتمال برتر را تشکیل میدهند در نظر گرفته میشوند. ما عموماً توصیه میکنیم این یا دما را تغییر دهید، اما نه هر دو را. |
stop | any of | حداکثر 4 دنباله که API تولید توکنهای بیشتر را متوقف میکند. متن برگشتی شامل دنباله توقف نخواهد بود. |
frequency_penalty | number | عدد بین -2.0 و 2.0. مقادیر مثبت، توکنهای جدید را بر اساس فراوانی موجود آنها در متن تا کنون جریمه میکنند، و احتمال تکرار عین به عین همان خط توسط مدل را کاهش میدهند. |
prediction | object | پیکربندی برای یک خروجی پیشبینیشده، که میتواند زمان پاسخ را در زمانی که بخشهای بزرگی از پاسخ مدل از قبل مشخص هستند، تا حد زیادی بهبود بخشد. |
seed | integer | این ویژگی در نسخه بتا است. اگر مشخص شود، سیستم ما تمام تلاش خود را میکند تا به صورت قطعی نمونهبرداری کند، به طوری که درخواستهای مکرر با همان seed و پارامترها باید نتیجه یکسانی را برگردانند. |
presence_penalty | number | مقادیر مثبت، توکنهای جدید را بر اساس اینکه آیا در متن تا کنون ظاهر شدهاند جریمه میکنند، و احتمال صحبت کردن مدل در مورد موضوعات جدید را افزایش میدهند. |
response_format | one of | شیئی که فرمتی را مشخص میکند که مدل باید خروجی دهد. |
reasoning | object | پیکربندی برای توکنهای استدلال/تفکر مدل |
echo | boolean | اگر True باشد، پاسخ شامل پرامپت خواهد بود. میتواند با logprobs برای برگرداندن logprobs پرامپت استفاده شود. |
min_p | number | عددی بین 0.001 و 0.999 که میتواند به عنوان جایگزینی برای top_p و top_k استفاده شود. |
top_k | number | فقط از K گزینه برتر برای هر توکن بعدی نمونهبرداری کنید. برای حذف پاسخهای کم احتمال "دنباله بلند" استفاده میشود. فقط برای موارد استفاده پیشرفته توصیه میشود. معمولاً فقط باید از دما استفاده کنید. |
top_a | number | پارامتر نمونهبرداری برتر جایگزین. |
repetition_penalty | number | عددی که تنوع متن تولید شده را با کاهش احتمال تکرار دنبالههای تکراری کنترل میکند. مقادیر بالاتر تکرار را کاهش میدهند. |
نمونه کدهای درخواست
نکته مهم برای توسعهدهندگان:
برای احراز هویت، حتما کلید API خود را جایگزین YOUR_API_KEY کنید. هدر Authorization الزامی است.
import requests
import json # for getting a structured output with indentation
response = requests.post(
"https://api.ai-kar.com/v1/chat/completions",
headers={
# Insert your AI-KAR API Key instead of <YOUR_AI-KARAPI_KEY>:
"Authorization":"Bearer <YOUR_AI-KARAPI_KEY>",
"Content-Type":"application/json"
},
json={
"model":"nvidia/nemotron-nano-9b-v2",
"messages":[
{
"role":"user",
"content":"Hello" # insert your prompt here, instead of Hello
}
]
}
)
data = response.json()
print(json.dumps(data, indent=2, ensure_ascii=False))نمونه پاسخ موفق (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
}
}
}