مستندات مدل هوش مصنوعی GLM-4.5

GLM-4.5 جدیدترین مدل زبانی بزرگ (LLM) توسعه یافته توسط Zhipu AI است که با تمرکز بر عملکرد برتر در وظایف پیچیده زبان طبیعی طراحی شده است. این مدل با بهره‌گیری از معماری پیشرفته و داده‌های آموزشی گسترده، توانایی‌های استثنایی در درک متن، استدلال منطقی و تولید محتوای باکیفیت از خود نشان می‌دهد.

این مدل با پنجره متنی (context window) 128 هزار توکنی، قادر به پردازش و تحلیل حجم عظیمی از اطلاعات در یک درخواست واحد است. GLM-4.5 با پشتیبانی از چندین زبان و تخصص در وظایف پیچیده، ابزاری قدرتمند برای توسعه‌دهندگانی است که به دنبال راه‌حل‌های هوش مصنوعی پیشرفته برای پروژه‌های خود هستند.

ارائه‌دهنده: Zhipu AI نوع مدل: LLM پنجره متنی: 128,000 توکن

نمونه کدها (API Examples)

تمام درخواست‌ها باید به نقطه پایانی https://ai-kar.com/v1/chat/completions ارسال شوند.

مهم: برای جلوگیری از شارژ تکراری در صورت بروز خطای شبکه، ارسال هدر Idempotency-Key با یک مقدار UUID منحصر به فرد برای هر درخواست جدید، **اجباری** است. در تلاش‌های مجدد (retry) باید از همان کلید استفاده کنید.

cURL

curl https://ai-kar.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_AIKAR_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "zhipu/glm-4.5",
"messages": [
  {"role": "user", "content": "مزایای هوش مصنوعی در آموزش را توضیح دهید"}
],
"max_tokens": 1000,
"temperature": 0.7,
"top_p": 0.9
}'

پایتون (Python) با کتابخانه `requests`

import requests
import uuid

API_KEY = "YOUR_AIKAR_API_KEY"
API_URL = "https://ai-kar.com/v1/chat/completions"

# برای هر درخواست جدید، یک کلید منحصر به فرد بسازید
idempotency_key = str(uuid.uuid4())

headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json",
    "Idempotency-Key": idempotency_key
}

payload = {
    "model": "zhipu/glm-4.5",
    "messages": [
        {"role": "user", "content": "مزایای هوش مصنوعی در آموزش را توضیح دهید"}
    ],
    "max_tokens": 1000,
    "temperature": 0.7,
    "top_p": 0.9
}

try:
    response = requests.post(API_URL, headers=headers, json=payload, timeout=90)
    response.raise_for_status() # بررسی خطاهای HTTP
    print(response.json())
except requests.exceptions.RequestException as e:
    print(f"خطا در ارسال درخواست: {e}")
    # در اینجا می‌توانید منطق تلاش مجدد (retry) با همان هدرها را پیاده‌سازی کنید

جاوا اسکریپت (Node.js) با کتابخانه `axios`

// npm install axios uuid
const axios = require('axios');
const { v4: uuidv4 } = require('uuid');

const API_KEY = 'YOUR_AIKAR_API_KEY';
const API_URL = 'https://ai-kar.com/v1/chat/completions';

async function main() {
  const payload = {
    model: 'zhipu/glm-4.5',
    messages: [
      {"role": "user", "content": "مزایای هوش مصنوعی در آموزش را توضیح دهید"}
    ],
    max_tokens: 1000,
    temperature: 0.7,
    top_p: 0.9
  };

  const headers = {
    'Authorization': `Bearer ${API_KEY}`,
    'Content-Type': 'application/json',
    'Idempotency-Key': uuidv4() // ساخت کلید منحصر به فرد جدید
  };

  try {
    const response = await axios.post(API_URL, payload, { headers });
    console.log(JSON.stringify(response.data, null, 2));
  } catch (error) {
    if (error.response) {
      console.error("خطا از سرور API:", error.response.status, error.response.data);
    } else {
      console.error("خطا در ارسال درخواست:", error.message);
    }
  }
}

main();

خروجی نمونه (Example Output)

و این یک نمونه پاسخ در فرمت JSON است:

{
  "id": "chatcmpl-...",
  "object": "chat.completion",
  "created": 1700000000,
  "model": "zhipu/glm-4.5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "هوش مصنوعی در آموزش مزایای متعددی دارد:\n\n1. **شخصی‌سازی یادگیری**: سیستم‌های مبتنی بر هوش مصنوعی می‌توانند محتوای آموزشی را بر اساس نیازها و سرعت یادگیری هر دانش‌آموز تنظیم کنند.\n\n2. **دسترسی 24/7**: دانش‌آموزان می‌توانند در هر زمانی به منابع آموزشی دسترسی داشته باشند و سوالات خود را بپرسند.\n\n3. **ارزیابی خودکار**: هوش مصنوعی می‌تواند تکالیف و آزمون‌ها را به صورت خودکار تصحیح کند و بازخورد فوری ارائه دهد.\n\n4. **پشتیبانی از معلمان**: با اتوماسیون وظایف تکراری، معلمان می‌توانند بر روی تعاملات کیفی با دانش‌آموزان تمرکز کنند."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 12,
    "completion_tokens": 180,
    "total_tokens": 192
  }
}

پارامترهای درخواست (Request)

پارامتر نوع توضیحات
modelرشته(الزامی) شناسه مدلی که باید استفاده شود. مقدار مجاز: zhipu/glm-4.5
messagesآرایه(الزامی) لیستی از پیام‌ها که مکالمه را تشکیل می‌دهند. بسته به مدل، انواع مختلفی از پیام‌ها پشتیبانی می‌شوند.
max_tokensعدد(اختیاری) حداکثر تعداد توکن‌هایی که می‌توان در تکمیل چت تولید کرد.
streamبولی(اختیاری) اگر روی True تنظیم شود، پاسخ مدل به صورت جریانی ارسال می‌شود. پیش‌فرض: false
toolsآرایه(اختیاری) ابزارهایی مانند فراخوانی تابع و جستجوی وب که توسط مدل پشتیبانی می‌شوند.
tool_choiceرشته یا شیء(اختیاری) کنترل می‌کند که کدام ابزار (در صورت وجود) توسط مدل فراخوانی شود.
top_pعدد(اختیاری) جایگزینی برای دما (temperature)، که در آن مدل نتایج توکن‌ها با مجموع احتمال top_p را در نظر می‌گیرد.
temperatureعدد(اختیاری) میزان خلاقیت پاسخ را کنترل می‌کند. مقادیر بالاتر خلاقانه‌تر و مقادیر پایین‌تر دقیق‌تر هستند.
stopآرایه رشته‌ها(اختیاری) تا 4 دنباله متنی که در آن‌ها API از تولید توکن‌های بیشتر متوقف می‌شود.
frequency_penaltyعدد(اختیاری) عددی بین -2.0 و 2.0. مقادیر مثبت توکن‌های جدید را بر اساس فراوانی آن‌ها در متن جریمه می‌کند.
presence_penaltyعدد(اختیاری) مقادیر مثبت توکن‌های جدید را بر اساس حضور آن‌ها در متن جریمه کرده و احتمال صحبت در مورد موضوعات جدید را افزایش می‌دهد.

پارامترهای پاسخ (Response)

پارامتر نوع توضیحات
idرشتهشناسه منحصر به فرد برای درخواست چت.
objectرشتهنوع شیء که همیشه `chat.completion` است.
createdعدد صحیحمهر زمانی Unix برای زمان ایجاد پاسخ.
modelرشتهنام مدلی که برای تولید پاسخ استفاده شده است.
choicesآرایهلیستی از انتخاب‌های ممکن. معمولاً فقط یک آیتم دارد.
usageشیءآماری از تعداد توکن‌های استفاده شده در درخواست.