Text Models (LLM)openai

معرفی و مستندات مدل هوش مصنوعی o1

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

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

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

این مدل از زبان فارسی به صورت متوسط پشتیبانی می‌کند. درک متون فارسی نسبتا خوب است اما در تولید متون پیچیده فارسی ممکن است با مشکل مواجه شود.

مدل o1 یک مدل زبانی پیشرفته است که برای برتری در وظایف استدلالی پیچیده، از جمله حل مسائل ریاضی، چالش‌های برنامه‌نویسی و تحقیقات علمی طراحی شده است. این مدل قابلیت‌های استدلالی پیشرفته را از طریق معماری نوآورانه خود یکپارچه می‌کند و آن را برای طیف گسترده‌ای از برنامه‌هایی که نیاز به درک عمیق و استنتاج منطقی دارند، مناسب می‌سازد. مدل o1 با بهره‌گیری از جدیدترین تکنیک‌های یادگیری عمیق، قادر است الگوها را در حجم وسیعی از داده‌ها شناسایی کرده و بر اساس آن، پیش‌بینی‌ها و تصمیم‌گیری‌های دقیقی انجام دهد. این مدل نه تنها در درک زبان طبیعی مهارت دارد، بلکه می‌تواند کد برنامه‌نویسی را نیز تحلیل و تولید کند، مسائل ریاضی را حل کند و در زمینه‌های علمی مختلف به محققان کمک کند. یکی از ویژگی‌های برجسته مدل o1، توانایی آن در انجام استدلال چند مرحله‌ای است. این بدان معناست که مدل می‌تواند یک مسئله پیچیده را به اجزای کوچکتر تقسیم کرده و به صورت گام به گام به حل آن بپردازد. این قابلیت به ویژه در حل مسائل ریاضی و برنامه‌نویسی بسیار مفید است، زیرا به مدل اجازه می‌دهد تا منطق پشت هر مرحله را درک کرده و از اشتباهات احتمالی جلوگیری کند. علاوه بر این، مدل o1 مجهز به مکانیزم‌های توجه پیشرفته است که به آن امکان می‌دهد تا بر روی مهم‌ترین بخش‌های ورودی تمرکز کند. این امر به ویژه در پردازش متون طولانی و پیچیده حائز اهمیت است، زیرا به مدل کمک می‌کند تا اطلاعات غیرضروری را فیلتر کرده و بر روی اطلاعات کلیدی تمرکز کند. مدل o1 همچنین از قابلیت یادگیری مداوم برخوردار است. این بدان معناست که مدل می‌تواند به طور مداوم از داده‌های جدید یاد بگیرد و عملکرد خود را بهبود بخشد. این قابلیت به ویژه در زمینه‌هایی که داده‌ها به سرعت در حال تغییر هستند، بسیار ارزشمند است. به طور خلاصه، مدل o1 یک ابزار قدرتمند برای حل مسائل پیچیده و انجام استدلال‌های منطقی است. این مدل می‌تواند در زمینه‌های مختلفی از جمله حل مسائل ریاضی، برنامه‌نویسی، تحقیقات علمی و پردازش زبان طبیعی مورد استفاده قرار گیرد. با توجه به قابلیت‌های پیشرفته و توانایی یادگیری مداوم، مدل o1 می‌تواند به عنوان یک دستیار هوشمند برای محققان، مهندسان و سایر متخصصان عمل کند و به آنها در انجام وظایف پیچیده و دستیابی به نتایج بهتر کمک کند. این مدل توسط ای آی کار (AI-KAR) ارائه شده است.

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

پارامترنوعتوضیحات و مقادیر
model
stringRequired
مدل مورد استفاده. مقدار باید o1 باشد.
مقادیر مجاز (کلیک برای کپی):
messages
one of[]Required
لیستی از پیام‌ها که مکالمه را تا کنون تشکیل می‌دهند. بسته به مدلی که استفاده می‌کنید، انواع مختلف پیام (حالت‌ها) مانند متن، اسناد (txt، pdf)، تصاویر و صدا پشتیبانی می‌شوند.
max_completion_tokens
integer
حد بالایی برای تعداد توکن‌هایی که می‌توان برای یک تکمیل تولید کرد، از جمله توکن‌های خروجی قابل مشاهده و توکن‌های استدلال.
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"}} مدل را مجبور می‌کند تا آن ابزار را فراخوانی کند.
مقادیر مجاز (کلیک برای کپی):
n
integer
تعداد انتخاب‌های تکمیل چت برای تولید برای هر پیام ورودی. توجه داشته باشید که هزینه بر اساس تعداد توکن‌های تولید شده در تمام انتخاب‌ها محاسبه می‌شود. n را به عنوان 1 نگه دارید تا هزینه‌ها را به حداقل برسانید.
stop
any of
حداکثر 4 دنباله که API تولید توکن‌های بیشتر را متوقف می‌کند. متن برگشتی شامل دنباله توقف نخواهد بود.
seed
integer
این ویژگی در نسخه بتا است. اگر مشخص شود، سیستم ما تمام تلاش خود را می‌کند تا به طور قطعی نمونه‌برداری کند، به طوری که درخواست‌های مکرر با همان seed و پارامترها باید نتیجه یکسانی را برگردانند.
reasoning_effort
string
تلاش برای استدلال را برای مدل‌های استدلال محدود می‌کند. مقادیر پشتیبانی شده در حال حاضر عبارتند از low، medium و high. کاهش تلاش استدلال می‌تواند منجر به پاسخ‌های سریع‌تر و توکن‌های کمتری شود که در استدلال در یک پاسخ استفاده می‌شوند.
مقادیر مجاز (کلیک برای کپی):
response_format
one of
یک شیء که فرمتی را مشخص می‌کند که مدل باید خروجی دهد.
include
string · enum[]
مشخص کنید که داده های خروجی اضافی در پاسخ مدل گنجانده شود. مقادیر پشتیبانی شده در حال حاضر عبارتند از: code_interpreter_call.outputs: شامل خروجی های اجرای کد پایتون در موارد فراخوانی ابزار مفسر کد است. computer_call_output.output.image_url: شامل آدرس های اینترنتی تصویر از خروجی فراخوانی رایانه است. file_search_call.results: شامل نتایج جستجوی فراخوانی ابزار جستجوی فایل است. message.output_text.logprobs: شامل logprobs با پیام های دستیار است. reasoning.encrypted_content: شامل یک نسخه رمزگذاری شده از توکن های استدلال در خروجی های مورد استدلال است. این امکان را می دهد که از موارد استدلال در مکالمات چند نوبتی هنگام استفاده از Responses API به صورت بدون حالت استفاده شود (مانند زمانی که پارامتر store روی false تنظیم شده است، یا زمانی که یک سازمان در برنامه حفظ صفر داده ثبت نام کرده است).
max_output_tokens
integer
حد بالایی برای تعداد توکن هایی که می توان برای یک پاسخ تولید کرد، از جمله خروجی قابل مشاهده به

نمونه کدهای درخواست

نکته مهم برای توسعه‌دهندگان:

برای احراز هویت، حتما کلید API خود را جایگزین YOUR_API_KEY کنید. هدر Authorization الزامی است.

import requests
import json

url = 'https://api.ai-kar.com/v1/chat/completions'
headers = {
    'Authorization': 'Bearer <YOUR_AI-KARAPI_KEY>',
    'Content-Type': 'application/json'
}
data = {
    'model': 'o1',
    'messages': [
        {
            'role': 'user',
            'content': 'Hello'
        }
    ]
}

response = requests.post(url, headers=headers, data=json.dumps(data))

if response.status_code == 200:
    print(response.json())
else:
    print(f'Error: {response.status_code}')
    print(response.text)

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