خروجی ساخت‌یافته

تصمیم‌گیری

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

POST/v1/decisions

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

  • predicate: گزاره‌ی بله/خیر. پاسخ یک probability است.
  • choice: انتخاب از choices. پاسخ شامل choice، احتمال هر گزینه و confidence است.
  • score: امتیاز روی levels. پاسخ شامل score (میانگین وزنی شماره‌ی سطح، از صفر)، احتمال هر سطح و confidence است.

پاسخ‌ها در آرایه‌ی answers و به ترتیب پرسش‌ها می‌آیند. اگر مدل به پرسشی پاسخ ندهد، آن عنصر type: "refusal" دارد و بقیه‌ی پرسش‌ها جواب می‌گیرند؛ پیش از خواندن فیلدها type هر پاسخ را بررسی کنید.

مدل‌های دسته‌ی تصمیم‌گیری و مدل‌های چتی که قابلیت decisions دارند (مانند openai/gpt-6-luna) پذیرفته می‌شوند. مدل چت با قیمت چت حساب می‌شود. این مسیر استریم ندارد. برای شکل بومی System One از /v1/systemone استفاده کنید.

نمونه‌ها

curl https://1ai.ir/v1/decisions \
  -H "Authorization: Bearer $ONEAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "typesafe/jev-latest",
  "input": "My order was charged twice and it still has not arrived.",
  "questions": [
    {
      "name": "urgent",
      "type": "predicate",
      "instructions": "Is this request urgent?"
    },
    {
      "name": "team",
      "type": "choice",
      "instructions": "Which team should answer?",
      "choices": [
        {
          "value": "billing",
          "description": "Payments, invoices and refunds"
        },
        {
          "value": "shipping",
          "description": "Delivery and tracking"
        },
        {
          "value": "other"
        }
      ]
    },
    {
      "name": "anger",
      "type": "score",
      "instructions": "How unhappy is the customer?",
      "levels": [
        {
          "label": "calm"
        },
        {
          "label": "unhappy"
        },
        {
          "label": "furious"
        }
      ]
    }
  ]
}'
200پاسخ
{
  "model": "typesafe/jev-latest",
  "answers": [
    {
      "type": "predicate",
      "name": "urgent",
      "probability": 0.95
    },
    {
      "type": "choice",
      "name": "team",
      "choice": "billing",
      "probabilities": [
        {
          "value": "billing",
          "probability": 0.93
        },
        {
          "value": "shipping",
          "probability": 0.06
        },
        {
          "value": "other",
          "probability": 0.01
        }
      ],
      "confidence": 0.88
    },
    {
      "type": "score",
      "name": "anger",
      "score": 1.4,
      "probabilities": [
        {
          "value": 0,
          "label": "calm",
          "probability": 0.1
        },
        {
          "value": 1,
          "label": "unhappy",
          "probability": 0.4
        },
        {
          "value": 2,
          "label": "furious",
          "probability": 0.5
        }
      ],
      "confidence": 0.62
    }
  ],
  "usage": {
    "input_tokens": 337,
    "output_tokens": 61,
    "total_tokens": 398
  }
}

بدنه‌ی درخواست

  • modelstringالزامی

    شناسه‌ی مدل تصمیم‌گیری، یا مدل چتی که قابلیت decisions دارد.

  • inputstring | arrayالزامی

    متنی که پرسش‌ها درباره‌ی آن است. رشته تا ۵۰۰٬۰۰۰ نویسه یا آرایه با ۱ تا ۱۰۰۰ عنصر.

  • questionsarrayالزامی

    بین ۱ تا ۴۰۰ پرسش. اگر name بدهید، نام‌ها باید یکتا باشند.

    ویژگی‌های داخلی
    • typestringالزامی

      نوع پرسش.

      مقادیر مجاز:predicatechoicescore
    • instructionsstringالزامی

      متن پرسش، تا ۲۰٬۰۰۰ نویسه.

    • namestring

      نام پرسش (تا ۱۰۰ نویسه). در پاسخ هم برمی‌گردد و به شناسایی پاسخ کمک می‌کند.

    • choicesarray

      گزینه‌ها، از ۲ تا ۲۵۵ مورد. برای choice الزامی است.

      ویژگی‌های داخلی
      • valuestring | number | booleanالزامی

        مقدار گزینه؛ همین مقدار در choice پاسخ برمی‌گردد.

      • descriptionstring

        توضیح گزینه برای مدل (تا ۲۰۰۰ نویسه).

    • levelsarray

      سطح‌های امتیاز، از ۲ تا ۱۰ مورد و به ترتیب. برای score الزامی است.

      ویژگی‌های داخلی
      • labelstringالزامی

        برچسب سطح.

      • descriptionstring

        توضیح سطح برای مدل (تا ۲۰۰۰ نویسه).

  • streamboolean

    فقط false پذیرفته می‌شود؛ این مسیر استریم ندارد.

خطاها

  • invalid_request400

    بدنه معتبر نیست؛ مثلاً پرسش choice بدون choices، نام تکراری، یا فیلد options/criteria. param مسیر فیلد را می‌گوید.

  • model_kind_mismatch400

    مدل برای تصمیم‌گیری نیست و قابلیت decisions هم ندارد.

  • insufficient_credits402

    اعتبار برای این درخواست کافی نیست.

  • model_not_found404

    مدل وجود ندارد یا به آن دسترسی ندارید.

صفحه‌های مرتبط