Laravel AI Tasks؛ مدیریت کار هوش مصنوعی با صف، لاگ و کنترل هزینه
خلاصهٔ کاملتر
Laravel AI Tasks یه پکیجه که روی Laravel AI SDK سوار میشه، اون رو بهعنوان لایهی انتقال در نظر میگیره و قطعههای عملیاتی رو دورش اضافه میکنه. نویسنده توضیح میده که کار هوش مصنوعی رو بهشکل کلاسهای تسکِ قابلاستفادهی مجدد تعریف میکنی و بعد یا همزمان اجراش میکنی، یا روی صف میندازیش، یا جوابش رو استریم میگیری.
هر تسک یه پرامپت، پیام سیستمی و منطق پسپردازش رو تو یه شیء واحد جمع میکنه. سه حالت اجرا داره: همزمان، صفشده، و استریم با کالبک روی هر تکه. یه داشبورد هم زیر مسیر /ai-tasks هست که همهی اجراها رو با تعداد توکن، هزینه و جزئیات درخواست و پاسخ لیست میکنه.
همون شیء تسک رو میشه با Facadeِ AI به سه شکل اجرا کرد:
use Fomvasss\AiTasks\Facades\AI;
$response = AI::send(new SummarizeTask($text));
$runId = AI::queue(new SummarizeTask($text));
$response = AI::stream(new SummarizeTask($text), function (string $chunk) {
echo $chunk;
});حالت send جواب رو مستقیم برمیگردونه، queue یه شناسهی اجرا میده که تو داشبورد دنبالش کنی، و stream هم برای هر تکه یه کالبک صدا میزنه.
پشتیبانی از چند ارائهدهنده داره: OpenAI، Anthropic، Gemini، DeepSeek، Groq، Mistral، xAI و Ollama، با امکان جابهجایی در زمان اجرا و زنجیرهی fallback. تسکهای صفشده idempotent هستن، یعنی با یه کلید یکتا اجرای تکراری حذف میشه و کار دوبار انجام نمیشه.
بخش کنترل هزینه شاید مهمترین قسمتش باشه: قیمتگذاری برای هر ارائهدهنده و مدل قابل تنظیمه و پکیج بعد از هر فراخوانی هزینهش رو حساب میکنه. همین عددها به سقف بودجهی چندمستأجری وصل میشن، پس میتونی خرج ماهانهی هر سازمان رو محدود کنی و مصرف رو بین حسابها پایش کنی. یکپارچگی با tool و MCP، کش پرامپت Anthropic و حالت JSON برای خروجی ساختارمند هم هست.
نکات کلیدی:
- پکیجی روی Laravel AI SDK برای مدیریت عملیاتی کار هوش مصنوعی
- تعریف کار بهشکل کلاسهای تسک قابلاستفادهی مجدد
- سه حالت اجرا: همزمان، صفشده و استریم
- پشتیبانی از OpenAI، Anthropic، Gemini و چند ارائهدهندهی دیگه با fallback
- ردیابی هزینه و بودجهی جدا برای هر مستأجر
- داشبورد /ai-tasks برای دیدن توکن، هزینه و جزئیات هر اجرا




