HuggingGpt

سید مرتضی مهدوی مرتضوی
 مقدمه: 
در این بلاگ یک چارچوب برای دسترسی به مدل های مختلف هوش مصنوعی بصورت خیلی سریعتر،بهینه تر و همچنین حل ساده تر مسائل دنیای واقعی معرفی کنیم.Hugginggpt این امکان را به ما میدهد که با یک مدل زبانی بزرگ ( مثل chatgpt) بتوانیم مسائل هوش مصنوعی خودمان را حل کنیم.برای مثال بجای اینکه برای تشخیص اشیا درون یک عکس خودمان یک مدل pretrained شده رو بیاریم در پایتون و عکس رو پردازش کرده و به آن feed کنیم میتوانیم تنها با استفاده از آپلود آن در huggingGpt این کار را با دسترسی به Interface هاگینگ فیس (HuggingFace) انجام دهیم.این نرم افزار 4 مرحله برای انجام تسکی که بهش محول شده داره: 
 
Task planning: 
در این مرحله مدل زبانی درخواست کاربر را دریافت کرده و اون رو به مجموعه ای دنباله دار از task های مختلف تبدیل میکند مانند مثال زیر:
image.png 303.59 KB

 
2-Model Selection 
در این مرحله مدل با بررسی تسک داده شده و وصل شدن به سرور هاگینگ فیس مدل مناسب رو انتخاب میکنه برای مثال اگه تسک تشخیص داده شده در مرحله اول تشخیص اشیا باشه 
 HuggingGpt احتمالا یک مدل از خانواده yolo انتخاب میکنه یا اگه تسک ما طبقه بندی عکس باشه یک مدل CNN یا Transformer ترین شده روی ImageNet رو انتخاب میکنه 

3-Task Execution 
در این مرحله HuggingGpt استنتاج رو روی داده ورودی انجام میده و مدل انتخاب شده در مرحله دوم رو روی اون تست میکنه و ریزالت خروجی رو بصورت یک HybridCheckpoint ذخیره میکنه(برای جزییات بیشتر میتونین به خود مقاله رجوع کنین)
image.png 297.34 KB

 
4-Response Generation 
در این مرحله HuggingGpt تمام داده های مراحل قبل رو ترکیب کرده به همراه نتایج inference مرحله سوم خروجی میده،همچنین عملکرد مدل رو هم گزارش میکنه که ببینیم ایا مدل بخوبی کار کرده یا نه
image.png 273.01 KB
 
یک نمونه مثال از اینکه چطور کار میکنه رو در زیر میبینین(از مقاله اصلی گرفته شده): 

GitHub Link: https://github.com/microsoft/JARVIS