PrivateGPT: قدرتمندترین و ایمن ترین مدل زبان هوش مصنوعی
PrivateGPT یک سرویس منحصر به فرد و انقلابی است که به شما امکان می دهد مدل های شخصی سازی شده GPT-3 خود را بدون نیاز به کدنویسی یا دانش فنی بسازید. در این مقاله، PrivateGPT را تعریف می کنیم، توضیح می دهیم که چگونه کار می کند، و چرا باید از آن برای اهداف شخصی یا شرکتی استفاده کنید.
PrivateGPT چیست؟
با استفاده از قدرت LLM، بدون اتصال به اینترنت از اسناد خود سؤال بپرسید. 100% خصوصی، هیچ داده ای در هیچ نقطه ای از محیط اجرای شما خارج نمی شود. میتوانید بدون اتصال به اینترنت، اسناد را جذب کنید و سؤال بپرسید.
PrivateGPT اصطلاحی است که به محصولات یا راه حل های مختلفی اطلاق می شود که از مدل های هوش مصنوعی مولد مانند ChatGPT استفاده می کنند، به گونه ای که از حریم خصوصی کاربران و داده های آنها محافظت می کند. به عنوان مثال، PrivateGPT توسط Private AI ابزاری است که اطلاعات حساس درخواستهای کاربر را قبل از ارسال به ChatGPT حذف میکند و سپس اطلاعات موجود در پاسخ را بازیابی میکند. مثال دیگر PrivateGPT توسط privategpt.io است که یک چت بات است که به منابع مختلف داده های سازمانی مانند Notion، JIRA، Slack، GitHub و غیره متصل می شود و بر اساس دانش آن منابع به سوالات پاسخ می دهد. مثال سوم privateGPT.py توسط imartinez است که اسکریپتی است که از یک مدل زبان محلی مبتنی بر GPT4All-J برای تعامل با اسناد ذخیره شده در یک فروشگاه برداری محلی استفاده می کند. اینها برخی از روش هایی هستند که PrivateGPT می تواند برای استفاده از قدرت هوش مصنوعی مولد و در عین حال تضمین حریم خصوصی و امنیت داده ها استفاده شود.
تنظیم محیط
برای آماده کردن محیط خود برای اجرای کد بالا، ابتدا موارد زیر را نصب کنید:
pip install -r requirements.txt
تغییر نام example.env به .env و ویرایش مناسب متغیرها.
MODEL_TYPE: از LlamaCpp یا GPT4All پشتیبانی می کند
PERSIST_DIRECTORY: پوشه ای است که می خواهید Vectorstore شما در آن باشد
LLAMA_EMBEDDINGS_MODEL: مسیری به مدل جاسازیهای پشتیبانیشده LlamaCpp
MODEL_PATH: مسیری به LLM پشتیبانی شده از GPT4All یا LlamaCpp شما
MODEL_N_CTX: حداکثر محدودیت رمز برای هر دو مدل جاسازی و LLM
سپس، دو مدل را دانلود کرده و در فهرست زیر ذخیره کنید (حتماً env. خود را با مسیرهای مدل تغییر دهید):
- LLM: پیشفرض به ggml-gpt4all -j-v1.3-groovy.bin. اگر مدل دیگری سازگار با GPT4All-J را ترجیح می دهید، کافی است آن را دانلود کنید و در فایل
.env
خود به آن مراجعه کنید. - جاسازی: بهطور پیشفرض به ggml-model-q4_0.bin. اگر مدل Embeddings سازگار دیگری را ترجیح میدهید، فقط آن را دانلود کنید و در فایل
.env
خود به آن مراجعه کنید.
مجموعه داده آزمایشی
این مخزن از وضعیت رونوشت اتحادیه استفاده میکند. به عنوان مثال.
دستورالعملهایی برای دریافت مجموعه دادههای خودتان
همه فایلهای txt، .pdf یا csv. خود را در فهرست source_documents قرار دهید.
دستور زیر را اجرا کنید تا همه داده ها را وارد کنید.
python ingest.py
یک پوشه db
ایجاد می کند که در آن Vectorstore محلی ذخیره می شود. بسته به اندازه کاغذهای شما، این کار کمی طول می کشد. شما می توانید هر تعداد اسناد را که بخواهید آپلود کنید و همه آنها در پایگاه داده جاسازی های محلی ذخیره می شوند. اگر می خواهید از ابتدا شروع کنید، پوشه db
را حذف کنید.
لطفاً به خاطر داشته باشید که هیچ داده ای از محیط محلی شما در طول فرآیند دریافت خارج نمی شود. می توانید بدون اتصال به اینترنت مصرف کنید.
به صورت محلی، درباره اسناد خود سؤال بپرسید!
برای پرسیدن سوال، از دستور زیر استفاده کنید:
python privateGPT.py
و سپس منتظر بمانید تا اسکریپت بازخورد شما را بخواهد.
> درخواستی را وارد کنید:
اینتر را بزنید. 20-30 ثانیه (بسته به سیستم شما) صبر کنید زیرا مدل LLM دستور را جذب می کند و پاسخ را آماده می کند. سپس پاسخ و همچنین چهار منبعی را که به عنوان زمینه از اسناد شما استفاده کرده است منتشر می کند. سپس می توانید بدون اجرای مجدد اسکریپت یک سوال دیگر بپرسید. کافی است دوباره منتظر اعلان باشید.
شایان ذکر است که می توانید اتصال اینترنت خود را غیرفعال کنید و استنتاج اسکریپت همچنان کار می کند. هیچ داده ای از محیط اطراف شما خارج نمی شود.
برای پایان دادن به اسکریپت، exit
را تایپ کنید.
چگونه کار می کند؟
استفاده از مدلهای محلی صحیح و قابلیت LangChain، می توانید خط لوله کامل را به صورت محلی اجرا کنید، بدون اینکه اجازه دهید هیچ داده ای از محیط شما خارج شود، و با سرعت معقول.
ingest.py
سند را تجزیه می کند و با استفاده از LlamaCppEmbeddings با استفاده از ابزارهایLangChain
به صورت محلی جاسازی ها را ایجاد می کند. سپس نتیجه در یک پایگاه داده برداری محلی با استفاده از ذخیره بردارChroma
privateGPT.py
با استفاده از یک LLM محلی بر اساس GPT4All-J یاLlamaCpp
سؤالات را درک میکند و پاسخها را ایجاد میکند. زمینه پاسخ ها از فروشگاه برداری محلی با استفاده از جستجوی شباهت برای یافتن متن صحیح از اسناد استخراج می شود.GPT4All-J
در LangChain 0.0.162 معرفی شد.
ذخیره می شود.
بسته بندی
این مقاله برای کمک به یادگیری PrivateGPT است. ما اطمینان داریم که برای شما مفید بوده است. لطفاً نظرات و انتقادات خود را در بخش نظرات زیر به اشتراک بگذارید.