
26 آوریل 2023 -توسط آنا جانکا، ETH زوریخ
LMQL به کاربر این امکان را می دهد که زبان های طبیعی و برنامه نویسی را هنگام فرمول بندی یک جستجو ترکیب کند. اعتبار: آزمایشگاه SRI / ETH زوریخ
محققان ETH زوریخ یک پلتفرم منبع باز و زبان برنامه نویسی جدید به نام LMQL ایجاد کردند. این زبان برنامه نویسی تعامل با مدل های زبان بزرگ مانند ChatGPT را آسان تر، ارزان تر و ایمن تر می کند.
مدل زبان ChatGPT به طور گسترده توسط افراد جامعه فناوری و عموم مردم شناخته شده است. از طریق یک ربات چت، می توان بدون نیاز به هیچ مهارت برنامه نویسی، مستقیماً با این مدل های زبان تعامل کرد. به جای استفاده از کد، کاربر می تواند دستورات و سوالات را با زبان طبیعی وارد کند.
گاهی اوقات این تعامل به خوبی کار می کند و نتیجه مورد نظر روی صفحه ظاهر می شود. با این حال، در زمانهای دیگر، مدل زبان دستور را نمیفهمد و خروجی تولید شده میتواند به طور غیرمنتظره یا حتی رضایت بخش نباشد. کاری که مردم معمولاً به عنوان پاسخ انجام می دهند این است که با پرس و جوی دیگری پیگیری می کنند. سپس ChatGPT سعی می کند اشتباهات خود را تصحیح کرده و پاسخ خود را تطبیق دهد. این روش استفاده از یک مدل زبان کثیف و تصادفی است و ممکن است مدتی طول بکشد تا به نتیجه مطلوب برسید.
برای حل این مشکل، محققان ETH اکنون یک زبان برنامه نویسی جدید و پلت فرم منبع باز به نام LMQL (زبان پرس و جو مدل زبان) توسعه دادند. استفاده از LMQL به کاربر این امکان را میدهد تا با مدلهای زبان بزرگی مانند ChatGPT به شیوهای بالاتر و کنترلشدهتر تعامل داشته باشد. این زبان برنامه نویسی روش جدیدی از برنامه نویسی را امکان پذیر می کند و شکل جدیدی از تعامل کامپیوتر و انسان است زیرا کاربر می تواند مستقیماً با رایانه صحبت کرده و به آن آموزش دهد.
LMQL اولین زبانی است که قدرت زبان های طبیعی و برنامه نویسی را برای تعامل با این مدل های زبان بزرگ ترکیب می کند. برای پرس و جوهای ساده، کافی است ChatGPT را با استفاده از زبان طبیعی هدایت کنید. با این حال، برای کارهای پیچیده تر و خاص تر، مانند ایجاد پایگاه داده یا تجزیه و تحلیل داده ها، آموزش دقیق مدل زبان ضروری است. بنابراین، فرمالیسم زبان های برنامه نویسی برای هدایت مدل زبان با ساختارهای رسمی مورد نیاز است تا اطمینان حاصل شود که کاربر خروجی مورد نظر را دریافت می کند.
مارتین وچف، استاد علوم کامپیوتر و یکی از خالقان، توضیح می دهد: “در اصل، این روش بسیار مختصرتر برای رسیدن به آنچه می خواهید است. کاهش مبادلات لازم با مدل زبان نیز هزینه های تعامل با مدل را کاهش می دهد، که این امر باعث کاهش می شود. می تواند بسیار گران باشد. استفاده از LMQL شانس دریافت خروجی مورد نظر را افزایش می دهد. حتی گاهی اوقات به دست آوردن نتیجه ای که در غیر این صورت هرگز به آن نمی رسید ممکن می شود زیرا می توانید پرس و جوی خود را با دقت بیشتری فرموله کنید.”
مجموعههای دادهای که مدلهای زبانی بزرگ با آنها آموزش داده میشوند و بر اساس آنها ساخته شدهاند، آنقدر عظیم هستند که کاربر نمیتواند آنچه را که در داخل مدل اتفاق میافتد کنترل و درک کند. به همین دلیل، این مدل ها گاهی اوقات می توانند خروجی های غیرمنتظره یا بحث برانگیزی تولید کنند. به گفته محققان، یکی از مشکلات اساسی افرادی که از این مدلهای زبانی بزرگ استفاده میکنند این است که نمیتوانند بفهمند چرا نتیجه خاصی تولید شده و چگونه از آن جلوگیری کنند.
LMQL به کاربر خود اجازه می دهد تا محدودیت های ایمنی را بیان کند که می تواند به هدایت مدل در جهت درست کمک کند و سعی کند آن را از خروجی های ناخواسته یا غیرمنتظره دور کند. “با استفاده از LMQL، می توانید مدل زبان خود را محدود کنید تا به طور دقیق از چارچوب خاصی که طراحی کرده اید پیروی کند. این به شما امکان می دهد تا نحوه رفتار مدل زبان را بهتر کنترل کنید. البته، پیشگیری کامل تضمین شده از رفتار بد هنوز بسیار سخت است، اما لوکا بیر-کلنر، یکی از محققان توضیح می دهد که LMQL یک قدم در این مسیر است. به عنوان مثال، LMQL به کاربر اجازه می دهد تا کلمات خاصی را حذف کند یا از رفتن مدل در جهت های خاص استدلال جلوگیری می کند.
بسیاری از شرکت ها مدل های زبان بزرگ خود را پشت درهای بسته توسعه می دهند. به همین دلیل، مدل های زبان بزرگ غیرشفاف می شوند و استدلال آنها در پشت خروجی خاص برای کاربر غیرقابل درک است. به گفته محققان، برای مقابله با این امر، دانشگاه ها باید ابزارهای منبع باز مانند LMQL تولید کنند که برای مردم شفاف، در دسترس و سازگار باشد.
مارک فیشر، که زبان برنامه نویسی جدید را نیز توسعه داده است، ادامه می دهد: “من فکر می کنم هم برای افراد فنی و هم برای افراد غیر فنی، داشتن این منبع باز برای دیدن آنچه در حال وقوع است بسیار مهم است نه اینکه LMQL یک جعبه سیاه جادویی باشد. به خصوص از آنجایی که تحقیق در مورد مدل های زبان با سرعتی دیوانه کننده در حال حرکت است، بسیار مهم است که LMQL به طور همزمان شفافیت را ارائه دهد و توسعه سریع را امکان پذیر کند.”
LMQL از دیدگاه نحوی یک زبان اعلانی و شبیه به SQL است. بنابراین، این یک زبان بسیار در دسترس است که به تخصص کمتری برای دستیابی به نتایج مطلوب نیاز دارد. زبان برنامه نویسی جدید همچنین می تواند به عنوان یک ابزار نوآورانه برای محققان رشته های مختلف عمل کند