យើងរីករាយខ្លាំងណាស់ដែលអ្នកបានចាប់ផ្តើមវគ្គនេះ និងមើលថាតើអ្នកទទួលបានការបំផុសគំនិតអ្វីខ្លះដើម្បីបង្កើតជាមួយ Generative AI!
ដើម្បីធានាថាអ្នកអាចសម្រេចបានជោគជ័យ ទំព័រនេះបង្ហាញពីជំហានផ្ទៀងផ្ទាត់ ការទាមទារបច្ចេកទេស និងចំពោះកន្លែងដែលអាចទទួលបានជំនួយបើត្រូវការ។
ដើម្បីចាប់ផ្តើមរៀនវគ្គនេះ អ្នកត្រូវតែបញ្ចប់ជំហានខាងក្រោម។
បំបែក repo ទាំងមូលនេះ ទៅក្នុងគណនី GitHub របស់អ្នកផ្ទាល់ ដើម្បីអាចកែប្រែកូដណាមួយ និងបញ្ចប់បញ្ហាប្រកួត។ អ្នកអាច ផ្ដល់ចំណាប់អារម្មណ៍ (🌟) លើ repo នេះ ដើម្បីស្វែងរកវា និង repo ទាក់ទងបានងាយស្រួលជាងមុន។
ដើម្បីជៀសវាងបញ្ហាការពឹងផ្អែកណាមួយនៅពេលរត់កូដ យើងណែនាំឱ្យរត់វគ្គនេះនៅក្នុង GitHub Codespaces។
នៅក្នុង fork របស់អ្នក៖ Code -> Codespaces -> New on main
- ⚙️ រូបតំណាក់ -> Command Pallete-> Codespaces : Manage user secret -> បន្ថែមសម្ងាត់ថ្មី។
- ឈ្មោះ OPENAI_API_KEY, បញ្ជូលកូនសោរបស់អ្នក, រក្សាទុក។
| ខ្ញុំចង់... | ទៅកាន់... |
|---|---|
| ចាប់ផ្តើមមេរៀនទី 1 | 01-introduction-to-genai |
| ធ្វើការវិលតាមoffline | setup-local.md |
| កំណត់អ្នកផ្តល់ LLM | providers.md |
| ស្គាល់អ្នករៀនផ្សេង | ចូលរួម Discord របស់យើង |
| រោគសញ្ញា | ដោះស្រាយ |
|---|---|
| ការបង្កើត container ឈរជាង ១០ នាទី | Codespaces ➜ “Rebuild Container” |
python: command not found |
Terminal មិនភ្ជាប់; ចុច + ➜ bash |
401 Unauthorized ពី OpenAI |
OPENAI_API_KEY មិនត្រឹមត្រូវ / ហួសកំណត់ |
| VS Code បង្ហាញ “Dev container mounting…” | ផ្ទេរទំព័រទៅកាន់Browser ថ្មី—Codespaces ពេលខ្លះបាត់ការតភ្ជាប់ |
| មើលមិនឃើញ kernel នៅក្នុង Notebook | មេនុយ Notebook ➜ Kernel ▸ Select Kernel ▸ Python 3 |
រដ្ឋប្រព័ន្ធ Unix:
touch .envរដ្ឋប្រព័ន្ធ Windows:
echo . > .env-
កែសម្រួលក файл
.env: បើកក файл.envជាមួយកម្មវិធីកែសម្រួលអត្ថបទមួយ (ឧ. VS Code, Notepad++, ឬកម្មវិធីកែសម្រួលផ្សេងទៀត)។ បន្ថែមបន្ទាត់ខាងក្រោមចូលក្នុងក файл ដោយប្តូរពាក្យyour_github_token_hereជាមួយកូនសោ GitHub របស់អ្នក៖GITHUB_TOKEN=your_github_token_here
-
រក្សាទុកក файл: រក្សាទុកការផ្លាស់ប្តូរ ហើយបិទកម្មវិធីកែសម្រួលអត្ថបទ។
-
ដំឡើង
python-dotenv: ប្រសិនបើអ្នកមិនទាន់បានដំឡើងpython-dotenvកញ្ចប់នេះទេ អ្នកត្រូវតែដំឡើងសម្រាប់បញ្ចូលអថេរបរិស្ថានពីក файл.envទៅក្នុងកម្មវិធី Python របស់អ្នក។ អ្នកអាចដំឡើងវា ដោយប្រើpip៖pip install python-dotenv
-
ផ្ទុកអថេរបរិស្ថានក្នុងឯកសារ Python របស់អ្នក: នៅក្នុងស្គ្រីប Python អ្នកប្រើកញ្ចប់
python-dotenvដើម្បីផ្ទុកអថេរបរិស្ថានពីក файл.envដូចខាងក្រោម៖from dotenv import load_dotenv import os # ផ្ទុកអថេរបរិស្ថានពីឯកសារ .env load_dotenv() # ចូលដំណើរការអថេរ GITHUB_TOKEN github_token = os.getenv("GITHUB_TOKEN") print(github_token)
ហើយនោះទៀត! អ្នកបានបង្កើតក файл .env បានជោគជ័យ បន្ថែមកូនសោ GitHub ហើយផ្ទុកវាទៅក្នុងកម្មវិធី Python របស់អ្នក។
ដើម្បីរត់កូដនេះក្នុងកុំព្យូទ័រផ្ទាល់ខ្លួន អ្នកត្រូវតែមានជំនាន់មួយនៃ Python ដំឡើងរួច។
បន្ទាប់មក ដើម្បីប្រើ repository នេះ អ្នកត្រូវតែ clone វា៖
git clone https://github.com/microsoft/generative-ai-for-beginners
cd generative-ai-for-beginnersពេលដែលអ្នកបានទាញយកមកពេញលេញ អ្នកអាចចាប់ផ្តើមបាន!
Miniconda គឺជាកម្មវិធីតំឡើងទន់ខ្សោយសម្រាប់ដំឡើង Conda, Python និងបញ្ចីកញ្ចប់មួយចំនួន។
Conda ផ្ទាល់ជាអ្នកគ្រប់គ្រងកញ្ចប់ដែលធ្វើឱ្យការកំណត់ និងប្ដូរវិភាគ Python virtual environments ស្រួលឡើង។ វាក៏មានប្រយោជន៍សម្រាប់ដំឡើងកញ្ចប់ដែលមិនអាចទាញយកដោយ pip បាន។
អ្នកអាចអនុវត្តតាម មគ្គុទេសក៍ដំឡើង MiniConda សម្រាប់តំឡើងវា។
បន្ទាប់ពីបានដំឡើង Miniconda អ្នកសូម clone repository (បើអ្នកមិនទាន់បានធ្វើ)។
បន្ទាប់មក អ្នកត្រូវបង្កើត virtual environment មួយ។ ដើម្បីធ្វើនេះជាមួយ Conda សូមបង្កើតក файл សម្រាប់ environment ចំណាំ (environment.yml)។ បើអ្នកប្រើ Codespaces សូមបង្កើតក្នុងថត .devcontainer ដូច្នេះក файл ត្រូវជា .devcontainer/environment.yml។
សូមបំពេញក файл environment របស់អ្នកជាមួយស្នាដៃខាងក្រោម៖
name: <environment-name>
channels:
- defaults
- microsoft
dependencies:
- python=<python-version>
- openai
- python-dotenv
- pip
- pip:
- azure-ai-mlបើអ្នកឃើញកំហុសបំពេញកូដ conda អ្នកអាចដំឡើងក្រុមបណ្ណាល័យ Microsoft AI Library ដោយដំណើរការបញ្ជារដូចខាងក្រោមនៅក្នុង terminal ។
conda install -c microsoft azure-ai-ml
ក файл environment កំណត់បរិមាណ dependencies ដែលត្រូវការ។ <environment-name> ជាឈ្មោះដែលអ្នកចង់ប្រើសម្រាប់ Conda environment របស់អ្នក និង <python-version> គឺជាជំនាន់ Python ដែលអ្នកចង់ដំណើរការ ឧ. 3 ជាជំនាន់ Python ដែលថ្មីបំផុត។
បន្ទាប់ពីធ្វើរួច អ្នកអាចបង្កើត Conda environment របស់អ្នក ដោយដំណើរការបញ្ជារខាងក្រោមនៅក្នុង command line/terminal របស់អ្នក៖
conda env create --name ai4beg --file .devcontainer/environment.yml # ច្រកផ្លូវរង .devcontainer ដំណើរការដល់ការដំឡើង Codespace ផ្ទាល់តែប៉ុណ្ណោះ
conda activate ai4begសូមយោងទៅកាន់ មគ្គុទេសក៍ Conda environments ប្រសិនបើអ្នកបញ្ហាណាមួយ។
យើងណែនាំឱ្យប្រើកម្មវិធីកែសម្រួល Visual Studio Code (VS Code) ជាមួយ Python support extension សម្រាប់វគ្គនេះ។ ទោះជាយ៉ាងណា វាជាការណែនាំមួយ មិនមែនជាការទាមទារ។
ចំណាំ: ដោយបើក repo វគ្គនៅក្នុង VS Code អ្នកអាចជ្រើសរើសតំឡើងគម្រោងនៅក្នុង container។ នេះដោយសារតែថត
.devcontainerពិសេសដែលមាននៅក្នុង repo វគ្គ។ នេះនឹងពន្យល់បន្ថែមនៅក្រោយ។
ចំណាំ: ពេលដែលអ្នក clone និងបើកថតក្នុង VS Code វានឹងជូនដំណឹងសម្រាប់តំឡើង Python support extension ដោយស្វ័យប្រវត្តិ។
ចំណាំ: ប្រសិនបើ VS Code ស្នើឱ្យបើក repo នៅក្នុង container សូមបដិសេធដើម្បីប្រើ Python ដែលបានដំឡើងក្នុងកុំព្យូទ័រម្ដងទៀត។
អ្នកអាចធ្វើការលើគម្រោងនេះដោយប្រើបរិយាកាស Jupyter នៅក្នុង Browser របស់អ្នកផងដែរ។ ទាំង Jupyter គ្រប់ប្រភេទ និង Jupyter Hub ផ្តល់បរិយាកាសអភិវឌ្ឍន៍ល្អ ដោយមានលក្ខណៈពិសេសដូចជា auto-completion ការបំភ្លឺកូដ។
ដើម្បីចាប់ផ្តើម Jupyter នៅក្នុងកុំព្យូទ័រផ្ទាល់ ខលទៅ terminal/command line ចុចទៅក្នុងថតវគ្គ ហើយបញ្ជារបញ្ជាខាងក្រោម៖
jupyter notebookឬ
jupyterhubនេះនឹងចាប់ផ្តើម Jupyter instance ហើយ URL សម្រាប់ចូលប្រើ នឹងត្រូវបង្ហាញក្នុង command line។
ពេលដែលអ្នកចូលទៅ URL នេះ អ្នកគួរតែឃើញសេចក្តីសង្ខេបវគ្គ និងអាចរំកិលទៅកាន់ឯកសារ *.ipynb មួយណាមួយបាន។ ឧ. 08-building-search-applications/python/oai-solution.ipynb។
មួយជំនួសដើម្បីកំណត់របស់របរទាំងអស់នៅលើកុំព្យូទ័ររបស់អ្នក ឬ Codespace គឺប្រើ container។ថត .devcontainer ពិសេសនៅក្នុង repo វគ្គ ធ្វើឱ្យ VS Code អាចបង្កើតគម្រោងនៅក្នុង container បាន។ នៅខាងក្រៅ Codespaces វាចាំបាច់តំឡើង Docker ហើយ វាពិតជាលំបាកមួយចំនួន ដូច្នេះយើងណែនាំសម្រាប់អ្នកដែលមានបទពិសោធន៍ក្នុងការ ប្រើ container ប៉ុណ្ណោះ។
វិធីល្អបំផុតក្នុងការការពារអាសយដ្ឋាន API key របស់អ្នកពេលប្រើ GitHub Codespaces គឺដោយប្រើ Codespace Secrets។ សូមអនុវត្តតាម មគ្គុទេសក៍គ្រប់គ្រងសម្ងាត់ Codespaces ដើម្បីស្វែងយល់បន្ថែម។
វគ្គនេះមានមេរៀន គំនិតចំនួន 6 និងមេរៀនកូដចំនួន 6។
សម្រាប់មេរៀនកូដ យើងប្រើសេវា Azure OpenAI។ អ្នកត្រូវការចូលប្រើសេវា Azure OpenAI និងកូនសោ API មួយដើម្បីរត់កូដនេះ។ អ្នកអាចដាក់ពាក្យស្នើសុំដើម្បីទទួលការចូលប្រើដោយ បញ្ចប់ការដាក់ពាក្យនេះ។
ពេលអ្នករង់ចាំសំណើររបស់អ្នក ត្រង់មេរៀនកូដនិមួយៗក៏មានសរសេរ README.md ដែលអ្នកអាចមើលកូដ និងលទ្ធផលបាន។
បើនេះជាលើកដំបូងដែលអ្នកប្រើសេវា Azure OpenAI សូមអនុវត្តតាមមគ្គុទេសក៍នេះដើម្បី បង្កើត និងចេញផ្សាយធនធាន Azure OpenAI Service។
បើនេះជាលើកដំបូងដែលអ្នកប្រើ OpenAI API សូមអនុវត្តតាមមគ្គុទេសក៍ បង្កើត និងប្រើ Interface។
យើងបានបង្កើតប៉ុស្តិ៍ក្នុងម៉ាស៊ីនមេ Discord ផ្លូវការរបស់យើង សហគមន៍ AI Discord សម្រាប់ជួបអ្នករៀនផ្សេងទៀត។ វាជាវិធីល្អក្នុងការតភ្ជាប់ជាមួយអ្នកសហគ្រិន អ្នកសាងសង់ សិស្ស និងគ្រប់គ្នាដែលចង់បង្កើនជំនាញក្នុង Generative AI។
ក្រុមគម្រោងនឹងមានប្រតិបត្តិការលើម៉ាស៊ីនមេ Discord នេះ ដើម្បីជួយអ្នករៀន។
វគ្គនេះជាគម្រោងកម្មវិធីបើកចំហ។ ប្រសិនបើអ្នកឃើញកន្លែងដែលអាចកែលម្អ ឬបញ្ហា សូមបង្កើត Pull Request ឬដាក់កំណត់បញ្ហា GitHub issue។
ក្រុមគម្រោងនឹងតាមដានការចូលរួមទាំងអស់។ ការចូលរួមក្នុងឯកសារបើកចំហជាវិធីដ៏អស្ចារ្យក្នុងការបង្កើតអាជីពរបស់អ្នកក្នុង Generative AI។
ការចូលរួមភាគច្រើនតម្រូវឱ្យអ្នកយល់ព្រមលើ Contributor License Agreement (CLA) ដែលបញ្ជាក់ថាអ្នកមានសិទ្ធិ និងពិតជាប្រើសិទ្ធិដើម្បីផ្តល់សិទ្ធិឲ្យយើងប្រើប្រាស់ការចូលរួមរបស់អ្នក។ សម្រាប់ព័ត៌មានលម្អិត សូមចូលទៅ គេហទំព័រ CLA, Contributor License Agreement។
សំខាន់៖ ពេលបកប្រែអត្ថបទនៅក្នុង repo នេះ សូមធានាថាអ្នកមិនប្រើការបកប្រែដោយម៉ាស៊ីនឡើយ។ យើងនឹងពិនិត្យការបកប្រែតាមរយៈសហគមន៍ ដូច្នេះសូមចូលរួមបកប្រែតែភាសាដែលអ្នកស្គាល់ពេញលេញ។
ពេលអ្នកដាក់សំណើ pull request តែម្ដង អ្នកប្រភេទ CLA-bot នឹងកំណត់ថាអ្នកត្រូវផ្តល់ CLA ឬអត់ ហើយបន្សំ PR តាមបែបគ្រាប់ (ឧ. ស្លាក ឬមតិ)។ ត្រឹមត្រូវអនុវត្តតាមសេចក្តីណែនាំពី bot។ អ្នកត្រូវធ្វើនេះតែម្ដងប៉ុណ្ណោះសម្រាប់គម្រោងទាំងមូលដែលប្រើ CLA របស់យើង។
គម្រោងនេះបានទទួលយក Microsoft Open Source Code of Conduct ។ សម្រាប់ព័ត៌មានបន្ថែម សូមអានព័ត៌មាន FAQ Code of Conduct ឬទាក់ទង អ៊ីមែល opencode សម្រាប់សំណួរឬមតិយោបល់បន្ថែម។
ឥឡូវនេះដែលអ្នកបានបញ្ចប់ជំហានចាំបាច់ដើម្បីបញ្ចប់វគ្គសិក្សានេះហើយ យើងចាប់ផ្ដើមដោយទទួលបាន បទបង្ហាញអំពី Generative AI និង LLMs។
ការព្រមាន៖
ឯកសារនេះត្រូវបានប្រែសម្រួលដោយប្រើសេវាប្រែសម្រួល AI Co-op Translator។ ខណៈពេលដែលយើងខំប្រឹងប្រែងដើម្បីការពារការពិតត្រឹមត្រូវ សូមអោយស្គាល់ថាការប្រែសម្រួលដោយស្វ័យប្រវត្តិអាចមានកំហុស ឬភាពមិនត្រឹមត្រូវ។ ឯកសារដើមនៅភាសាម្ចាស់កំណត់គួរតែត្រូវបានពិចារណាជាដើមទុនដែលមានសុពលភាព។ សម្រាប់ព័ត៌មានសំខាន់ៗ ការប្រែសម្រួលដោយមនុស្សជំនាញត្រូវបានផ្តល់អនុសាសន៍។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំ ឬការអនុវត្តបម្រុងមិនត្រឹមត្រូវ ដែលកើតឡើងពីការប្រើប្រាស់ការប្រែសម្រួលនេះឡើយ។
