Jev مدل تازه TypeSafe AI برای تصمیمگیری ساختاریافته است. برخلاف مدلهای چت که جمله تولید میکنند، Jev وضعیت مسئله و چند سؤال مشخص را میگیرد و پاسخهایی مانند انتخاب یک گزینه، امتیاز یا احتمال برمیگرداند. اگر کار شما دستهبندی تیکت، اولویتبندی درخواست یا انتخاب مسیر بعدی یک گردشکار است، این تفاوت مهمتر از نام مدل است. اما Jev برای نوشتن مقاله، گفتوگو یا تولید کد ساخته نشده است.
نسخه typesafe/jev-1.13 در کاتالوگ OpenRouter با خروجی decisions عرضه میشود. پاستا آن را با API هوش مصنوعی و پرداخت تومانی در مسیر مستقلی در اختیار برنامه قرار میدهد. این مدل را نباید به /chat/completions یا OpenAI SDK برای چت فرستاد؛ قرارداد درخواست و پاسخ آن متفاوت است.
Jev دقیقاً چه کاری میکند؟
در درخواست، فیلد state وضعیت را بهشکل متن یا شیء JSON توصیف میکند. در questions، سؤالها، نوع پاسخ و معیار هر گزینه را تعریف میکنید. برای مثال، گزارش مشتری را به تیم پشتیبانی مناسب بفرستید و همزمان احتمال باگبودن آن را بسنجید. خروجیِ هر سؤال در answers قرار میگیرد. این ساختار باعث میشود برنامه بهجای استخراج جواب از متن آزاد، مقدار مشخص را بخواند.
سه نوع سؤال در قرارداد فعلی وجود دارد: noul برای ارزیابی دودویی با مقدار احتمالی، choice برای انتخاب از گزینههای نامگذاریشده و score برای امتیازدهی بر پایه معیارهای مرتب. نوع پاسخ و تعریف معیار را متناسب با همان تصمیم انتخاب کنید. احتمال یا اعتماد مدل تضمین صحت نیست؛ برای تصمیم مالی، تغییر داده مشتری یا عملیات برگشتناپذیر، آستانه و بازبینی انسانی بگذارید.
تفاوت Jev با مدل چت و خروجی JSON چیست؟
| نیاز | گزینه مناسبتر | دلیل |
|---|---|---|
| تولید پاسخ، توضیح، خلاصه یا کد | مدل چت | خروجی آزاد و قابل خواندن برای انسان لازم است. |
| انتخاب محدود، رتبهبندی یا مسیریابی سریع | Jev | پرسش و دامنه پاسخ از قبل مشخص است. |
| گفتوگو همراه تصمیم نهایی | ترکیب هر دو | مدل چت متن را تولید کند و یک مرحله تصمیمگیری جدا خروجی لازم را ارزیابی کند. |
Jev جایگزین عمومی LLM نیست. TypeSafe آن را در رده System One معرفی کرده و برای تصمیمهای تایپشده طراحی کرده است. ادعاهای سرعت و دقت را با داده و سناریوی خودتان بسنجید؛ نتایج معرفی سازنده را بهجای تضمین عملکرد برنامه خود در نظر نگیرید.
آموزش استفاده از Jev 1.13 با API پاستا
- در پنل پاستا، از «مدلها و قیمتها» شناسه
typesafe/jev-1.13و قیمت روز آن را بررسی کنید. این مدل با نشان «تصمیمگیری» از مدلهای چت جداست. - در «کلیدهای API» کلیدی مختص برنامه بسازید و در صورت نیاز آن را فقط به Jev محدود کنید. سقف هزینه روزانه یا ماهانه مناسب بگذارید. کلید را در Secret سمت سرور نگه دارید.
- وضعیت و پرسشها را با
POST https://console.paasta.cloud/api/ai/v1/decisionsبفرستید. ازIdempotency-Keyیکتا برای هر عملیات استفاده کنید. answersو شناسه درخواست را بخوانید و در «مصرف و لاگها» توکن و هزینه واقعی را ببینید. خطا یا پاسخ ناقص نباید به تصمیم خودکار تبدیل شود.
curl https://console.paasta.cloud/api/ai/v1/decisions \
-H "Authorization: Bearer $PAASTA_AI_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: ticket-42" \
-d '{"model":"typesafe/jev-1.13","state":{"ticket":"صفحه پرداخت خالی میشود"},"questions":{"is_bug":{"type":"noul","instructions":"آیا این گزارش یک باگ است؟","criteria":{"true":"رفتار خراب یا غیرمنتظره","false":"پرسش یا درخواست ویژگی"}}}}'
برای پرسشهای choice، معیارها باید یک شیء از نام گزینه به توضیح آن باشند؛ برای score، معیارها آرایهای مرتباند. نمونه کامل هر سه نوع و جزئیات خطا در راهنمای API پاستا و مستندات رسمی Decisions آمده است.
از پاسخ Jev چگونه استفاده کنیم؟
در مثال بالا، پاسخ احتمالی در answers.is_bug.noul میآید. اگر مقدار آن ۰٫۹۶ باشد، یعنی مدل احتمال بالایی برای گزینه «باگ» برآورد کرده است؛ نه اینکه باگبودن را اثبات کرده باشد. آستانه تصمیم را از پیش و بر اساس دادهٔ واقعی خودتان تعیین کنید. مثلاً برای ۰٫۸ به بالا تیکت را به صف بررسی باگ ببرید، برای بازه میانی به کارشناس ارجاع دهید و برای مقدار پایین برچسب قطعی نزنید. این آستانه صرفاً نمونه طراحی است، نه توصیه عمومی برای همه کسبوکارها.
اگر هدف انتخاب تیم است، یک سؤال choice با معیارهای payments، frontend و account تعریف کنید. پاسخ choice باید یکی از همان نامهای تعریفشده باشد؛ مقدار ناشناخته را نپذیرید. برای امتیاز فوریت، score را با فهرستی مرتب از «قابل انتظار تا انتشار بعدی» تا «مسدودکننده پرداخت» بسازید. پیش از متصلکردن مدل به عملیات خودکار، خطا، پاسخ خالی، زمانپایان درخواست و تکرار ارسال را نیز در برنامه مدیریت کنید.