
Dify کیا ہے؟
Dify ایک اوپن سورس پلیٹ فارم ہے جو بڑے لسانی ماڈلز سے چلنے والی ایپلی کیشنز تیار کرنے کے لیے استعمال ہوتا ہے۔ یہ بصری AI ورک فلو، بازیابی سے تقویت یافتہ جنریشن، ایجنٹ کی صلاحیتیں، ماڈل مینجمنٹ، مشاہد پذیری اور ایپلی کیشن APIs کو ایک ہی انٹرفیس میں یکجا کرتا ہے، جس سے ٹیموں کو پروٹو ٹائپس سے پروڈکشن تک پہنچنے میں مدد ملتی ہے۔
آپ میزبان Dify Cloud سروس کو کچھ بھی انسٹال کیے بغیر استعمال کر سکتے ہیں، یا Community Edition کو اپنے ماحول میں تعینات کر سکتے ہیں۔ اضافی ضروریات رکھنے والی تنظیموں کے لیے انٹرپرائز پر مرکوز اختیارات بھی دستیاب ہیں۔
اہم خصوصیات
- بصری ورک فلو: بصری کینوس پر AI ورک فلو بنائیں اور ان کی جانچ کریں۔
- ماڈلز کی وسیع معاونت: انفرنس فراہم کنندگان یا خود میزبانی کے حل کے ذریعے سیکڑوں ملکیتی اور اوپن سورس ماڈلز سے مربوط ہوں۔ معاون اختیارات میں GPT، Mistral، Llama 3 اور OpenAI API سے ہم آہنگ ماڈلز شامل ہیں۔
- Prompt IDE: پرامپٹس تیار کریں، ماڈل کی کارکردگی کا موازنہ کریں، اور چیٹ ایپلی کیشنز میں ٹیکسٹ ٹو اسپیچ جیسی صلاحیتیں شامل کریں۔
- RAG پائپ لائن: دستاویزات سے معلومات حاصل کریں اور بازیافت کریں، جس میں PDFs، پریزنٹیشنز اور دیگر عام فارمیٹس کے لیے بلٹ اِن ٹیکسٹ ایکسٹریکشن معاونت شامل ہے۔
- ایجنٹس اور ٹولز: LLM Function Calling یا ReAct استعمال کرتے ہوئے ایجنٹس متعین کریں۔ Dify میں Google Search، DALL·E، Stable Diffusion اور WolframAlpha سمیت 50 سے زیادہ بلٹ اِن ٹولز شامل ہیں، اور یہ حسب ضرورت ٹولز کی بھی معاونت کرتا ہے۔
- LLMOps: ایپلی کیشن لاگز اور کارکردگی کی نگرانی کریں، پھر پروڈکشن ڈیٹا اور تشریحات استعمال کرتے ہوئے پرامپٹس، ڈیٹاسیٹس اور ماڈلز کو بہتر بنائیں۔
- بطور سروس بیک اینڈ: متعلقہ APIs کے ذریعے Dify ایپلی کیشنز کو موجودہ کاروباری منطق میں مربوط کریں۔
- مشاہد پذیری کے انضمامات: Dify مشاہد پذیری کے اختیارات کی معاونت کرتا ہے، جن میں Opik، Langfuse اور Arize Phoenix شامل ہیں۔
Dify چلانے کا طریقہ منتخب کریں
Dify Cloud
Dify Cloud پلیٹ فارم آزمانے کا تیز ترین طریقہ ہے، کیونکہ اس کے لیے مقامی سیٹ اپ کی ضرورت نہیں ہوتی۔ پروجیکٹ کی README کے مطابق، اس کے sandbox پلان میں 200 مفت GPT-4 کالز شامل ہیں اور یہ خود تعینات کیے گئے ورژن میں دستیاب صلاحیتیں فراہم کرتا ہے۔
خود میزبانی والا Community Edition
خود میزبانی سے آپ کو اس ماحول پر کنٹرول حاصل ہوتا ہے جس میں Dify چلتا ہے۔ دستاویزی تنصیب کا آسان ترین طریقہ Docker Compose استعمال کرتا ہے۔
انٹرپرائز اور تنظیمی استعمال
Dify انٹرپرائز پر مبنی خصوصیات بھی فراہم کرتا ہے۔ تنظیمیں اپنی ضروریات اور لائسنسنگ کے اختیارات پر بات کرنے کے لیے Dify ٹیم سے رابطہ کر سکتی ہیں۔
Docker Compose کے ساتھ Dify انسٹال کریں
ضروریات کی جانچ کریں
شروع کرنے سے پہلے یقینی بنائیں کہ میزبان مشین درج ذیل کم از کم ضروریات پوری کرتی ہے:
- CPU: کم از کم 2 کورز
- میموری: کم از کم 4 GiB RAM
- Docker: انسٹال اور چل رہا ہو
- Docker Compose: ورژن 2.24.0 یا بعد کا
اگر Docker پہلے سے دستیاب نہیں ہے تو سرکاری Docker تنصیب گائیڈ استعمال کریں۔
سروسز شروع کریں
Dify ریپوزٹری کی چیک آؤٹ کی گئی کاپی سے پروجیکٹ اور Docker ڈائریکٹریز میں جائیں، مثال والی ماحول فائل کاپی کریں، اور سروسز شروع کریں:
cd dify
cd docker
cp .env.example .env
docker compose up -d-d اختیار کنٹینرز کو detached موڈ میں شروع کرتا ہے، جس سے وہ پس منظر میں چلتے رہتے ہیں۔
ڈیش بورڈ شروع کریں
سروسز شروع ہونے کے بعد براؤزر میں درج ذیل پتے کو کھولیں:
http://localhost/installڈیش بورڈ پر دکھائے گئے ابتدائی عمل کی پیروی کریں۔ اگر سیٹ اپ ناکام ہو جائے تو سرکاری خود میزبانی کے عمومی سوالات دیکھیں۔
وہ ڈویلپرز جو Dify میں تعاون یا ترمیم کرنا چاہتے ہیں، انہیں صرف Docker Compose کے فوری آغاز پر انحصار کرنے کے بجائے سرکاری سورس کوڈ تعیناتی گائیڈ استعمال کرنی چاہیے۔
بنیادی استعمال
1. ایک ماڈل منتخب کریں
Dify بہت سے میزبان انفرنس فراہم کنندگان اور خود میزبانی کے حل سے ماڈلز مربوط کر سکتا ہے۔ اپنی ایپلی کیشن کے لیے موزوں فراہم کنندہ اور ماڈل منتخب کریں۔ ہم آہنگ اختیارات میں GPT، Mistral، Llama 3 اور OpenAI API سے ہم آہنگ انٹرفیس کے ذریعے پیش کیے جانے والے ماڈلز شامل ہیں۔ فی الحال معاون انضمامات کے لیے ماڈل فراہم کنندگان کی فہرست دیکھیں۔
2. ورک فلو بنائیں اور آزمائیں
AI ایپلی کیشن کی منطق ترتیب دینے اور آزمانے کے لیے بصری کینوس استعمال کریں۔ ورک فلو اس وقت مفید ہوتے ہیں جب ایپلی کیشن کو ایک واحد پرامپٹ سے زیادہ کی ضرورت ہو، مثلاً جب ان پٹ کو پروسیس کر کے ماڈل کو بھیجنا، بازیافت شدہ معلومات سے تقویت دینا یا ٹولز کو منتقل کرنا ہو۔
- متعین کریں کہ ایپلی کیشن کو صارف سے کیا قبول کرنا چاہیے۔
- AI عمل کی نمائندگی کے لیے Dify کا بصری ورک فلو انٹرفیس استعمال کریں۔
- ورک فلو کو مناسب ماڈل سے مربوط کریں۔
- رویے کی جانچ کریں اور تیار کردہ نتائج کا جائزہ لیں۔
- ضرورت کے مطابق ورک فلو، پرامپٹس، ڈیٹاسیٹس یا ماڈل کے انتخاب کو بہتر بنائیں۔
3. Prompt IDE میں پرامپٹس تیار کریں
Prompt IDE کے ذریعے ایک انٹرایکٹو انٹرفیس میں پرامپٹس تیار اور ٹیسٹ کریں۔ آپ یہ فیصلہ کرنے سے پہلے ماڈلز کی کارکردگی کا موازنہ کر سکتے ہیں کہ ایپلیکیشن کے لیے کون سا ماڈل زیادہ موزوں ہے۔ چیٹ پر مبنی ایپلیکیشنز کے لیے IDE ٹیکسٹ ٹو اسپیچ جیسی خصوصیات بھی شامل کر سکتا ہے۔
4. RAG کے ذریعے معلومات شامل کریں
Dify کی RAG پائپ لائن دستاویزات کے اندراج اور بازیافت کا احاطہ کرتی ہے۔ معلومات پر مبنی ایک عام ایپلیکیشن معاون فائلوں، بشمول PDFs اور پریزنٹیشنز، کو شامل کر سکتی ہے، ان کا متن نکال سکتی ہے، اور صارف کو جواب دیتے وقت متعلقہ مواد بازیافت کر سکتی ہے۔
مثال کے طور پر، آپ ایک ایسا اسسٹنٹ بنا سکتے ہیں جو اندرونی دستاویزات سے سوالات کے جواب دے۔ صرف ماڈل کے پہلے سے موجود علم پر انحصار کرنے کے بجائے، ایپلیکیشن شامل کی گئی دستاویزات سے متعلقہ مواد بازیافت کر کے جواب تیار کرتے وقت اسے استعمال کر سکتی ہے۔
5. ٹول استعمال کرنے والا ایجنٹ بنائیں
ایسے کاموں کے لیے جن میں اقدامات یا بیرونی سروسز درکار ہوں، Function Calling یا ReAct کے ذریعے ایک ایجنٹ کی تعریف کریں۔ Google Search، DALL·E، Stable Diffusion، یا WolframAlpha جیسے بلٹ اِن ٹولز شامل کریں، یا اپنی ایپلیکیشن کے ڈیزائن کے مطابق معاون کسٹم ٹول سے مربوط ہوں۔
اس کی ایک مثال تحقیقی ایجنٹ ہے جو جواب تیار کرنے سے پہلے معلومات جمع کرنے کے لیے سرچ استعمال کرتا ہے۔ دوسری مثال تخلیقی ایجنٹ ہے جو صارف کی جانب سے بصری آؤٹ پٹ طلب کرنے پر تصویر تیار کرنے والا ٹول چلاتا ہے۔
6. APIs کے ذریعے ایپلیکیشن کو مربوط کریں
Dify کی صلاحیتوں کے لیے متعلقہ APIs دستیاب ہیں، جس سے مکمل شدہ ایپلیکیشن کسی دوسرے پروڈکٹ کے لیے بیک اینڈ کے طور پر کام کر سکتی ہے۔ جب آپ کی ویب ایپلیکیشن، اندرونی ٹول، یا کسی دوسرے کاروباری نظام کو Dify میں تیار کردہ منطق چلانے کی ضرورت ہو تو بیک اینڈ-ایز-اے-سروس کا یہ طریقہ استعمال کریں۔ موجودہ انضمامی ہدایات کے لیے سرکاری دستاویزات دیکھیں۔
نگرانی اور مسلسل بہتری
Dify کی LLMOps صلاحیتیں وقت کے ساتھ ایپلیکیشن کے لاگز اور کارکردگی کی نگرانی میں مدد دیتی ہیں۔ پروڈکشن ڈیٹا اور تشریحات پرامپٹس، ڈیٹاسیٹس، اور ماڈلز کے انتخاب میں بہتری کی رہنمائی کر سکتے ہیں۔ اس سے ایک تکراری ورک فلو بنتا ہے جس میں آپ ایپلیکیشن تعینات کرتے ہیں، اس کے رویے کا جائزہ لیتے ہیں، اور مشاہدہ شدہ نتائج کی بنیاد پر اسے بہتر بناتے ہیں۔
مزید مشاہداتی صلاحیتوں کے لیے Opik، Langfuse، اور Arize Phoenix کے ساتھ Dify کے انضمامات کا جائزہ لیں۔ اپنے ماحول کی ٹریسنگ، جائزے، اور نگرانی کی ضروریات کے مطابق انضمام منتخب کریں۔
اعلیٰ سطح کی سیٹ اپ تجاویز
ماحولیاتی متغیرات حسب ضرورت بنائیں
ضروری ابتدائی ڈیفالٹس docker/.env.example میں محفوظ ہوتے ہیں۔ فوری آغاز کی کمانڈ ان ڈیفالٹس کو docker/.env میں نقل کرتی ہے، اور حسب ضرورت تعیناتی کے لیے اسی فائل میں ترمیم کی جاتی ہے۔ اختیاری اعلیٰ سطح کے متغیرات موضوع کے لحاظ سے docker/envs/ کے تحت منظم ہیں۔
ترتیب تبدیل کرنے کے بعد docker ڈائریکٹری سے درج ذیل کمانڈ دوبارہ چلائیں:
docker compose up -dدستیاب تمام ترتیبات کی مکمل فہرست کے لیے ماحولیاتی متغیرات کی دستاویزات دیکھیں۔
Grafana کے ذریعے میٹرکس کی نگرانی کریں
کمیونٹی کی جانب سے تیار کردہ Grafana ڈیش بورڈ Dify کے PostgreSQL ڈیٹابیس کو ڈیٹا سورس کے طور پر استعمال کر سکتا ہے۔ یہ ایپلیکیشنز، ٹیننٹس، پیغامات، اور دیگر میٹرکس کی سطح پر نگرانی فراہم کرتا ہے۔
Kubernetes پر تعینات کریں
انتہائی دستیاب ماحول کے لیے README میں کمیونٹی کی جانب سے فراہم کردہ Helm چارٹس اور Kubernetes YAML فائلیں درج ہیں۔ دستیاب اختیارات میں شامل ہیں:
- LeoQuote کا Dify Helm چارٹ
- BorisPolonsky کا Dify Helm چارٹ
- magicsong کے AI چارٹس
- Winson-030 کی Kubernetes YAML فائلیں
- wyy-holding کی Kubernetes فائلیں
- Zhoneym کی Dify v1.6.0 کو معاونت دینے والی YAML فائلیں
یہ تعیناتی کے وسائل کمیونٹی کی شراکتیں ہیں، اس لیے انہیں پروڈکشن میں استعمال کرنے سے پہلے ان کی دستاویزات اور مطابقت کا جائزہ لیں۔
کلاؤڈ انفراسٹرکچر ٹولز استعمال کریں
پروجیکٹ README بڑے کلاؤڈ پلیٹ فارمز کے لیے کمیونٹی کی جانب سے فراہم کردہ تعیناتی کے اختیارات کی طرف بھی رہنمائی کرتا ہے:
- Terraform: Azure Global اور Google Cloud کے لیے کمیونٹی پروجیکٹس دستیاب ہیں۔
- AWS CDK: AWS نمونے EKS پر مبنی اور ECS پر مبنی خود میزبانی کے اختیارات فراہم کرتے ہیں۔
- Alibaba Cloud: Computing Nest اور Data Management کی تعیناتی کے اختیارات درج ہیں۔
- Azure Kubernetes Service: کمیونٹی کا Azure DevOps Pipeline اور Helm چارٹ Dify کو AKS پر تعینات کر سکتے ہیں۔
سیکیورٹی رپورٹس نجی طور پر جمع کرائیں
سیکیورٹی کی کمزوریوں کو GitHub issues کے طور پر شائع نہ کریں۔ پروجیکٹ صارفین سے کہتا ہے کہ انہیں نجی طور پر security@dify.ai پر رپورٹ کریں۔
مدد حاصل کرنا اور تعاون کرنا
سوالات اور تاثرات کے لیے GitHub Discussions استعمال کریں، جبکہ بگز اور فیچر تجاویز کے لیے GitHub Issues استعمال کریں۔ ایپلیکیشنز شیئر کرنے اور دیگر صارفین سے گفتگو کے لیے Discord کمیونٹی بھی دستیاب ہے۔
اگر آپ کوڈ میں تعاون کرنا چاہتے ہیں تو پروجیکٹ کی تعاون کی رہنما دستاویز پڑھیں۔ ترجمہ کرنے والے معاونین بین الاقوامی کاری کی README سے رجوع کر سکتے ہیں۔
نتیجہ
Dify ورک فلو، پرامپٹس، RAG، ایجنٹس، ماڈل مینجمنٹ، آبزرویبلٹی اور APIs کو ایک متحدہ LLM ایپلیکیشن پلیٹ فارم میں یکجا کرتا ہے۔ آپ اسے Dify Cloud کے ذریعے فوراً آزما سکتے ہیں یا Docker Compose کے ساتھ Community Edition کو خود ہوسٹ کر سکتے ہیں۔ پہلے طے شدہ ترتیب سے آغاز کریں، ایک مرکوز AI ایپلیکیشن بنائیں اور آزمائیں، پھر اپنی ضروریات بڑھنے کے ساتھ مانیٹرنگ یا کلاؤڈ تعیناتی کے اختیارات اختیار کریں۔
