يوفر هذا المستودع مواد نشر مدونة Redis/Microsoft المشتركة هنا. أنه يحتوي على دفتر Jupyter الذي يوضح كيفية استخدام Redis كقاعدة بيانات متجه لتخزين واسترداد متجهات المستند. يوضح دفتر الملاحظات أيضًا كيفية استخدام llamaindex لإجراء البحث الدلالي عن السياق داخل المستندات وتوفير تجربة تشبه chatbot باستخدام Openai.
يهدف برنامج LLM Document Chat هو تشغيل بيئة مختبر Jupyter Lab المقيد لضمان خبرة مثالية والحد الأدنى من بيئة بيثون. على الأقل ، ستحتاج إلى تثبيت سطح مكتب Docker ( الذي يأتي مع Docker Compose ) لتشغيل هذا المثال.
يحافظ المشروع على .env.template مع المتغيرات التالية المحددة مسبقًا:
# General OpenAI Env Vars
OPENAI_TEXT_MODEL=gpt-35-turbo
OPENAI_EMBEDDING_MODEL=text-embedding-ada-002
OPENAI_TEMPERATURE=0.7
OPENAI_MAX_TOKENS=50
# OpenAI Direct Env Vars
OPENAI_API_KEY= < your key here >
OPENAI_API_BASE=https://api.openai.com/v1/
# Azure OpenAI Env Vars
# OPENAI_API_VERSION=2023-05-15 # use OPENAI_API_VERSION only with Azure OpenAI
AZURE_EMBED_MODEL_DEPLOYMENT_NAME= < your deployment name here >
AZURE_TEXT_MODEL_DEPLOYMENT_NAME= < your deployment name here >
AZURE_OPENAI_API_BASE=https:// < your deployment name > .openai.azure.com/
# General Env Vars
CHUNK_SIZE=500
CHUNK_OVERLAP=0.2
# Redis Env Vars
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD= قم بعمل نسخة من هذا الملف لإنشاء .env على النحو التالي:
$ cp .env.template .envتحديث أجزاء من ملف ENV بناءً على اختياراتك أدناه:
ملاحظة إذا كنت تستضيف هذه العينة على Azure ، فيمكنك نشر Azure Openai و Azure Cache لـ Redis Enterprise بسرعة من خلال تشغيل الأوامر التالية:
az group create -n LLMDocChatRG -l eastus
az deployment group create --template-file infra b icep m ain.bicep -g LLMDocChatRGلإزالة جميع موارد Azure ، ما عليك سوى حذف مجموعة الموارد باستخدام:
az group delete -n LLMDocChatRG
يمكنك الاختيار بين Azure Openai Service (تم استضافتها بالكامل وإدارتها بواسطة Azure) و Openai Direct.
لاستخدام Azure Openai ، ستحتاج إلى اتباع هذه التعليمات
.env إضافة القيم المحددة لنشراتك. AZURE_EMBED_MODEL_DEPLOYMENT_NAME= < your deployment name here >
AZURE_TEXT_MODEL_DEPLOYMENT_NAME= < your deployment name here >
AZURE_OPENAI_API_BASE=https:// < your deployment name > .openai.azure.com/لاستخدام Openai ، ستحتاج إلى اتباع هذه التعليمات
.env إضافة القيم المحددة لنشراتك. OPENAI_API_KEY= < your key here >سيتطلب البرنامج التعليمي استخدام ميزات Redis Search & Query ، بما في ذلك دعم البحث عن التشابه المتجه. هناك ثلاثة خيارات لتشغيل Redis:
لكل منهما ، هناك حاجة إلى الخيارات التالية ويجب تحديثها في ملف .env المحلي الخاص بك:
REDIS_PASSWORD= < your password here >
REDIS_HOST= < your redis host address here >
REDIS_PORT= < your redis port here > هناك بعض ملفات docker-compose.yml في دليل docker والتي ستساعد على زيادة إعادة الصعود محليًا وإعادة تدوين في الحالة التي يتم فيها استخدام Redis عن بُعد (مثل Acre).
لفتح بيئة Jupyter من خلال Docker ، اتبع هذه الخطوات:
استنساخ هذا المستودع إلى جهازك المحلي.
انسخ .env.template إلى .env وتكوين القيم كما هو موضح أعلاه.
تشغيل مع Docker Compose:
لمؤسسة Cloud أو Azure Redis
docker compose -f docker/cloud/docker-compose.yml upلمكدس Redis المحلي (Docker)
docker compose -f docker/local/docker-compose.yml up افتح جلسة Jupyter Lab في متصفحك على http://127.0.0.1:8888/lab?token={YOUR GENERATED TOKEN} . تحقق من سجلات الطرفية لسلسلة الرمز المميز.