با اجرای یک مدل زبان بزرگ به صورت محلی در دستگاه لینوکس خود، یک ربات چت هوش مصنوعی شخصی ایجاد کنید.
مدلهای زبانی بزرگ این پتانسیل را دارند که شیوه زندگی و کار شما را متحول کنند و میتوانند مکالمه داشته باشند و به سؤالات با درجهای از دقت متفاوت پاسخ دهند.
برای استفاده از یکی، معمولاً به یک حساب کاربری با یک ارائه دهنده LLM و ورود از طریق یک وب سایت یا برنامه اختصاصی نیاز دارید. اما آیا می دانستید که می توانید مدل زبان بزرگ خود را کاملاً آفلاین در لینوکس اجرا کنید؟
چرا یک مدل زبان بزرگ در لینوکس اجرا کنیم؟
مدلهای زبان بزرگ (LLM) این روزها همه جا هستند و میتوانند زبان طبیعی را پردازش کنند و پاسخهای مناسبی ارائه دهند که میتواند شما را فریب دهد که فکر کنید یک انسان پاسخ داده است. مایکروسافت در حال ارائه نسخه جدیدی از Bing با هوش مصنوعی است، در حالی که Bard Alphabet اکنون بخشی جدایی ناپذیر از جستجوهای Google است.
به دور از موتورهای جستجو، می توانید از اصطلاحاً «چت ربات های هوش مصنوعی» برای پاسخ دادن به سؤالات، سرودن شعر یا حتی انجام تکالیف برای شما استفاده کنید.
اما با دسترسی آنلاین به LLM ها، به حسن نیت یک ارائه دهنده شخص ثالث وابسته هستید – که در هر زمان می توان آن را پس گرفت.
شما همچنین مشمول محدودیت های استفاده هستید. به عنوان مثال از OpenAI بخواهید که یک رمان رمانتیک وابسته به عشق شهوانی 6000 کلمه ای را در آلمان نازی بنویسد، و شما پاسخی مانند “عذرخواهی می کنم، اما نمی توانم آن داستان را برای شما تولید کنم” دریافت خواهید کرد.
هر چیزی که در LLM های آنلاین وارد می کنید برای آموزش بیشتر آنها استفاده می شود و داده هایی که ممکن است بخواهید محرمانه باقی بمانند ممکن است در آینده به عنوان بخشی از پاسخ به سؤال شخص دیگری منتشر شوند.
شما همچنین در معرض کمبود خدمات هستید زیرا سیستم مملو از کاربران است و برای مشترک شدن ناله میکنید، بنابراین میتوانید زمانی که تقاضا زیاد است به پلتفرم دسترسی داشته باشید.
Dalai یک پیاده سازی رایگان و متن باز از LLaMa LLM متا و Alpaca استنفورد است. به راحتی روی سختافزار معمولی اجرا میشود و یک رابط وب مفید و طیف وسیعی از قالبهای سریع ارائه میکند—بنابراین میتوانید هر آنچه را که میخواهید بپرسید، بدون ترس از اینکه یک مدیر حساب شما را ببندد، LLM از پاسخ دادن یا اتصال شما امتناع کند. در حال سقوط است.
وقتی یک LLM را به صورت محلی روی لینوکس نصب می کنید، مال شماست و می توانید هر طور که بخواهید از آن استفاده کنید.
چگونه Dalai را روی لینوکس نصب کنیم
ساده ترین راه برای نصب Dalai در لینوکس استفاده از Docker و Docker Compose است. اگر قبلاً اینها را ندارید، با راهنمای ما در مورد نحوه نصب Docker و Docker Compose مشورت کنید.
با این کار، شما آماده شروع نصب Dalai هستید. مخزن Dalai GitHub را کلون کنید و از دستور cd برای انتقال به آن استفاده کنید:
git clone https://github.com/cocktailpeanut/dalai.git && cd dalai
برای راه اندازی و اجرای Dalai با یک رابط وب، ابتدا فایل Docker Compose را بسازید:
docker-compose build
Docker Compose Python 3.11، Node Version Manager (NVM) و Node.js را دانلود و نصب می کند.
در مرحله هفتم از نهم، به نظر میرسد که با دانلود Dalai Docker Compose، بیلد متوقف میشود. نگران نباشید: استفاده از پهنای باند خود را بررسی کنید تا به خودتان اطمینان دهید که چیزی در حال وقوع است، و در حالی که منتظر هستید، تکامل موجودات مجازی را در ترمینال خود شبیه سازی کنید.
در نهایت، شما به خط فرمان بازگردانده می شوید.
مدل های Dalai و LLaMa/Alpaca برای اجرا به حافظه زیادی نیاز دارند. در حالی که هیچ مشخصات رسمی وجود ندارد، یک راهنمای تقریبی خوب 4 گیگابایت برای مدل 7B، 8 گیگابایت برای مدل 13B، 16 گیگابایت برای مدل 30B و 32 گیگابایت برای مدل 65B است.
مدلهای آلپاکا نسبتاً کوچک هستند و مدل 13B به 7.6 گیگابایت میرسد، اما وزن LLaMA میتواند بسیار زیاد باشد: دانلود معادل 13B با 60.21 گیگابایت عرضه میشود و مدل 65B نیم ترابایتی حماسی را بر روی هارد شما اشغال میکند. دیسک
تصمیم بگیرید که کدام مدل برای منابع شما مناسب است و از دستور زیر برای نصب آن استفاده کنید:
docker-compose run dalai npx dalai alpaca install 13B
یا:
docker-compose run dalai npx dalai llama install 13B
این احتمال وجود دارد که مدل های دانلود شده از طریق Dalai خراب شوند. اگر اینطور است، به جای آن، آنها را از Hugging Face بگیرید.
پس از بازگشت به خط فرمان، Docker Compose را در حالت جدا شده باز کنید:
docker-compose up -d
بررسی کنید که آیا ظرف به درستی کار می کند با:
docker-compose ps
اگر همه چیز همانطور که باید کار می کند، یک مرورگر وب باز کنید و localhost:3000 را در نوار آدرس وارد کنید.
با مدل زبان بزرگ خود در لینوکس سرگرم شوید
هنگامی که رابط وب باز می شود، یک کادر متنی را می بینید که می توانید درخواست های خود را در آن بنویسید.
نوشتن اعلانهای مؤثر دشوار است و توسعهدهندگان Dalai به کمک طیف وسیعی از الگوها ارائه کردهاند که به شما کمک میکنند تا پاسخ مفیدی از Dalai دریافت کنید.
اینها AI-Dialog، Chatbot، Default، Instruction، Rewrite، Translate و Tweet-sentiment هستند.
همانطور که انتظار دارید، قالبهای AI-Dialog و Chatbot به گونهای طراحی شدهاند که به شما امکان میدهد یک مکالمه با LLM داشته باشید. تفاوت اصلی بین این دو این است که چت بات قرار است “بسیار هوشمند” باشد، در حالی که AI-Dialog “مفید، مهربان، مطیع، صادق است و محدودیت های خود را می داند”.
البته، این «هوش مصنوعی» شماست، و اگر شما را راضی کرد، میتوانید اعلان را تغییر دهید تا ربات چت گنگ باشد و ویژگیهای گفتگوی هوش مصنوعی «سادیستی» و «غیر مفید» باشد. این به شما بستگی دارد.
ما تابع Translate را با کپی کردن پاراگراف آغازین یک خبر بی بی سی و درخواست از دالایی برای ترجمه آن به اسپانیایی آزمایش کردیم. ترجمه خوب بود، و وقتی آن را از طریق Google Translate اجرا کردیم تا آن را به انگلیسی برگردانیم، متوجه شدیم که کاملاً خوانا است و حقایق و احساسات قطعه اصلی را منعکس می کند.
به همین ترتیب، الگوی بازنویسی متن را به طور قانعکنندهای در آغاز یک مقاله جدید چرخاند.
دستورهای پیشفرض و دستورالعمل به گونهای طراحی شدهاند که به شما کمک کنند سؤال بپرسید یا مستقیماً به Dalai دستور دهید.
دقت Dalai در پاسخ بسته به مدلی که استفاده می کنید بسیار متفاوت است. یک مدل 30B بسیار مفیدتر از مدل 7B خواهد بود. اما حتی پس از آن، به شما یادآوری می شود که LLM ها به سادگی سیستم های پیچیده ای برای حدس زدن کلمه بعدی در یک جمله هستند.
نه مدل های 7B و نه 13B آلپاکا نتوانستند خلاصه 200 کلمه ای دقیقی از داستان کوتاه «گربه در باران» اثر ارنست همینگوی ارائه کنند و هر دو خطوط داستانی و جزئیاتی کاملاً قانع کننده در مورد آنچه که داستان در بر می گرفت را ایجاد کردند.
و در حالی که گفتگوی هوش مصنوعی «مفید، مهربان، مطیع، صادق» که «محدودیتهای خود را میداند» و «بسیار هوشمند» چت با درخواستهای بحثبرانگیز مخالفت میکند، میتوانید به Dalai یک دستور مستقیم یا درخواست پیشفرض بدهید و آن را بنویسد. هر چه دوست دارید – هر طور که دوست دارید.
یک مدل زبان بزرگ در ماشین لینوکس شما متعلق به شماست
با اجرای یک مدل زبان بزرگ در جعبه لینوکس خود، تحت نظارت یا لغو سرویس قرار نخواهید داشت. میتوانید بدون ترس از عواقب نقض خطمشی محتوای شرکتی از آن استفاده کنید.
اگر منابع محاسباتی شما کم است، حتی می توانید یک LLM را به صورت محلی روی Raspberry Pi ساده اجرا کنید.