19 KiB
AGENTS.md
परियोजना का अवलोकन
AI for Beginners एक व्यापक 12-सप्ताह, 24-पाठ का पाठ्यक्रम है जो कृत्रिम बुद्धिमत्ता के मूलभूत सिद्धांतों को कवर करता है। यह शैक्षिक रिपॉजिटरी Jupyter Notebooks, क्विज़ और प्रायोगिक लैब्स के साथ व्यावहारिक पाठ प्रदान करता है। पाठ्यक्रम में शामिल हैं:
- प्रतीकात्मक AI, ज्ञान प्रतिनिधित्व और विशेषज्ञ प्रणालियाँ
- TensorFlow और PyTorch के साथ न्यूरल नेटवर्क और डीप लर्निंग
- कंप्यूटर विज़न तकनीक और आर्किटेक्चर
- प्राकृतिक भाषा प्रसंस्करण (NLP), जिसमें ट्रांसफॉर्मर्स और BERT शामिल हैं
- विशेष विषय: जेनेटिक एल्गोरिदम, रिइंफोर्समेंट लर्निंग, मल्टी-एजेंट सिस्टम
- AI नैतिकता और जिम्मेदार AI सिद्धांत
मुख्य तकनीकें: Python 3, Jupyter Notebooks, TensorFlow, PyTorch, Keras, OpenCV, Vue.js (क्विज़ ऐप के लिए)
आर्किटेक्चर: Jupyter Notebooks द्वारा विषय क्षेत्रों में व्यवस्थित शैक्षिक सामग्री रिपॉजिटरी, Vue.js-आधारित क्विज़ एप्लिकेशन और व्यापक बहुभाषी समर्थन के साथ।
सेटअप कमांड्स
प्राथमिक विकास वातावरण (Python/Jupyter)
पाठ्यक्रम Python और Jupyter Notebooks के साथ चलाने के लिए डिज़ाइन किया गया है। अनुशंसित तरीका है miniconda का उपयोग:
# Clone the repository
git clone https://github.com/microsoft/ai-for-beginners
cd ai-for-beginners
# Create and activate conda environment
conda env create --name ai4beg --file environment.yml
conda activate ai4beg
# Start Jupyter Notebook
jupyter notebook
# OR
jupyter lab
विकल्प: devcontainer का उपयोग करना
# Open in VS Code and select "Reopen in Container" when prompted
# The devcontainer will automatically set up the environment
क्विज़ एप्लिकेशन सेटअप
क्विज़ ऐप एक अलग Vue.js एप्लिकेशन है जो etc/quiz-app/ में स्थित है:
cd etc/quiz-app
npm install
npm run serve # Development server
npm run build # Production build
npm run lint # Lint and fix files
विकास कार्यप्रवाह
Jupyter Notebooks के साथ काम करना
-
स्थानीय विकास:
- conda वातावरण सक्रिय करें:
conda activate ai4beg - Jupyter शुरू करें:
jupyter notebookयाjupyter lab - पाठ फ़ोल्डरों पर जाएं और
.ipynbफ़ाइलें खोलें - पाठों का अनुसरण करने के लिए कोशिकाओं को इंटरैक्टिव रूप से चलाएं
- conda वातावरण सक्रिय करें:
-
VS Code के साथ Python एक्सटेंशन:
- रिपॉजिटरी को VS Code में खोलें
- Python एक्सटेंशन इंस्टॉल करें
- VS Code स्वचालित रूप से conda वातावरण का पता लगाता है और उपयोग करता है
.ipynbफ़ाइलें सीधे VS Code में खोलें
-
क्लाउड विकास:
- GitHub Codespaces: "Code" → "Codespaces" → "Create codespace on main" पर क्लिक करें
- Binder: README पर Binder बैज का उपयोग करके ब्राउज़र में लॉन्च करें
- नोट: Binder में सीमित संसाधन और कुछ वेब एक्सेस प्रतिबंध हैं
उन्नत पाठों के लिए GPU समर्थन
बाद के पाठ GPU त्वरण से काफी लाभान्वित होते हैं:
- Azure Data Science VM: GPU समर्थन के साथ NC-सीरीज़ VMs का उपयोग करें
- Azure Machine Learning: GPU कंप्यूट के साथ नोटबुक सुविधाओं का उपयोग करें
- Google Colab: नोटबुक्स को व्यक्तिगत रूप से अपलोड करें (मुफ्त GPU समर्थन है)
क्विज़ ऐप विकास
cd etc/quiz-app
npm run serve # Hot-reload development server at http://localhost:8080
परीक्षण निर्देश
यह एक शैक्षिक रिपॉजिटरी है जो सॉफ़्टवेयर परीक्षण के बजाय सीखने की सामग्री पर केंद्रित है। कोई पारंपरिक परीक्षण सूट नहीं है।
सत्यापन दृष्टिकोण:
- Jupyter Notebooks: कोशिकाओं को क्रमिक रूप से चलाएं ताकि कोड उदाहरण काम कर रहे हों
- क्विज़ ऐप परीक्षण: विकास सर्वर के माध्यम से मैन्युअल परीक्षण
- अनुवाद सत्यापन:
translations/फ़ोल्डर में अनुवादित सामग्री की जांच करें - क्विज़ ऐप लिंटिंग:
npm run lintकोetc/quiz-app/में चलाएं
कोड उदाहरण चलाना:
# Activate environment first
conda activate ai4beg
# Run Python scripts directly
python lessons/4-ComputerVision/07-ConvNets/pytorchcv.py
# Or execute notebooks
jupyter notebook lessons/3-NeuralNetworks/03-Perceptron/Perceptron.ipynb
कोड शैली
Python कोड शैली
- शैक्षिक कोड के लिए मानक Python परंपराएँ
- स्पष्ट, पठनीय कोड जो सीखने को प्राथमिकता देता है, अनुकूलन को नहीं
- प्रमुख अवधारणाओं को समझाने वाले टिप्पणियाँ
- Jupyter Notebook-अनुकूल: कोशिकाएँ जहाँ तक संभव हो आत्म-निहित होनी चाहिए
- पाठ सामग्री के लिए कोई सख्त लिंटिंग आवश्यकताएँ नहीं
JavaScript/Vue.js (क्विज़ ऐप)
etc/quiz-app/package.jsonमें ESLint कॉन्फ़िगरेशन- मुद्दों की जांच और स्वचालित सुधार के लिए
npm run lintचलाएँ - Vue 2.x परंपराएँ
- घटक-आधारित आर्किटेक्चर
फ़ाइल संगठन
lessons/
├── 0-course-setup/ # Setup instructions
├── 1-Intro/ # Introduction to AI
├── 2-Symbolic/ # Symbolic AI
├── 3-NeuralNetworks/ # Neural Networks basics
├── 4-ComputerVision/ # Computer Vision
├── 5-NLP/ # Natural Language Processing
├── 6-Other/ # Other AI techniques
├── 7-Ethics/ # AI Ethics
└── X-Extras/ # Additional content
etc/
├── quiz-app/ # Vue.js quiz application
└── quiz-src/ # Quiz source files
translations/ # Multi-language translations
निर्माण और परिनियोजन
Jupyter सामग्री
कोई निर्माण प्रक्रिया आवश्यक नहीं है - Jupyter Notebooks सीधे निष्पादित किए जाते हैं।
क्विज़ एप्लिकेशन
cd etc/quiz-app
# Development
npm run serve
# Production build
npm run build # Outputs to etc/quiz-app/dist/
# Deploy to Azure Static Web Apps
# Azure automatically creates GitHub Actions workflow
# See etc/quiz-app/README.md for detailed deployment instructions
दस्तावेज़ीकरण साइट
रिपॉजिटरी Docsify का उपयोग करती है दस्तावेज़ीकरण के लिए:
index.htmlप्रवेश बिंदु के रूप में कार्य करता है- कोई निर्माण आवश्यक नहीं - सीधे GitHub Pages के माध्यम से परोसा जाता है
- एक्सेस करें: https://microsoft.github.io/AI-For-Beginners/
योगदान दिशानिर्देश
पुल अनुरोध प्रक्रिया
- शीर्षक प्रारूप: परिवर्तन का वर्णन करने वाले स्पष्ट, वर्णनात्मक शीर्षक
- CLA आवश्यकता: Microsoft CLA हस्ताक्षरित होना चाहिए (स्वचालित जांच)
- सामग्री दिशानिर्देश:
- शैक्षिक फोकस और शुरुआती-अनुकूल दृष्टिकोण बनाए रखें
- नोटबुक्स में सभी कोड उदाहरणों का परीक्षण करें
- सुनिश्चित करें कि नोटबुक्स एंड-टू-एंड चलें
- यदि अंग्रेजी सामग्री को संशोधित कर रहे हैं तो अनुवाद अपडेट करें
- क्विज़ ऐप परिवर्तन: कमिट करने से पहले
npm run lintचलाएँ
अनुवाद योगदान
- अनुवाद GitHub Actions के माध्यम से स्वचालित हैं co-op-translator का उपयोग करके
- मैन्युअल अनुवाद
translations/<language-code>/में जाते हैं - क्विज़ अनुवाद
etc/quiz-app/src/assets/translations/में - समर्थित भाषाएँ: 40+ भाषाएँ (पूरी सूची के लिए README देखें)
सक्रिय योगदान क्षेत्र
वर्तमान आवश्यकताओं के लिए etc/CONTRIBUTING.md देखें:
- डीप रिइंफोर्समेंट लर्निंग अनुभाग
- ऑब्जेक्ट डिटेक्शन सुधार
- नामित इकाई पहचान उदाहरण
- कस्टम एम्बेडिंग प्रशिक्षण नमूने
पर्यावरण कॉन्फ़िगरेशन
आवश्यक निर्भरताएँ
# Core Python packages (from requirements.txt)
tensorflow==2.17.0
torch (via conda)
torchvision (via conda)
keras==3.5.0
opencv (via conda)
scikit-learn
numpy==1.26
pandas==2.2.2
matplotlib==3.9
jupyter
पर्यावरण चर
मूल उपयोग के लिए कोई विशेष पर्यावरण चर आवश्यक नहीं है।
Azure परिनियोजन (क्विज़ ऐप) के लिए:
AZURE_STATIC_WEB_APPS_API_TOKEN(Azure द्वारा स्वचालित रूप से सेट)
डिबगिंग और समस्या निवारण
सामान्य समस्याएँ
समस्या: Conda वातावरण निर्माण विफल
- समाधान: पहले conda अपडेट करें:
conda update conda -y - पर्याप्त डिस्क स्थान सुनिश्चित करें (50GB अनुशंसित)
समस्या: Jupyter कर्नेल नहीं मिला
- समाधान:
conda activate ai4beg python -m ipykernel install --user --name ai4beg
समस्या: नोटबुक्स में GPU का पता नहीं चला
- समाधान:
- CUDA स्थापना सत्यापित करें:
nvidia-smi - PyTorch GPU जांचें:
python -c "import torch; print(torch.cuda.is_available())" - TensorFlow GPU जांचें:
python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
- CUDA स्थापना सत्यापित करें:
समस्या: क्विज़ ऐप शुरू नहीं होता
- समाधान:
cd etc/quiz-app rm -rf node_modules package-lock.json npm install npm run serve
समस्या: Binder टाइम आउट या डाउनलोड को ब्लॉक करता है
- समाधान: बेहतर संसाधन एक्सेस के लिए GitHub Codespaces या स्थानीय सेटअप का उपयोग करें
मेमोरी समस्याएँ
कुछ पाठों को महत्वपूर्ण RAM (8GB+ अनुशंसित) की आवश्यकता होती है:
- संसाधन-गहन पाठों के लिए क्लाउड VMs का उपयोग करें
- मॉडल प्रशिक्षण करते समय अन्य एप्लिकेशन बंद करें
- यदि मेमोरी समाप्त हो रही है तो नोटबुक्स में बैच आकार कम करें
अतिरिक्त नोट्स
पाठ्यक्रम प्रशिक्षकों के लिए
- शिक्षण मार्गदर्शन के लिए
lessons/0-course-setup/for-teachers.mdदेखें - पाठ आत्म-निहित हैं और क्रम में या व्यक्तिगत रूप से चुने जा सकते हैं
- अनुमानित समय: प्रति सप्ताह 2 पाठ पर 12 सप्ताह
क्लाउड संसाधन
- Azure for Students: छात्रों के लिए मुफ्त क्रेडिट उपलब्ध
- Microsoft Learn: पूरक शिक्षण पथ पूरे पाठ्यक्रम में लिंक किए गए
- Binder: मुफ्त लेकिन सीमित संसाधन और कुछ नेटवर्क प्रतिबंध
कोड निष्पादन विकल्प
- स्थानीय (अनुशंसित): पूर्ण नियंत्रण, सर्वोत्तम प्रदर्शन, GPU समर्थन
- GitHub Codespaces: क्लाउड-आधारित VS Code, त्वरित एक्सेस के लिए अच्छा
- Binder: ब्राउज़र-आधारित Jupyter, मुफ्त लेकिन सीमित
- Azure ML Notebooks: GPU समर्थन के साथ एंटरप्राइज़ विकल्प
- Google Colab: नोटबुक्स को व्यक्तिगत रूप से अपलोड करें, मुफ्त GPU टियर उपलब्ध
नोटबुक्स के साथ काम करना
- नोटबुक्स को सीखने के लिए कोशिका-दर-कोशिका चलाने के लिए डिज़ाइन किया गया है
- कई नोटबुक्स पहली बार चलने पर डेटासेट डाउनलोड करती हैं (समय लग सकता है)
- कुछ मॉडलों को उचित प्रशिक्षण समय के लिए GPU की आवश्यकता होती है
- प्री-ट्रेंड मॉडल का उपयोग जहाँ संभव हो, कंप्यूट आवश्यकताओं को कम करने के लिए
प्रदर्शन विचार
- बाद के कंप्यूटर विज़न पाठ (CNNs, GANs) GPU से लाभान्वित होते हैं
- NLP ट्रांसफॉर्मर पाठों को महत्वपूर्ण RAM की आवश्यकता हो सकती है
- स्क्रैच से प्रशिक्षण शैक्षिक है लेकिन समय लेने वाला है
- ट्रांसफर लर्निंग उदाहरण प्रशिक्षण समय को कम करते हैं
अस्वीकरण:
यह दस्तावेज़ AI अनुवाद सेवा Co-op Translator का उपयोग करके अनुवादित किया गया है। जबकि हम सटीकता सुनिश्चित करने का प्रयास करते हैं, कृपया ध्यान दें कि स्वचालित अनुवाद में त्रुटियां या अशुद्धियां हो सकती हैं। मूल भाषा में उपलब्ध मूल दस्तावेज़ को प्रामाणिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।