Text Models (LLM)meta
معرفی و مستندات مدل هوش مصنوعی meta-llama-3.1-70b-instruct-turbo
مستندات مدل meta-llama-3.1-70b-instruct-turbo ارائه شده توسط ای آی کار (AI-KAR)
معرفی و بررسی فنی
⚡ وضعیت پشتیبانی از زبان فارسی
این مدل از زبان فارسی به صورت متوسط پشتیبانی میکند و درک نسبتا خوبی از دستور زبان و مفاهیم فارسی دارد، اما ممکن است در تولید متون پیچیده و ظریف فارسی با مشکلاتی مواجه شود.
مدل meta-llama-3.1-70b-instruct-turbo یک مدل زبانی بزرگ (LLM) است که توسط Meta توسعه داده شده و برای انجام وظایف مختلف پردازش زبان طبیعی (NLP) طراحی شده است. این مدل به طور خاص برای استفاده در کاربردهای گفتگوی چند زبانه تنظیم شده است و در تولید و درک زبان طبیعی عملکرد بسیار خوبی دارد. این مدل از معماری ترانسفورمر استفاده میکند و با استفاده از مجموعه دادههای عظیمی از متن و کد آموزش داده شده است. این آموزش به مدل امکان میدهد تا الگوها و روابط پیچیده در زبان را یاد بگیرد و متن منسجم، مرتبط و با کیفیت بالا تولید کند. مدل meta-llama-3.1-70b-instruct-turbo میتواند برای طیف گستردهای از کاربردها استفاده شود، از جمله:
* **چتباتها و دستیارهای مجازی:** این مدل میتواند برای ایجاد چتباتها و دستیارهای مجازی استفاده شود که میتوانند به سوالات کاربران پاسخ دهند، اطلاعات ارائه دهند و وظایف مختلف را انجام دهند.
* **تولید محتوا:** این مدل میتواند برای تولید انواع مختلف محتوا، از جمله مقالات، پستهای وبلاگ، شرح محصولات و موارد دیگر استفاده شود.
* **ترجمه زبان:** این مدل میتواند برای ترجمه متن از یک زبان به زبان دیگر استفاده شود.
* **خلاصهسازی متن:** این مدل میتواند برای خلاصه کردن متنهای طولانی استفاده شود.
* **تکمیل متن:** این مدل میتواند برای تکمیل متنهای ناقص استفاده شود.
* **پاسخ به سوال:** این مدل میتواند برای پاسخ دادن به سوالات بر اساس متن ارائه شده استفاده شود.
مدل meta-llama-3.1-70b-instruct-turbo با استفاده از API قابل دسترسی است و توسعه دهندگان میتوانند از آن در برنامههای خود استفاده کنند. این مدل به طور مداوم در حال بهبود است و Meta به طور مرتب نسخههای جدیدی از آن را با عملکرد بهتر منتشر میکند. این مدل به دلیل توانایی درک و تولید زبانهای مختلف، به ویژه برای کاربردهای چند زبانه بسیار مناسب است. با توجه به اندازه بزرگ و معماری پیشرفته، این مدل میتواند پاسخهای دقیق و مرتبطی را در زمینههای مختلف ارائه دهد و به عنوان یک ابزار قدرتمند برای توسعه دهندگان و محققان در زمینه هوش مصنوعی و پردازش زبان طبیعی محسوب میشود. این مدل در مقایسه با مدلهای قبلی، بهبودهای قابل توجهی در دقت، سرعت و کارایی دارد و میتواند به عنوان یک راه حل مناسب برای بسیاری از چالشهای موجود در زمینه پردازش زبان طبیعی مورد استفاده قرار گیرد.
مشخصات فنی (API References)
| پارامتر | نوع | توضیحات و مقادیر |
|---|---|---|
model | stringRequired | مدلی که برای تولید پاسخ استفاده میشود. مقادیر مجاز (کلیک برای کپی): |
messages | one of[]Required | لیستی از پیامها که مکالمه را تا به اینجا تشکیل میدهند. بسته به مدلی که استفاده میکنید، انواع مختلف پیامها (modalities) مانند متن، اسناد (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 | اینکه آیا فراخوانی موازی تابع در حین استفاده از ابزار فعال شود یا خیر. |
echo | boolean | اگر True باشد، پاسخ شامل prompt خواهد بود. میتوان از آن با logprobs برای برگرداندن prompt logprobs استفاده کرد. |
temperature | number | از چه دمای نمونهبرداری استفاده شود. مقادیر بالاتر مانند 0.8 خروجی را تصادفیتر میکنند، در حالی که مقادیر پایینتر مانند 0.2 آن را متمرکزتر و قطعیتر میکنند. ما معمولاً توصیه میکنیم این مقدار یا top_p را تغییر دهید، اما نه هر دو را. |
top_p | number | جایگزینی برای نمونهبرداری با دما، به نام نمونهبرداری هستهای، که در آن مدل نتایج توکنها را با جرم احتمال top_p در نظر میگیرد. بنابراین 0.1 به این معنی است که فقط توکنهایی در نظر گرفته میشوند که 10٪ جرم احتمال برتر را تشکیل میدهند. |
n | integer | چند انتخاب تکمیل چت برای هر پیام ورودی تولید شود. توجه داشته باشید که بر اساس تعداد توکنهای تولید شده در تمام انتخابها، هزینه از شما دریافت میشود. n را به عنوان 1 نگه دارید تا هزینهها به حداقل برسد. |
stop | any of | حداکثر 4 دنباله که API تولید توکنهای بیشتر را متوقف میکند. متن برگشتی شامل دنباله توقف نخواهد بود. |
logprobs | boolean | اینکه آیا احتمال ورود به سیستم توکنهای خروجی را برگرداند یا خیر. اگر True باشد، احتمال ورود به سیستم هر توکن خروجی را که در محتوای پیام برگردانده شده است، برمیگرداند. |
top_logprobs | number | یک عدد صحیح بین 0 و 20 که تعداد محتملترین توکنها را برای بازگشت در هر موقعیت توکن مشخص میکند، که هر کدام دارای یک احتمال ورود به سیستم مرتبط هستند. اگر این پارامتر استفاده شود، logprobs باید روی True تنظیم شود. |
logit_bias | object | احتمال ظاهر شدن توکنهای مشخص شده در تکمیل را تغییر دهید.
یک شی JSON را میپذیرد که توکنها (مشخص شده توسط شناسه توکن آنها در توکنساز) را به یک مقدار بایاس مرتبط از -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 گزینه برتر برای هر توکن بعدی نمونهبرداری کنید. برای حذف پاسخهای «دنباله بلند» با احتمال کم استفاده میشود. فقط برای موارد استفاده پیشرفته توصیه میشود. معمولاً فقط باید از دما استفاده کنید. |
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/Meta-Llama-3.1-70B-Instruct-Turbo",
"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
}
}
}