You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ML-For-Beginners/translations/ur/AGENTS.md

16 KiB

AGENTS.md

پروجیکٹ کا جائزہ

یہ مشین لرننگ فار بیگنرز ہے، ایک جامع 12 ہفتوں کا، 26 اسباق پر مشتمل نصاب جو Python (زیادہ تر Scikit-learn کے ساتھ) اور R کا استعمال کرتے ہوئے کلاسک مشین لرننگ کے تصورات کا احاطہ کرتا ہے۔ یہ ریپوزٹری خود سے سیکھنے کے وسائل کے طور پر ڈیزائن کی گئی ہے، جس میں عملی پروجیکٹس، کوئزز، اور اسائنمنٹس شامل ہیں۔ ہر سبق حقیقی دنیا کے ڈیٹا کے ذریعے مختلف ثقافتوں اور علاقوں سے ML کے تصورات کو دریافت کرتا ہے۔

اہم اجزاء:

  • تعلیمی مواد: 26 اسباق جن میں ML کا تعارف، ریگریشن، کلاسیفیکیشن، کلسٹرنگ، NLP، ٹائم سیریز، اور ریئنفورسمنٹ لرننگ شامل ہیں
  • کوئز ایپلیکیشن: Vue.js پر مبنی کوئز ایپ، سبق سے پہلے اور بعد کے جائزے کے ساتھ
  • کثیر زبان کی حمایت: GitHub Actions کے ذریعے 40+ زبانوں میں خودکار ترجمے
  • دوہری زبان کی حمایت: اسباق Python (Jupyter نوٹ بکس) اور R (R Markdown فائلز) دونوں میں دستیاب ہیں
  • پروجیکٹ پر مبنی سیکھنا: ہر موضوع میں عملی پروجیکٹس اور اسائنمنٹس شامل ہیں

ریپوزٹری کا ڈھانچہ

ML-For-Beginners/
├── 1-Introduction/         # ML basics, history, fairness, techniques
├── 2-Regression/          # Regression models with Python/R
├── 3-Web-App/            # Flask web app for ML model deployment
├── 4-Classification/      # Classification algorithms
├── 5-Clustering/         # Clustering techniques
├── 6-NLP/               # Natural Language Processing
├── 7-TimeSeries/        # Time series forecasting
├── 8-Reinforcement/     # Reinforcement learning
├── 9-Real-World/        # Real-world ML applications
├── quiz-app/           # Vue.js quiz application
├── translations/       # Auto-generated translations
└── sketchnotes/       # Visual learning aids

ہر سبق کے فولڈر میں عام طور پر شامل ہوتا ہے:

  • README.md - مرکزی سبق کا مواد
  • notebook.ipynb - Python Jupyter نوٹ بک
  • solution/ - حل کا کوڈ (Python اور R ورژنز)
  • assignment.md - مشق کے لیے اسائنمنٹس
  • images/ - بصری وسائل

سیٹ اپ کمانڈز

Python اسباق کے لیے

زیادہ تر اسباق Jupyter نوٹ بکس استعمال کرتے ہیں۔ مطلوبہ ڈپینڈنسیز انسٹال کریں:

# Install Python 3.8+ if not already installed
python --version

# Install Jupyter
pip install jupyter

# Install common ML libraries
pip install scikit-learn pandas numpy matplotlib seaborn

# For specific lessons, check lesson-specific requirements
# Example: Web App lesson
pip install flask

R اسباق کے لیے

R اسباق solution/R/ فولڈرز میں .rmd یا .ipynb فائلز کے طور پر موجود ہیں:

# Install R and required packages
# In R console:
install.packages(c("tidyverse", "tidymodels", "caret"))

کوئز ایپلیکیشن کے لیے

کوئز ایپ Vue.js ایپلیکیشن ہے جو quiz-app/ ڈائریکٹری میں موجود ہے:

cd quiz-app
npm install

دستاویزات سائٹ کے لیے

دستاویزات کو مقامی طور پر چلانے کے لیے:

# Install Docsify
npm install -g docsify-cli

# Serve from repository root
docsify serve

# Access at http://localhost:3000

ترقیاتی ورک فلو

سبق کی نوٹ بکس کے ساتھ کام کرنا

  1. سبق کی ڈائریکٹری پر جائیں (مثلاً، 2-Regression/1-Tools/)
  2. Jupyter نوٹ بک کھولیں:
    jupyter notebook notebook.ipynb
    
  3. سبق کے مواد اور مشقوں پر کام کریں
  4. اگر ضرورت ہو تو solution/ فولڈر میں حل چیک کریں

Python ترقی

  • اسباق معیاری Python ڈیٹا سائنس لائبریریز استعمال کرتے ہیں
  • انٹرایکٹو سیکھنے کے لیے Jupyter نوٹ بکس
  • ہر سبق کے solution/ فولڈر میں حل کا کوڈ دستیاب ہے

R ترقی

  • R اسباق .rmd فارمیٹ (R Markdown) میں ہیں
  • حل solution/R/ سب ڈائریکٹریز میں موجود ہیں
  • RStudio یا Jupyter کے ساتھ R کرنل استعمال کریں R نوٹ بکس چلانے کے لیے

کوئز ایپلیکیشن ترقی

cd quiz-app

# Start development server
npm run serve
# Access at http://localhost:8080

# Build for production
npm run build

# Lint and fix files
npm run lint

ٹیسٹنگ ہدایات

کوئز ایپلیکیشن ٹیسٹنگ

cd quiz-app

# Lint code
npm run lint

# Build to verify no errors
npm run build

نوٹ: یہ بنیادی طور پر ایک تعلیمی نصاب کی ریپوزٹری ہے۔ سبق کے مواد کے لیے کوئی خودکار ٹیسٹ نہیں ہیں۔ توثیق درج ذیل طریقوں سے کی جاتی ہے:

  • سبق کی مشقیں مکمل کرنا
  • نوٹ بک سیلز کو کامیابی سے چلانا
  • حل میں متوقع نتائج کے خلاف آؤٹ پٹ چیک کرنا

کوڈ اسٹائل گائیڈ لائنز

Python کوڈ

  • PEP 8 اسٹائل گائیڈ لائنز پر عمل کریں
  • واضح اور وضاحتی ویریبل نام استعمال کریں
  • پیچیدہ آپریشنز کے لیے تبصرے شامل کریں
  • Jupyter نوٹ بکس میں تصورات کی وضاحت کرنے والے مارک ڈاؤن سیلز ہونے چاہئیں

JavaScript/Vue.js (کوئز ایپ)

  • Vue.js اسٹائل گائیڈ پر عمل کریں
  • ESLint کنفیگریشن quiz-app/package.json میں موجود ہے
  • npm run lint چلائیں مسائل چیک کرنے اور خودکار طور پر ٹھیک کرنے کے لیے

دستاویزات

  • مارک ڈاؤن فائلز واضح اور اچھی طرح سے ساختہ ہونی چاہئیں
  • fenced کوڈ بلاکس میں کوڈ کی مثالیں شامل کریں
  • اندرونی حوالوں کے لیے نسبتی لنکس استعمال کریں
  • موجودہ فارمیٹنگ کنونشنز پر عمل کریں

بلڈ اور ڈیپلائمنٹ

کوئز ایپلیکیشن ڈیپلائمنٹ

کوئز ایپ Azure Static Web Apps پر ڈیپلائی کی جا سکتی ہے:

  1. ضروریات:

    • Azure اکاؤنٹ
    • GitHub ریپوزٹری (پہلے سے فورک شدہ)
  2. Azure پر ڈیپلائی کریں:

    • Azure Static Web App ریسورس بنائیں
    • GitHub ریپوزٹری سے کنیکٹ کریں
    • ایپ لوکیشن سیٹ کریں: /quiz-app
    • آؤٹ پٹ لوکیشن سیٹ کریں: dist
    • Azure خودکار طور پر GitHub Actions ورک فلو بناتا ہے
  3. GitHub Actions ورک فلو:

    • ورک فلو فائل .github/workflows/azure-static-web-apps-*.yml میں بنائی جاتی ہے
    • مین برانچ پر پش کرنے پر خودکار طور پر بلڈ اور ڈیپلائی کرتا ہے

دستاویزات PDF

دستاویزات سے PDF بنائیں:

npm install
npm run convert

ترجمہ ورک فلو

اہم: ترجمے GitHub Actions کے ذریعے Co-op Translator کا استعمال کرتے ہوئے خودکار ہیں۔

  • جب تبدیلیاں main برانچ پر پش کی جاتی ہیں تو ترجمے خودکار طور پر بنائے جاتے ہیں
  • مواد کو دستی طور پر ترجمہ نہ کریں - سسٹم اس کو سنبھالتا ہے
  • ورک فلو .github/workflows/co-op-translator.yml میں بیان کیا گیا ہے
  • ترجمے کے لیے Azure AI/OpenAI سروسز استعمال کرتا ہے
  • 40+ زبانوں کی حمایت کرتا ہے

تعاون کی گائیڈ لائنز

مواد کے تعاون کنندگان کے لیے

  1. ریپوزٹری کو فورک کریں اور ایک فیچر برانچ بنائیں
  2. سبق کے مواد میں تبدیلی کریں اگر اسباق شامل/اپ ڈیٹ کر رہے ہیں
  3. ترجمہ شدہ فائلز میں ترمیم نہ کریں - وہ خودکار طور پر بنائی جاتی ہیں
  4. اپنے کوڈ کی جانچ کریں - یقینی بنائیں کہ تمام نوٹ بک سیلز کامیابی سے چلتے ہیں
  5. لنکس اور تصاویر کی تصدیق کریں کہ وہ صحیح کام کر رہے ہیں
  6. ایک واضح وضاحت کے ساتھ پل ریکویسٹ جمع کریں

پل ریکویسٹ گائیڈ لائنز

  • عنوان کا فارمیٹ: [سیکشن] تبدیلیوں کی مختصر وضاحت
    • مثال: [Regression] سبق 5 میں ٹائپو درست کریں
    • مثال: [Quiz-App] ڈپینڈنسیز اپ ڈیٹ کریں
  • جمع کرنے سے پہلے:
    • یقینی بنائیں کہ تمام نوٹ بک سیلز بغیر کسی غلطی کے چلتے ہیں
    • اگر کوئز ایپ میں ترمیم کر رہے ہیں تو npm run lint چلائیں
    • مارک ڈاؤن فارمیٹنگ کی تصدیق کریں
    • کسی بھی نئے کوڈ کی مثالوں کی جانچ کریں
  • PR میں شامل ہونا چاہیے:
    • تبدیلیوں کی وضاحت
    • تبدیلیوں کی وجہ
    • UI تبدیلیوں کے لیے اسکرین شاٹس
  • کوڈ آف کنڈکٹ: Microsoft Open Source Code of Conduct پر عمل کریں
  • CLA: آپ کو Contributor License Agreement پر دستخط کرنے کی ضرورت ہوگی

سبق کا ڈھانچہ

ہر سبق ایک مستقل پیٹرن پر عمل کرتا ہے:

  1. سبق سے پہلے کا کوئز - بنیادی معلومات کی جانچ کریں
  2. سبق کا مواد - تحریری ہدایات اور وضاحتیں
  3. کوڈ مظاہرے - نوٹ بکس میں عملی مثالیں
  4. علم کی جانچ - پورے سبق میں سمجھ کی تصدیق کریں
  5. چیلنج - تصورات کو خود سے لاگو کریں
  6. اسائنمنٹ - توسیعی مشق
  7. سبق کے بعد کا کوئز - سیکھنے کے نتائج کا جائزہ لیں

عام کمانڈز کا حوالہ

# Python/Jupyter
jupyter notebook                    # Start Jupyter server
jupyter notebook notebook.ipynb     # Open specific notebook
pip install -r requirements.txt     # Install dependencies (where available)

# Quiz App
cd quiz-app
npm install                        # Install dependencies
npm run serve                      # Development server
npm run build                      # Production build
npm run lint                       # Lint and fix

# Documentation
docsify serve                      # Serve documentation locally
npm run convert                    # Generate PDF

# Git workflow
git checkout -b feature/my-change  # Create feature branch
git add .                         # Stage changes
git commit -m "Description"       # Commit changes
git push origin feature/my-change # Push to remote

اضافی وسائل

کلیدی ٹیکنالوجیز

  • Python: ML اسباق کے لیے بنیادی زبان (Scikit-learn, Pandas, NumPy, Matplotlib)
  • R: tidyverse, tidymodels, caret کا استعمال کرتے ہوئے متبادل عمل درآمد
  • Jupyter: Python اسباق کے لیے انٹرایکٹو نوٹ بکس
  • R Markdown: R اسباق کے لیے دستاویزات
  • Vue.js 3: کوئز ایپلیکیشن فریم ورک
  • Flask: ML ماڈل ڈیپلائمنٹ کے لیے ویب ایپلیکیشن فریم ورک
  • Docsify: دستاویزات سائٹ جنریٹر
  • GitHub Actions: CI/CD اور خودکار ترجمے

سیکیورٹی کے تحفظات

  • کوڈ میں کوئی راز نہیں: API کیز یا اسناد کو کبھی بھی کمیٹ نہ کریں
  • ڈپینڈنسیز: npm اور pip پیکجز کو اپ ڈیٹ رکھیں
  • یوزر ان پٹ: Flask ویب ایپ کی مثالوں میں بنیادی ان پٹ ویلیڈیشن شامل ہے
  • حساس ڈیٹا: مثال کے ڈیٹا سیٹس عوامی اور غیر حساس ہیں

مسائل کا حل

Jupyter نوٹ بکس

  • کرنل کے مسائل: اگر سیلز رک جائیں تو کرنل کو ری اسٹارٹ کریں: Kernel → Restart
  • امپورٹ کی غلطیاں: یقینی بنائیں کہ تمام مطلوبہ پیکجز pip کے ساتھ انسٹال ہیں
  • پاتھ کے مسائل: نوٹ بکس کو ان کی موجودہ ڈائریکٹری سے چلائیں

کوئز ایپلیکیشن

  • npm install ناکام ہو جاتا ہے: npm کیش صاف کریں: npm cache clean --force
  • پورٹ کے تنازعات: پورٹ تبدیل کریں: npm run serve -- --port 8081
  • بلڈ کی غلطیاں: node_modules کو حذف کریں اور دوبارہ انسٹال کریں: rm -rf node_modules && npm install

R اسباق

  • پیکج نہیں ملا: انسٹال کریں: install.packages("package-name")
  • RMarkdown رینڈرنگ: یقینی بنائیں کہ rmarkdown پیکج انسٹال ہے
  • کرنل کے مسائل: Jupyter کے لیے IRkernel انسٹال کرنے کی ضرورت ہو سکتی ہے

پروجیکٹ کے مخصوص نوٹس

  • یہ بنیادی طور پر ایک تعلیمی نصاب ہے، پروڈکشن کوڈ نہیں
  • توجہ مشین لرننگ کے تصورات کو سمجھنے پر ہے عملی مشق کے ذریعے
  • کوڈ کی مثالیں وضاحت کو ترجیح دیتی ہیں اصلاح کے بجائے
  • زیادہ تر اسباق خود مختار ہیں اور آزادانہ طور پر مکمل کیے جا سکتے ہیں
  • حل فراہم کیے گئے ہیں لیکن سیکھنے والوں کو پہلے مشقیں کرنے کی کوشش کرنی چاہیے
  • ریپوزٹری Docsify استعمال کرتی ہے ویب دستاویزات کے لیے بغیر بلڈ مرحلے کے
  • Sketchnotes تصورات کے بصری خلاصے فراہم کرتے ہیں
  • کثیر زبان کی حمایت مواد کو عالمی سطح پر قابل رسائی بناتی ہے

ڈس کلیمر:
یہ دستاویز AI ترجمہ سروس Co-op Translator کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا خامیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے لیے ہم ذمہ دار نہیں ہیں۔