پیشرفتهای مداوم در مدلهای بزرگ در پردازش زبان طبیعی (NLP) نحوه تعامل و تفسیر دادههای متنی را تغییر داده است. اگرچه این مدلها هوشمندی فوقالعادهای از خود نشان دادهاند، نگرانیها در مورد امنیت دادهها و حفظ حریم خصوصی، موانع قابلتوجهی را ایجاد کردهاند. برای رسیدگی به این مسائل، پروژه DB-GPT به عنوان یک راه حل جدید ظاهر می شود که کنترل کامل و حفظ حریم خصوصی بی نظیر را برای همه نیازهای NLP شما فراهم می کند. در این پست، به امکانات DB GPT، ویژگیهای متمایز آن و چگونگی تغییر صحنه NLP خواهیم پرداخت.
DB GPT چیست
DB GPT یک فناوری جدید پردازش زبان طبیعی (NLP) است که پایگاه داده شما را با یک مدل زبان بزرگ تقویت میکند. DB GPT ممکن است برای خودکارسازی طیف وسیعی از فرآیندهای پایگاه داده استفاده شود، مانند:
پرسش داده
ایجاد گزارش
ترجمه داده ها
طبقه بندی داده ها
پاسخ به سوالات
DB GPT هنوز در حال کار است، اما این پتانسیل را دارد که نحوه تعامل ما با پایگاههای داده را تغییر دهد. زبان طبیعی ممکن است برای دسترسی و تجزیه و تحلیل دادهها در DB GPT استفاده شود و کار شما را بسیار کارآمدتر و سازندهتر کند.
DB GPT یک فناوری جدید پردازش زبان طبیعی (NLP) است که پایگاه داده شما را با یک مدل زبان بزرگ تقویت میکند. DB GPT ممکن است برای خودکارسازی طیف گسترده ای از فرآیندهای پایگاه داده، از جمله پرس و جو داده ها، تولید گزارش، ترجمه داده ها، طبقه بندی داده ها و پاسخگویی به سؤالات استفاده شود. DB GPT هنوز در حال کار است، اما این پتانسیل را دارد که نحوه تعامل ما با پایگاههای داده را تغییر دهد.
نصب
نیازهای سخت افزار
از آنجایی که پروژه ما میتواند به عملکرد ChatGPT بیش از 85% برسد، نیازهای سختافزاری وجود دارد. با این حال، این پروژه ممکن است به طور کلی بر روی کارت های گرافیک درجه یک مصرف کننده مستقر و استفاده شود. موارد زیر الزامات سخت افزاری خاص برای استقرار است:
GPU
اندازه VRAM
عملکرد
RTX 4090
24 گیگابایت
مکالمه روان استنتاج
RTX 3090
24 گیگابایت
استنتاج گفتگوی روان، بهتر از V100
V100
16 گیگابایت
استنتاج مکالمه ممکن است، لکنت قابل توجه
نصب
این پروژه به یک سرویس پایگاه داده محلی MySQL وابسته است که باید به صورت محلی نصب شود. برای نصب، Docker را پیشنهاد می کنیم.
$ docker run --name=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=aa12345678 -dit mysql:latest
ما از پایگاه داده جاسازی کروما به عنوان پیشفرض برای پایگاه داده برداری خود استفاده میکنیم. ، بنابراین نیازی به نصب خاصی نیست. اگر می خواهید به پایگاه داده های دیگر متصل شوید، می توانید آنها را با استفاده از دستورالعمل های ما نصب و پیکربندی کنید. محیط مجازی miniconda3 در تمام مراحل نصب DB-GPT استفاده می شود. پایتون مورد نیاز را نصب کنید و یک محیط مجازی ایجاد کنید.
برای دریافت وزنهای Vicuna میتوانید به این سند مراجعه کنید: ویکونا .
اگر در این مرحله مشکل دارید، میتوانید مستقیماً از این مدل نیز استفاده کنید. پیوند به عنوان جایگزین.
$ python pilot/server/llmserver.py
$ python pilot/server/webserver.py
شما باید فایل .env را ویرایش کنید زیرا وب سرور باید به llmserver متصل شود. MODEL_SERVER = “http://127.0.0.1:8000” باید با آدرس IP شما جایگزین شود. بسیار مهم است.
دستورالعملهای استفاده
آنها یک رابط کاربری Gradio ارائه می کنند که به شما امکان می دهد با استفاده از رابط کاربری ما از DB-GPT استفاده کنید. آنها همچنین مقالات مرجع بسیاری (به زبان چینی) ایجاد کرده اند که کد و اصول مرتبط با پروژه ما را معرفی می کنند.
استفاده از چند LLM
برای استفاده از چندین مدل، از گزینه LLM_MODEL در فایل پیکربندی .env برای جابجایی بین آنها استفاده کنید.
1.در فهرست راهنمای پایلوت/مجموعه دادهها، فایلها یا پوشههای دانش شخصی را قرار دهید.
2. در فهرست ابزار، اسکریپت مخزن دانش را اجرا کنید.
& python tools/knowledge_init.py
--vector_name: نام ذخیره وکتور شما default_value:default
--append: حالت الحاق، True:append، False: not append default_value:False
3. در رابط، نام مخزن دانش خود را وارد کنید (اگر ارائه نشده است، از “پیشفرض” استفاده کنید) تا بتوانید بر اساس پایگاه دانش خود از آن برای پرسش و پاسخ استفاده کنید.
لازم به ذکر است که مدل برداری پیش فرض استفاده شده text2vec-big-chinese است (که مدل بزرگی است، بنابراین اگر پیکربندی رایانه شخصی شما کافی نیست، text2vec-base-chinese توصیه می شود). در نتیجه، مطمئن شوید که مدل را دانلود کرده و در دایرکتوری مدل ذخیره کرده اید.
اگر هنگام استفاده از پایگاه دانش با مشکلات مربوط به nltk مواجه شدید، باید جعبه ابزار nltk را نصب کنید. لطفاً برای اطلاعات بیشتر به اسناد زیر مراجعه کنید: اسناد nltk مفسر پایتون را وارد کنید دستورات زیر:
>>> وارد کردن>> nltk.download()
نسل SQL
ایجاد جدول SQL ایجاد کنید
تولید SQL اجرایی: برای تولید SQL اجرایی، ابتدا پایگاه داده مناسب را انتخاب کنید و سپس مدل ممکن است SQL را بر اساس اطلاعات طرح پایگاه داده تولید کند. نتیجه موفقیت آمیز اجرای آن به صورت زیر خواهد بود:
معماری DB-GPT
DB-GPT از FastChat برای توسعه یک سیستم عامل مدل بزرگ و یک مدل زبان بزرگ ارائه میدهد که توسط Vicuna هدایت میشود. علاوه بر این، ما ظرفیت پاسخگویی به سؤالات پایگاه دانش دامنه خصوصی را از طریق LangChain ارائه می دهیم. علاوه بر این، ما از افزونه های دیگر پشتیبانی می کنیم و معماری ما ذاتاً از افزونه Auto-GPT پشتیبانی می کند.
آیا معماری کل DB-GPT در شکل زیر نشان داده شده است:
قابلیتهای اصلی عمدتاً شامل بخشهای زیر است:
پشتیبانی از پایگاه دانش: عملکرد پاسخگویی به پرسش را برای پایگاههای دانش دامنه خصوصی ارائه میدهد.
قابلیت مدیریت مدل در مقیاس بزرگ: یک محیط عملیاتی مدل بزرگ را بر اساس FastChat فراهم میکند.
ذخیره سازی و نمایه سازی بردار داده یکپارچه: روشی واحد برای ذخیره و نمایه سازی چندین نوع داده.
ماژول اتصال: این ماژول برای اتصال چندین ماژول و منبع داده به منظور دستیابی به جریان داده و تعامل استفاده میشود.
نماینده و افزونهها: قابلیتهایی ارائه شده است که به کاربران امکان میدهد رفتار سیستم را تغییر داده و بهبود دهند.
ایجاد و بهینهسازی اعلان: بهطور خودکار درخواستهای با کیفیت بالا تولید میکند و آنها را برای افزایش کارایی پاسخ سیستم بهینه میکند.
رابط محصول چند پلتفرمی: از طیف وسیعی از محصولات مشتری، از جمله برنامه های وب، موبایل، و دسکتاپ پشتیبانی می کند.
ویژگی ها
قابلیت های زبان SQL
تولید SQL
تشخیص SQL
پرسش و پاسخ دامنه خصوصی و پردازش داده
پرسش و پاسخ دانش پایگاه داده
پردازش داده
افزونه ها
از وظایف اجرای سفارشی پلاگین پشتیبانی کنید و به طور بومی از افزونه Auto-GPT پشتیبانی کنید، مانند:
اجرای خودکار SQL و بازیابی نتایج پرس و جو
خزیدن خودکار و یادگیری دانش.
ذخیره سازی/فهرست سازی برداری یکپارچه پایگاه دانش
پشتیبانی از داده های بدون ساختار مانند PDF، Markdown، CSV، و WebURL
پشتیبانی از Milti LLM
از چندین مدل زبان بزرگ پشتیبانی میکند، در حال حاضر از Vicuna (7b، 13b)، ChatGLM-6b (int4، int8) پشتیبانی میکند