یه سری سیستمها هستن که بهشون میگن Task Oriented Dialogue systems یا همون TOD، که کارشون اینه توی چت و مکالمه طبیعی با کاربرها، یک کار خاص رو برامون انجام بدن. مثلاً فرض کن میخوای هتل رزرو کنی یا بلیت سینما بگیری و با یه ربات چت میکنی. این سیستمها دقیقا دنبال اینن که طبق سلیقه و اطلاعاتی که بهشون میگی، کارتو راست و ریس کنن.
حالا چون این روزا مدلهای زبان بزرگ (Large Language Models یا LLMها) مثل ChatGPT توی پردازش زبان طبیعی یا NLP (یعنی کارایی که با متن و زبان سر و کار دارن) ترکوندن و خیلی قوی شدن، اکثر این سیستمهای مکالمه محور جدید بر پایه همین مدلها ساخته میشن. یعنی میان قدرت و هوش LLMها رو برای این سیستمها استفاده میکنن تا مکالمهها راحتتر و هوشمندتر بشن.
یه نکته مهمی که این مقاله بهش میپردازه اینه که خیلی از این سیستمهای فعلی، یه بخشی به اسم برنامهریزی هدفمند (proactive planning، یعنی سیستم خودش بفهمه چطور به هدف برسه) رو جدی نمیگیرن یا درست اجرا نمیکنن. اکثراً فقط منتظر میشن کاربر بگه چی میخواد بعد همون رو اجرا کنن، اما خودشون اصلاً پیشبینی یا مدیریت درست و دقیقی روی مسیر رسیدن به هدف ندارن.
توی این مقاله، نویسندهها یه مدل جدید معرفی کردن که کلی کمک میکنه به مدیریت بهتر گفتوگوهایی که هدف خاصی دارن. این مدل بر اساس روشی به اسم اطلاعاتی یا Information State Approach ساخته شده؛ یعنی هر وضعیت گفتوگو رو با اطلاعات وسطی و ساختاری که توی مسیر جمع میشه، مدیریت میکنه.
خب، چطور این کارو انجام میدن؟
اول میان یه سری “اسلات” یا Slot (یعنی همون خونهها یا بخشهایی که اطلاعات کلیدی رو توشون میریزیم، مثلاً اسم شهر، تاریخ سفر،… توی نمونه هتل یا قطار) تعریف میکنن. بعد یه جورایی یه نقشه اطلاعاتی از چیزایی که کاربر میخواد رو میکشن. حالا توی این مسیر با بررسی اطلاعات میانی (یعنی همه چیزهایی که توی مکالمه رد و بدل میشه، نه فقط درخواست نهایی)، اتفاقات کلیدی و شرایط حساس رو شناسایی میکنن. و واسه هر یه از این شرایط مهم یه قطعه اطلاعاتی تعریف میشه.
وقتی بدونی چیا ممکنه پیش بیاد و اطلاعاتت طبقهبندی شده باشه، راحتتر میشه مسیر رسیدن به هدف رو مدیریت کرد! با ترکیبای مختلف این اطلاعات، وضعیتهای محدودی داریم، پس کار برای مدل سادهتر میشه. اینجاست که “حرکتهای مکالمه” (Dialogue Moves یعنی کارهایی که ربات یا کاربر انجام میدن تا اطلاعات جابجا بشه و وضعیت مکالمه تغییر کنه) تعریف میشه. یعنی دقیقاً مشخص میکنن چطور باید از یک وضعیت اطلاعاتی به وضعیت بعدی بری و چه کارهایی انجام شه.
استراتژی آپدیت یا Update Strategy هم داره که کمک میکنه مدل، اطلاعات جدیدی که میگیره رو قشنگ جایگذاری کنه و همه چی بهروز بمونه.
اینجا اصل داستان اینه که این مدل با استفاده از قابلیت «یادگیری در زمینه» یا In-Context Learning (یعنی مدل بزرگ زبان با دیدن نمونههای قبلی خودش یاد میگیره و پیش میره)، همه این حرکتها و وضعیتها رو اجرا میکنه.
یه ویژگی خفن این روش اینه که موقع پرس و جو از دیتابیس (Database Query یعنی همون جستجو توی بانک اطلاعاتی)، همه چیز حول اسلاتهای تعیینشده میچرخه و هر اسلات اطلاعات مربوط به خودش رو میگیره. بعد هم، ترتیب دادههایی که مدل از بانک اطلاعاتی میگیره بر اساس متن و بخشهایی که کاربر گفته مرتب میشه پس همه چی دقیقاً با سلیقه کاربر جور در میاد.
برای این که ببینن مدل واقعاً کارش چطوره، اومدن و با مجموعه مکالمات تستی MultiWOZ (یه دیتابیس خیلی معروف برای تست مکالمههای چندمنظوره)، این مدل رو امتحان کردن. جوری هم قوانین تست رو گذاشتن که تو هر مکالمه فقط یک موضوع باشه تا نتایج شفافتر باشه. نتیجه چی شده؟ این مدل توی دادن اطلاعات درست و رسیدن به موفقیت کلی، از مدلهای قبلی خیلی بهتر عمل کرده و حسابی پیشرفت داشته.
خلاصه کلام! این مدل جدید باعث میشه سیستمهای چتی که باهاش کار میکنیم وقتی یه کار خاص داریم، خیلی هوشمندتر و هدفمندتر باهامون ارتباط بگیرن و کار ما رو راه بندازن. واسه آینده هوش مصنوعی توی این حوزهها، خیلی خبر خوبیه!
منبع: +