Text Models (LLM)openai

معرفی و مستندات مدل هوش مصنوعی gpt-4o-mini-audio-preview

مستندات مدل gpt-4o-mini-audio-preview ارائه شده توسط ای آی کار (AI-KAR)

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

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

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

معرفی مدل gpt-4o-mini-audio-preview

مدل gpt-4o-mini-audio-preview یک نسخه پیش‌نمایش از مدل کوچک‌تر GPT-4o Audio است. این مدل از طریق REST API هم صوت و هم متن را به عنوان ورودی و خروجی پشتیبانی می‌کند. شما می‌توانید از طیف گسترده‌ای از فرمت‌های صوتی برای خروجی انتخاب کنید و صدایی که مدل برای پاسخ‌های صوتی استفاده می‌کند را مشخص کنید.

قابلیت‌ها و کاربردها

مدل gpt-4o-mini-audio-preview با هدف ارائه یک راهکار سریع و کارآمد برای پردازش و تولید محتوای صوتی و متنی توسعه یافته است. این مدل می‌تواند در زمینه‌های مختلفی مورد استفاده قرار گیرد، از جمله:

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

مزایای استفاده از gpt-4o-mini-audio-preview

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

  • سرعت و کارایی: به دلیل حجم کوچک‌تر، این مدل نسبت به مدل‌های بزرگ‌تر GPT-4o سریع‌تر و کارآمدتر است.
  • پشتیبانی از فرمت‌های صوتی متنوع: امکان انتخاب از بین فرمت‌های صوتی مختلف برای خروجی.
  • قابلیت تنظیم صدا: امکان تعیین صدای مورد نظر برای پاسخ‌های صوتی.
  • ادغام آسان: ادغام آسان با سایر سیستم‌ها و برنامه‌ها از طریق REST API.

نحوه شروع کار

برای شروع کار با مدل gpt-4o-mini-audio-preview، ابتدا باید یک کلید API از ای آی کار (AI-KAR) دریافت کنید. سپس می‌توانید از طریق REST API به مدل دسترسی پیدا کرده و درخواست‌های خود را ارسال کنید. برای اطلاعات بیشتر در مورد نحوه دریافت کلید API و استفاده از API، به مستندات مربوطه مراجعه کنید.

نکات مهم

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

این مدل یک ابزار قدرتمند برای پردازش و تولید محتوای صوتی و متنی است که می‌تواند به شما در حل بسیاری از چالش‌های موجود در این زمینه کمک کند. با استفاده از gpt-4o-mini-audio-preview، می‌توانید برنامه‌ها و سیستم‌های هوشمندی را ایجاد کنید که قادر به درک و پاسخگویی به نیازهای کاربران به صورت صوتی و متنی باشند.

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

پارامترنوعتوضیحات و مقادیر
model
stringRequired
مدل مورد استفاده برای تکمیل گفتگو. مقدار این پارامتر باید 'gpt-4o-mini-audio-preview' باشد.
مقادیر مجاز (کلیک برای کپی):
messages
one of[]Required
لیستی از پیام‌ها که مکالمه را تا به اینجا تشکیل می‌دهند. بسته به مدلی که استفاده می‌کنید، انواع مختلف پیام (modalities) مانند متن، اسناد (txt, pdf)، تصاویر و صدا پشتیبانی می‌شوند.
max_completion_tokens
integer
حد بالایی برای تعداد توکن‌هایی که می‌توانند برای یک تکمیل تولید شوند، از جمله توکن‌های خروجی قابل مشاهده و توکن‌های استدلال. حداقل مقدار: 1
max_tokens
number
حداکثر تعداد توکن‌هایی که می‌توانند در تکمیل چت تولید شوند. این مقدار می‌تواند برای کنترل هزینه‌های متن تولید شده از طریق API استفاده شود. حداقل مقدار: 1
stream
boolean
اگر روی True تنظیم شود، داده‌های پاسخ مدل به صورت جریانی (stream) با استفاده از رویدادهای ارسال شده از سرور (server-sent events) به کلاینت ارسال می‌شوند. مقدار پیش‌فرض: false
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
اینکه آیا فراخوانی موازی تابع در طول استفاده از ابزار فعال شود یا خیر.
n
integer | nullable
تعداد انتخاب‌های تکمیل چت که برای هر پیام ورودی باید تولید شود. توجه داشته باشید که هزینه بر اساس تعداد توکن‌های تولید شده در تمام انتخاب‌ها محاسبه می‌شود. مقدار n را 1 نگه دارید تا هزینه‌ها به حداقل برسد.
logit_bias
object | nullable
احتمال ظاهر شدن توکن‌های مشخص شده در تکمیل را تغییر می‌دهد. یک شی JSON را می‌پذیرد که توکن‌ها (مشخص شده توسط ID توکن آن‌ها در توکن‌ساز) را به یک مقدار بایاس مرتبط از -100 تا 100 نگاشت می‌کند. از نظر ریاضی، بایاس به logits تولید شده توسط مدل قبل از نمونه‌برداری اضافه می‌شود. اثر دقیق برای هر مدل متفاوت خواهد بود، اما مقادیر بین -1 و 1 باید احتمال انتخاب را کاهش یا افزایش دهند. مقادیری مانند -100 یا 100 باید منجر به ممنوعیت یا انتخاب انحصاری توکن مربوطه شوند.
frequency_penalty
number | nullable
عددی بین -2.0 و 2.0. مقادیر مثبت، توکن‌های جدید را بر اساس فراوانی موجود آن‌ها در متن تا به امروز جریمه می‌کنند، و احتمال تکرار عین به عین همان خط توسط مدل را کاهش می‌دهند.
presence_penalty
number | nullable
مقادیر مثبت، توکن‌های جدید را بر اساس اینکه آیا در متن تا به امروز ظاهر شده‌اند یا خیر، جریمه می‌کنند، و احتمال صحبت کردن مدل در مورد موضوعات جدید را افزایش می‌دهند.
seed
integer
این ویژگی در حالت بتا است. اگر مشخص شود، سیستم ما تمام تلاش خود را می‌کند تا به صورت قطعی نمونه‌برداری کند، به طوری که درخواست‌های مکرر با همان seed و پارامترها باید نتیجه یکسانی را برگردانند. حداقل مقدار: 1
temperature
number
از چه دمای نمونه‌برداری استفاده شود. مقادیر بالاتر مانند 0.8 خروجی را تصادفی‌تر می‌کنند، در حالی که مقادیر پایین‌تر مانند 0.2 آن را متمرکزتر و قطعی‌تر می‌کنند. ما به طور کلی توصیه می‌کنیم این یا top_p را تغییر دهید، اما نه هر دو را.
top_p
number
جایگزینی برای نمونه‌برداری با دما، به نام نمونه‌برداری هسته‌ای، که در آن مدل نتایج توکن‌ها را با جرم احتمال top_p در نظر می‌گیرد. بنابراین 0.1 به این معنی است که فقط توکن‌هایی که 10٪ جرم احتمال برتر را تشکیل می‌دهند در نظر گرفته می‌شوند. ما به طور کلی توصیه می‌کنیم این یا دما را تغییر دهید، اما نه هر دو را.
audio
object | nullable
پارامترها برای خروجی صدا. هنگامی که خروجی صدا با modalities: ["audio"] درخواست می‌شود، مورد نیاز است.
modalities
string · enum[] | nullable
انواع خروجی که می‌خواهید مدل تولید کند. اکثر مدل‌ها قادر به تولید متن هستند، که مقدار پیش‌فرض است: ["text"] مدل gpt-4o-audio-preview همچنین می‌تواند برای تولید صدا استفاده شود. برای درخواست اینکه این مدل هم پاسخ‌های متنی و هم صوتی تولید کند، می‌توانید از این استفاده کنید: ["text", "audio"]
مقادیر مجاز (کلیک برای کپی):

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

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

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

from openai import OpenAI
import base64
import os
client = OpenAI(
    base_url = "https://api.ai-kar.com/v1",
    # Insert your ای آی کار (AI-KAR) key instead of <YOUR_AI-KARAPI_KEY>:
    api_key = "<YOUR_AI-KARAPI_KEY>"
)

def main():
    response = client.chat.completions.create(
        model="gpt-4o-mini-audio-preview",
        modalities=["text", "audio"],
        audio={"voice": "alloy", "format": "wav"},
        messages=[
            {
                "role": "system",
                "content": "Speak english"  # Your instructions for the model
            },
            {
                "role": "user",
                "content": "Hello"  # Your question (insert it istead of Hello)
            }
        ],
        max_tokens=6000,
    )

    wav_bytes = base64.b64decode(response.choices[0].message.audio.data)
    with open("audio.wav", "wb") as f:
        f.write(wav_bytes)

    dist = os.path.abspath("audio.wav")
    print("Audio saved to:", dist)

if __name__ == "__main__":
    main()

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