Text Models (LLM)alibaba-cloud

معرفی و مستندات مدل هوش مصنوعی qwen-qwq-32b

مستندات مدل qwen-qwq-32b ارائه شده توسط ای آی کار (AI-KAR)

معرفی و بررسی فنی

⚡ وضعیت پشتیبانی از زبان فارسی

این مدل از زبان فارسی به صورت متوسط پشتیبانی می‌کند. برای دریافت بهترین نتیجه، استفاده از دستورالعمل‌های واضح و ساده توصیه می‌شود.

مدل Qwen/QwQ-32B یک مدل استدلال فشرده است که برای مقابله با وظایف پیچیده حل مسئله طراحی شده است. این مدل به عملکردی قابل مقایسه با مدل‌های بسیار بزرگتر مانند DeepSeek-R1 (با 671 میلیارد پارامتر) دست می‌یابد. Qwen/QwQ-32B در استدلال ریاضی، کدنویسی و گردش‌کارهای ساخت‌یافته برتری دارد. این مدل با هدف ارائه راهکارهای کارآمد و دقیق در زمینه‌های مختلف توسعه یافته است. از جمله کاربردهای کلیدی این مدل می‌توان به حل مسائل پیچیده ریاضی، تولید و بررسی کد، و همچنین مدیریت و بهینه‌سازی فرآیندهای کاری اشاره کرد. Qwen/QwQ-32B با بهره‌گیری از معماری پیشرفته و بهینه‌سازی‌های انجام شده، قادر است با مصرف منابع کمتر، نتایجی مشابه یا حتی بهتر از مدل‌های بزرگتر ارائه دهد. این امر باعث می‌شود که استفاده از این مدل برای طیف وسیعی از کاربران و سازمان‌ها، از جمله کسب‌وکارهای کوچک و متوسط، امکان‌پذیر باشد. علاوه بر این، Qwen/QwQ-32B به گونه‌ای طراحی شده است که به راحتی با سایر ابزارها و سیستم‌ها ادغام شود، که این امر امکان ایجاد راهکارهای سفارشی و متناسب با نیازهای خاص هر کاربر را فراهم می‌کند. این مدل با ارائه عملکرد بالا و انعطاف‌پذیری، به عنوان یک ابزار قدرتمند در اختیار توسعه‌دهندگان و محققان قرار می‌گیرد تا بتوانند به طور موثرتری به حل مسائل و نوآوری در زمینه‌های مختلف بپردازند. ای آی کار (AI-KAR) با ارائه این مستندات، تلاش می‌کند تا کاربران را در استفاده بهینه از این مدل یاری رساند و امکان بهره‌برداری کامل از قابلیت‌های آن را فراهم کند. این مستندات شامل اطلاعات جامعی در مورد نحوه استفاده از مدل، پارامترهای مختلف آن، و همچنین مثال‌های کاربردی است که به کاربران کمک می‌کند تا به سرعت با نحوه کارکرد مدل آشنا شوند و بتوانند از آن در پروژه‌های خود استفاده کنند.

مشخصات فنی (API References)

پارامترنوعتوضیحات و مقادیر
model
stringRequired
مدل مورد استفاده برای تکمیل چت. مقدار این فیلد باید Qwen/QwQ-32B باشد.
مقادیر مجاز (کلیک برای کپی):
messages
one of[]Required
لیستی از پیام‌ها که مکالمه را تا به اینجا تشکیل می‌دهند. بسته به مدلی که استفاده می‌کنید، انواع مختلف پیام (modalities) مانند متن، اسناد (txt، pdf)، تصاویر و صدا پشتیبانی می‌شوند.
max_tokens
number
حداکثر تعداد توکن‌هایی که می‌توان در تکمیل چت تولید کرد. این مقدار می‌تواند برای کنترل هزینه‌های متن تولید شده از طریق API استفاده شود.
stream
boolean
اگر روی True تنظیم شود، داده‌های پاسخ مدل به صورت جریانی (stream) و با استفاده از رویدادهای ارسال شده از سرور (server-sent events) به کلاینت ارسال می‌شوند.
stream_options
object
تنظیمات مربوط به استریم کردن داده‌ها.
tools
object[]
لیستی از ابزارهایی که مدل می‌تواند فراخوانی کند. در حال حاضر، فقط توابع به عنوان ابزار پشتیبانی می‌شوند. از این برای ارائه لیستی از توابعی استفاده کنید که مدل می‌تواند ورودی‌های JSON را برای آنها تولید کند. حداکثر 128 تابع پشتیبانی می‌شود.
tool_choice
any of
کنترل می‌کند که کدام ابزار (در صورت وجود) توسط مدل فراخوانی شود. none به این معنی است که مدل هیچ ابزاری را فراخوانی نمی‌کند و به جای آن یک پیام تولید می‌کند. auto به این معنی است که مدل می‌تواند بین تولید یک پیام یا فراخوانی یک یا چند ابزار انتخاب کند. required به این معنی است که مدل باید یک یا چند ابزار را فراخوانی کند. تعیین یک ابزار خاص از طریق {"type": "function", "function": {"name": "my_function"}} مدل را مجبور می‌کند که آن ابزار را فراخوانی کند.
مقادیر مجاز (کلیک برای کپی):
parallel_tool_calls
boolean
مشخص می‌کند که آیا فراخوانی همزمان توابع در حین استفاده از ابزار فعال شود یا خیر.
response_format
one of
یک شیء که فرمتی را مشخص می‌کند که مدل باید خروجی دهد.
echo
boolean
اگر True باشد، پاسخ شامل prompt خواهد بود. می‌تواند با logprobs برای برگرداندن prompt logprobs استفاده شود.
temperature
number
چه دمای نمونه‌برداری (sampling temperature) استفاده شود. مقادیر بالاتر مانند 0.8 خروجی را تصادفی‌تر می‌کنند، در حالی که مقادیر پایین‌تر مانند 0.2 آن را متمرکزتر و قطعی‌تر می‌کنند. ما معمولاً توصیه می‌کنیم این مقدار یا top_p را تغییر دهید، اما نه هر دو را.
top_p
number
جایگزینی برای نمونه‌برداری با دما، به نام نمونه‌برداری هسته‌ای (nucleus sampling)، که در آن مدل نتایج توکن‌ها را با جرم احتمال top_p در نظر می‌گیرد. بنابراین 0.1 به این معنی است که فقط توکن‌هایی که 10٪ جرم احتمال برتر را تشکیل می‌دهند در نظر گرفته می‌شوند. ما معمولاً توصیه می‌کنیم این مقدار یا temperature را تغییر دهید، اما نه هر دو را.
n
integer
چند انتخاب تکمیل چت برای هر پیام ورودی تولید شود. توجه داشته باشید که هزینه شما بر اساس تعداد توکن‌های تولید شده در تمام انتخاب‌ها محاسبه می‌شود. n را به عنوان 1 نگه دارید تا هزینه‌ها را به حداقل برسانید.
stop
any of
حداکثر 4 دنباله که API تولید توکن‌های بیشتر را متوقف می‌کند. متن بازگشتی شامل دنباله توقف نخواهد بود.
logprobs
boolean
مشخص می‌کند که آیا احتمال لگاریتمی (log probabilities) توکن‌های خروجی برگردانده شوند یا خیر. اگر 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 گزینه برتر برای هر توکن بعدی نمونه‌برداری کنید. برای حذف پاسخ‌های با احتمال پایین "long tail" استفاده می‌شود. فقط برای موارد استفاده پیشرفته توصیه می‌شود. معمولاً فقط باید از 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":"Qwen/QwQ-32B",
        "messages":[
            {
                "role":"user",
                "content":"Hello"  # insert your prompt here, instead of Hello
            }
        ]
    }
)
data = response.json()
print(json.dumps(data, indent=4))

نمونه پاسخ موفق (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
    }
  }
}