22 KiB
AGENTS.md
ప్రాజెక్ట్ అవలోకనం
AI for Beginners అనేది ఆర్టిఫిషియల్ ఇంటెలిజెన్స్ ప్రాథమికాంశాలను కవర్ చేసే 12 వారాల, 24 పాఠాల సమగ్ర పాఠ్యక్రమం. ఈ విద్యా రిపోజిటరీలో Jupyter Notebooks ఉపయోగించి ప్రాక్టికల్ పాఠాలు, క్విజ్లు మరియు హ్యాండ్స్-ఆన్ ల్యాబ్స్ ఉన్నాయి. పాఠ్యక్రమం కవర్ చేసే అంశాలు:
- జ్ఞాన ప్రాతినిధ్యం మరియు నిపుణుల వ్యవస్థలతో సాంబాలిక్ AI
- TensorFlow మరియు PyTorch తో న్యూరల్ నెట్వర్క్స్ మరియు డీప్ లెర్నింగ్
- కంప్యూటర్ విజన్ సాంకేతికతలు మరియు నిర్మాణాలు
- ట్రాన్స్ఫార్మర్స్ మరియు BERT సహా సహజ భాషా ప్రాసెసింగ్ (NLP)
- ప్రత్యేక అంశాలు: జెనెటిక్ అల్గోరిథమ్స్, రీఇన్ఫోర్స్మెంట్ లెర్నింగ్, మల్టీ-ఏజెంట్ సిస్టమ్స్
- AI నైతికత మరియు బాధ్యతాయుత AI సూత్రాలు
ప్రధాన సాంకేతికతలు: Python 3, Jupyter Notebooks, TensorFlow, PyTorch, Keras, OpenCV, Vue.js (క్విజ్ యాప్ కోసం)
నిర్మాణం: టాపిక్ ప్రాంతాల వారీగా క్రమబద్ధీకరించిన Jupyter Notebooks తో విద్యా కంటెంట్ రిపోజిటరీ, Vue.js ఆధారిత క్విజ్ అప్లికేషన్ మరియు విస్తృత బహుభాషా మద్దతుతో.
సెటప్ కమాండ్లు
ప్రాథమిక అభివృద్ధి వాతావరణం (Python/Jupyter)
పాఠ్యక్రమం Python మరియు Jupyter Notebooks తో నడపడానికి రూపొందించబడింది. సిఫార్సు చేయబడిన విధానం miniconda ఉపయోగించడం:
# రిపోజిటరీని క్లోన్ చేయండి
git clone https://github.com/microsoft/ai-for-beginners
cd ai-for-beginners
# కండా ఎన్విరాన్మెంట్ సృష్టించి యాక్టివేట్ చేయండి
conda env create --name ai4beg --file environment.yml
conda activate ai4beg
# జూపిటర్ నోట్బుక్ ప్రారంభించండి
jupyter notebook
# లేదా
jupyter lab
ప్రత్యామ్నాయం: devcontainer ఉపయోగించడం
# VS కోడ్లో తెరవండి మరియు ప్రాంప్ట్ వచ్చినప్పుడు "కంటైనర్లో మళ్లీ తెరవండి" ఎంచుకోండి
# డెవ్కంటైనర్ స్వయంచాలకంగా వాతావరణాన్ని సెట్ చేస్తుంది
క్విజ్ అప్లికేషన్ సెటప్
క్విజ్ యాప్ ఒక వేరు Vue.js అప్లికేషన్, ఇది etc/quiz-app/ లో ఉంది:
cd etc/quiz-app
npm install
npm run serve # అభివృద్ధి సర్వర్
npm run build # ఉత్పత్తి నిర్మాణం
npm run lint # లింట్ చేసి ఫైళ్లను సరిచేయండి
అభివృద్ధి వర్క్ఫ్లో
Jupyter Notebooks తో పని చేయడం
-
లోకల్ అభివృద్ధి:
- కండా వాతావరణం యాక్టివేట్ చేయండి:
conda activate ai4beg - Jupyter ప్రారంభించండి:
jupyter notebookలేదాjupyter lab - పాఠాల ఫోల్డర్లకు వెళ్లి
.ipynbఫైళ్లను తెరవండి - పాఠాలు అనుసరించడానికి సెల్స్ను ఇంటరాక్టివ్గా నడపండి
- కండా వాతావరణం యాక్టివేట్ చేయండి:
-
VS Code తో Python ఎక్స్టెన్షన్:
- రిపోజిటరీని VS Code లో తెరవండి
- Python ఎక్స్టెన్షన్ ఇన్స్టాల్ చేయండి
- VS Code ఆటోమేటిక్గా కండా వాతావరణాన్ని గుర్తించి ఉపయోగిస్తుంది
.ipynbఫైళ్లను నేరుగా VS Code లో తెరవండి
-
క్లౌడ్ అభివృద్ధి:
- GitHub Codespaces: "Code" → "Codespaces" → "Create codespace on main" క్లిక్ చేయండి
- Binder: README లోని Binder బ్యాడ్జ్ ఉపయోగించి బ్రౌజర్లో ప్రారంభించండి
- గమనిక: Binder కు పరిమిత వనరులు మరియు కొన్ని వెబ్ యాక్సెస్ పరిమితులు ఉన్నాయి
అధునాతన పాఠాల కోసం GPU మద్దతు
తరువాతి పాఠాలు GPU వేగవంతతతో గణనీయంగా లాభపడతాయి:
- Azure Data Science VM: GPU మద్దతుతో NC-సిరీస్ VM లను ఉపయోగించండి
- Azure Machine Learning: GPU కంప్యూట్తో నోట్బుక్ ఫీచర్లను ఉపయోగించండి
- Google Colab: నోట్బుక్స్ను వ్యక్తిగతంగా అప్లోడ్ చేయండి (ఉచిత GPU మద్దతు ఉంది)
క్విజ్ యాప్ అభివృద్ధి
cd etc/quiz-app
npm run serve # హాట్-రిలోడ్ అభివృద్ధి సర్వర్ http://localhost:8080 వద్ద ఉంది
పరీక్షా సూచనలు
ఇది సాఫ్ట్వేర్ పరీక్షల కంటే విద్యా కంటెంట్ పై దృష్టి పెట్టిన రిపోజిటరీ. సంప్రదాయ పరీక్షా సూట్ లేదు.
ధృవీకరణ విధానాలు:
- Jupyter Notebooks: కోడ్ ఉదాహరణలు పనిచేస్తున్నాయో లేదో నిర్ధారించడానికి సెల్స్ను వరుసగా నడపండి
- క్విజ్ యాప్ పరీక్ష: అభివృద్ధి సర్వర్ ద్వారా మాన్యువల్ పరీక్ష
- అనువాద ధృవీకరణ:
translations/ఫోల్డర్లో అనువాద కంటెంట్ తనిఖీ చేయండి - క్విజ్ యాప్ లింటింగ్:
etc/quiz-app/లోnpm run lintనడపండి
కోడ్ ఉదాహరణలు నడపడం:
# ముందుగా వాతావరణాన్ని సక్రియం చేయండి
conda activate ai4beg
# Python స్క్రిప్టులను నేరుగా నడపండి
python lessons/4-ComputerVision/07-ConvNets/pytorchcv.py
# లేదా నోట్బుక్స్ను అమలు చేయండి
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
# అభివృద్ధి
npm run serve
# ఉత్పత్తి నిర్మాణం
npm run build # etc/quiz-app/dist/ కు అవుట్పుట్లు
# Azure స్థిర వెబ్ యాప్స్కు పంపిణీ చేయండి
# Azure ఆటోమేటిక్గా GitHub Actions వర్క్ఫ్లో సృష్టిస్తుంది
# వివరమైన పంపిణీ సూచనల కోసం etc/quiz-app/README.md చూడండి
డాక్యుమెంటేషన్ సైట్
రిపోజిటరీ 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 చూడండి:
- డీప్ రీఇన్ఫోర్స్మెంట్ లెర్నింగ్ విభాగాలు
- ఆబ్జెక్ట్ డిటెక్షన్ మెరుగుదలలు
- నేమ్డ్ ఎంటిటీ రికగ్నిషన్ ఉదాహరణలు
- కస్టమ్ ఎంబెడ్డింగ్ ట్రైనింగ్ నమూనాలు
వాతావరణ కాన్ఫిగరేషన్
అవసరమైన డిపెండెన్సీలు
# కోర్ పైథాన్ ప్యాకేజీలు (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 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
సమస్య: బైండర్ టైమ్ అవుట్ అవుతుంది లేదా డౌన్లోడ్లను బ్లాక్ చేస్తుంది
- పరిష్కారం: మెరుగైన వనరుల యాక్సెస్ కోసం GitHub Codespaces లేదా లోకల్ సెటప్ ఉపయోగించండి
మెమరీ సమస్యలు
కొన్ని పాఠాలు గణనీయమైన RAM అవసరం (8GB+ సిఫార్సు):
- వనరులు ఎక్కువగా అవసరమయ్యే పాఠాల కోసం క్లౌడ్ VM లను ఉపయోగించండి
- మోడల్స్ ట్రైనింగ్ సమయంలో ఇతర అప్లికేషన్లను మూసివేయండి
- మెమరీ తక్కువైతే నోట్బుక్స్లో బ్యాచ్ సైజ్ తగ్గించండి
అదనపు గమనికలు
కోర్సు ఉపాధ్యాయుల కోసం
- బోధనా మార్గదర్శకాలకు
lessons/0-course-setup/for-teachers.mdచూడండి - పాఠాలు స్వతంత్రంగా ఉండి వరుసగా లేదా ఎంచుకుని బోధించవచ్చు
- అంచనా సమయం: 12 వారాలు, వారానికి 2 పాఠాలు
క్లౌడ్ వనరులు
- 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 ఉపయోగించి అనువదించబడింది. మేము ఖచ్చితత్వానికి ప్రయత్నించినప్పటికీ, ఆటోమేటెడ్ అనువాదాల్లో పొరపాట్లు లేదా తప్పిదాలు ఉండవచ్చు. మూల పత్రం దాని స్వదేశీ భాషలో అధికారిక మూలంగా పరిగణించాలి. ముఖ్యమైన సమాచారానికి, ప్రొఫెషనల్ మానవ అనువాదం సిఫార్సు చేయబడుతుంది. ఈ అనువాదం వాడకంలో ఏర్పడిన ఏవైనా అపార్థాలు లేదా తప్పుదారుల కోసం మేము బాధ్యత వహించము.