Text Models (LLM)meta
معرفی و مستندات مدل هوش مصنوعی llama-3-chat-hf
مستندات مربوط به مدل llama-3-chat-hf ارائه شده توسط متا، با پشتیبانی ای ای کار (AI-KAR).
معرفی و بررسی فنی
⚡ وضعیت پشتیبانی از زبان فارسی
این مدل از زبان فارسی به صورت متوسط پشتیبانی میکند. درک نسبی از دستور زبان فارسی دارد اما ممکن است در تولید متون پیچیده فارسی دچار مشکل شود.
مدل llama-3-chat-hf یک مدل زبان بزرگ (LLM) است که توسط متا توسعه داده شده و برای کاربردهای گفتگومحور بهینه شده است. این مدل بر اساس معماری ترانسفورمر ساخته شده و با استفاده از مجموعه دادههای عظیمی از متن و کد آموزش داده شده است. هدف اصلی این مدل، ارائه پاسخهای دقیق، مرتبط و جذاب در مکالمات است. این مدل قادر است به سوالات پاسخ دهد، اطلاعات را خلاصه کند، متنهای مختلف را تولید کند (مانند ایمیل، مقاله، کد و غیره)، و در وظایف مختلف خلاقانه به کاربران کمک کند. مدل llama-3-chat-hf در بسیاری از بنچمارکهای صنعتی عملکرد بهتری نسبت به سایر مدلهای متنباز دارد. این مدل به طور خاص برای درک و پاسخگویی به درخواستهای پیچیده و چند مرحلهای طراحی شده است. یکی از ویژگیهای برجسته این مدل، توانایی آن در حفظ انسجام و پیوستگی در طول مکالمات طولانی است. این مدل میتواند تاریخچه گفتگو را به خاطر بسپارد و پاسخهایی ارائه دهد که با متن قبلی مرتبط باشند. علاوه بر این، مدل llama-3-chat-hf از قابلیتهای استدلال و منطق قوی برخوردار است. این مدل میتواند مسائل را تحلیل کند، الگوها را شناسایی کند و بر اساس شواهد موجود، نتیجهگیری کند. این قابلیتها به مدل اجازه میدهند تا در وظایفی مانند حل مسئله، برنامهریزی و تصمیمگیری به کاربران کمک کند. مدل llama-3-chat-hf همچنین از قابلیتهای تولید زبان طبیعی پیشرفته برخوردار است. این مدل میتواند متنهایی را تولید کند که از نظر گرامری صحیح، روان و طبیعی باشند. این قابلیت به مدل اجازه میدهد تا در وظایفی مانند نوشتن مقاله، تولید محتوا و ترجمه زبان به کاربران کمک کند. برای استفاده از این مدل، کاربران میتوانند از طریق API ارائه شده توسط ای ای کار (AI-KAR) به آن دسترسی پیدا کنند. API این مدل امکان ارسال درخواستهای مختلف و دریافت پاسخهای متناسب را فراهم میکند. کاربران میتوانند پارامترهای مختلفی را برای کنترل رفتار مدل تنظیم کنند، مانند دمای نمونهبرداری، حداکثر تعداد توکنها و غیره. این مدل به طور مداوم در حال بهبود و توسعه است. متا به طور منظم نسخههای جدیدی از این مدل را با قابلیتهای بیشتر و عملکرد بهتر منتشر میکند. ای ای کار (AI-KAR) نیز همواره در تلاش است تا آخرین نسخههای این مدل را در اختیار کاربران خود قرار دهد.
مشخصات فنی (API References)
| پارامتر | نوع | توضیحات و مقادیر |
|---|---|---|
model | stringRequired | مدل مورد استفاده برای تولید پاسخ. مقدار این فیلد باید 'meta-llama/Llama-3-70b-chat-hf' باشد. مقادیر مجاز (کلیک برای کپی): |
messages | one of[]Required | لیستی از پیامها که مکالمه را تا به اینجا تشکیل میدهند. بسته به مدلی که استفاده میکنید، انواع مختلفی از پیامها (modalities) مانند متن، اسناد (txt, pdf)، تصاویر و صدا پشتیبانی میشوند. |
max_tokens | number | حداکثر تعداد توکنهایی که میتوان در تکمیل چت تولید کرد. این مقدار میتواند برای کنترل هزینههای متن تولید شده از طریق API استفاده شود. |
stream | boolean | اگر روی True تنظیم شود، دادههای پاسخ مدل به صورت جریانی (stream) به کلاینت ارسال میشوند، به این معنی که به محض تولید هر بخش از پاسخ، به کلاینت فرستاده میشود. مقادیر مجاز (کلیک برای کپی): |
stream_options | object | تنظیمات مربوط به استریم کردن پاسخ. |
echo | boolean | اگر True باشد، پاسخ شامل پرامپت (prompt) نیز خواهد بود. میتواند با logprobs برای برگرداندن logprobs پرامپت استفاده شود. مقادیر مجاز (کلیک برای کپی): |
temperature | number | دمای نمونهبرداری برای استفاده. مقادیر بالاتر مانند 0.8 خروجی را تصادفیتر میکنند، در حالی که مقادیر پایینتر مانند 0.2 آن را متمرکزتر و قطعیتر میکنند. به طور کلی توصیه میکنیم این مقدار یا top_p را تغییر دهید، اما نه هر دو را. |
top_p | number | جایگزینی برای نمونهبرداری با دما، به نام نمونهبرداری هستهای (nucleus sampling)، که در آن مدل نتایج توکنهایی را با جرم احتمال top_p در نظر میگیرد. بنابراین 0.1 به این معنی است که فقط توکنهایی در نظر گرفته میشوند که 10٪ جرم احتمال برتر را تشکیل میدهند. به طور کلی توصیه میکنیم این مقدار یا temperature را تغییر دهید، اما نه هر دو را. |
n | integer | تعداد انتخابهای تکمیل چت (chat completion choices) که برای هر پیام ورودی تولید میشود. توجه داشته باشید که هزینه شما بر اساس تعداد توکنهای تولید شده در تمام انتخابها محاسبه میشود. مقدار n را 1 نگه دارید تا هزینهها را به حداقل برسانید. |
stop | any of | حداکثر 4 دنباله (sequence) که API تولید توکنهای بیشتر را متوقف میکند. متن برگشتی شامل دنباله توقف نخواهد بود. |
logprobs | boolean | اینکه آیا احتمالات لگاریتمی (log probabilities) توکنهای خروجی برگردانده شوند یا خیر. اگر True باشد، احتمالات لگاریتمی هر توکن خروجی را که در محتوای پیام برگردانده شده است، برمیگرداند. مقادیر مجاز (کلیک برای کپی): |
top_logprobs | number | یک عدد صحیح بین 0 و 20 که تعداد محتملترین توکنها را برای بازگشت در هر موقعیت توکن مشخص میکند، که هر کدام دارای یک احتمال لگاریتمی مرتبط هستند. اگر این پارامتر استفاده شود، logprobs باید روی True تنظیم شود. |
logit_bias | object | احتمال ظاهر شدن توکنهای مشخص شده در تکمیل را تغییر میدهد. یک شی JSON را میپذیرد که توکنها (مشخص شده توسط شناسه توکن آنها در tokenizer) را به یک مقدار بایاس مرتبط از -100 تا 100 نگاشت میکند. از نظر ریاضی، بایاس به logits تولید شده توسط مدل قبل از نمونهبرداری اضافه میشود. اثر دقیق برای هر مدل متفاوت خواهد بود، اما مقادیر بین -1 و 1 باید احتمال انتخاب را کاهش یا افزایش دهد. مقادیری مانند -100 یا 100 باید منجر به ممنوعیت یا انتخاب انحصاری توکن مربوطه شود. |
frequency_penalty | number | عددی بین -2.0 و 2.0. مقادیر مثبت، توکنهای جدید را بر اساس فراوانی موجود آنها در متن تا کنون جریمه میکنند، و احتمال تکرار عین به عین همان خط توسط مدل را کاهش میدهند. |
prediction | object | پیکربندی برای یک خروجی پیشبینیشده، که میتواند زمان پاسخ را در زمانی که بخشهای بزرگی از پاسخ مدل از قبل مشخص هستند، تا حد زیادی بهبود بخشد. |
presence_penalty | number | مقادیر مثبت، توکنهای جدید را بر اساس اینکه آیا در متن تا کنون ظاهر شدهاند یا خیر، جریمه میکنند، و احتمال صحبت کردن مدل در مورد موضوعات جدید را افزایش میدهند. |
seed | integer | این ویژگی در نسخه بتا است. اگر مشخص شود، سیستم ما تمام تلاش خود را میکند تا به صورت قطعی نمونهبرداری کند، به طوری که درخواستهای مکرر با همان seed و پارامترها باید نتیجه یکسانی را برگردانند. |
min_p | number | عددی بین 0.001 و 0.999 که میتواند به عنوان جایگزینی برای top_p و top_k استفاده شود. |
top_k | number | فقط از بین K گزینه برتر برای هر توکن بعدی نمونهبرداری کنید. برای حذف پاسخهای کم احتمال "دنباله بلند" استفاده میشود. فقط برای موارد استفاده پیشرفته توصیه میشود. معمولاً فقط باید از temperature استفاده کنید. |
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":"meta-llama/Llama-3-70b-chat-hf",
"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
}
}
}