278 lines
15 KiB
Markdown
278 lines
15 KiB
Markdown
# คู่มือแก้ปัญหา AI-For-Beginners
|
|
|
|
คู่มือนี้ช่วยคุณแก้ไขปัญหาทั่วไปที่พบเมื่อใช้งานหรือมีส่วนร่วมใน [AI-For-Beginners](https://github.com/microsoft/AI-For-Beginners) repository แต่ละปัญหาจะมีข้อมูลพื้นฐาน อาการ สาเหตุ และวิธีแก้ไขทีละขั้นตอน
|
|
|
|
---
|
|
|
|
## สารบัญ
|
|
|
|
- [ปัญหาทั่วไป](../..)
|
|
- [ปัญหาการติดตั้ง](../..)
|
|
- [ปัญหาการตั้งค่า](../..)
|
|
- [การใช้งานโน้ตบุ๊ก](../..)
|
|
- [ปัญหาด้านประสิทธิภาพ](../..)
|
|
- [ปัญหาเว็บไซต์ตำราเรียน](../..)
|
|
- [ปัญหาการมีส่วนร่วม](../..)
|
|
- [คำถามที่พบบ่อย](../..)
|
|
- [การขอความช่วยเหลือ](../..)
|
|
|
|
---
|
|
|
|
## ปัญหาทั่วไป
|
|
|
|
### 1. Repository ไม่สามารถ Clone ได้อย่างถูกต้อง
|
|
|
|
**พื้นฐาน:** การ Clone ช่วยให้คุณคัดลอก repository ไปยังเครื่องของคุณ
|
|
|
|
**อาการ:**
|
|
- ข้อผิดพลาด: `fatal: repository not found`
|
|
- ข้อผิดพลาด: `Permission denied (publickey)`
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- URL ของ repository ไม่ถูกต้อง
|
|
- สิทธิ์ไม่เพียงพอ
|
|
- SSH keys ยังไม่ได้ตั้งค่า
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **ตรวจสอบ URL ของ repository**
|
|
ใช้ URL แบบ HTTPS:
|
|
```
|
|
git clone https://github.com/microsoft/AI-For-Beginners.git
|
|
```
|
|
2. **เปลี่ยนไปใช้ HTTPS หาก SSH ล้มเหลว**
|
|
หากคุณเห็น `Permission denied (publickey)` ให้ใช้ลิงก์ HTTPS ด้านบนแทน SSH
|
|
3. **ตั้งค่า SSH keys (ถ้าต้องการ)**
|
|
หากคุณต้องการใช้ SSH ให้ทำตาม [คู่มือ SSH ของ GitHub](https://docs.github.com/en/authentication/connecting-to-github-with-ssh)
|
|
|
|
---
|
|
|
|
## ปัญหาการติดตั้ง
|
|
|
|
### 2. ปัญหาสภาพแวดล้อม Python
|
|
|
|
**พื้นฐาน:** Repository นี้ต้องใช้ Python และไลบรารีต่าง ๆ
|
|
|
|
**อาการ:**
|
|
- ข้อผิดพลาด: `ModuleNotFoundError: No module named '<package>'`
|
|
- ข้อผิดพลาดการ Import เมื่อรันสคริปต์หรือโน้ตบุ๊ก
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- ยังไม่ได้ติดตั้ง Dependencies
|
|
- ใช้เวอร์ชัน Python ที่ไม่ถูกต้อง
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **ตั้งค่าสภาพแวดล้อมเสมือน**
|
|
```bash
|
|
python -m venv venv
|
|
source venv/bin/activate # On Windows: venv\Scripts\activate
|
|
```
|
|
2. **ติดตั้ง Dependencies**
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
3. **ตรวจสอบเวอร์ชัน Python**
|
|
ใช้ Python 3.7 หรือใหม่กว่า
|
|
```bash
|
|
python --version
|
|
```
|
|
|
|
### 3. Jupyter ยังไม่ได้ติดตั้ง
|
|
|
|
**พื้นฐาน:** โน้ตบุ๊กเป็นทรัพยากรการเรียนรู้หลัก
|
|
|
|
**อาการ:**
|
|
- ข้อผิดพลาด: `jupyter: command not found`
|
|
- โน้ตบุ๊กไม่สามารถเปิดได้
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- Jupyter ยังไม่ได้ติดตั้ง
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **ติดตั้ง Jupyter Notebook**
|
|
```bash
|
|
pip install notebook
|
|
```
|
|
หรือ หากใช้ Anaconda:
|
|
```bash
|
|
conda install notebook
|
|
```
|
|
2. **เริ่มต้น Jupyter Notebook**
|
|
```bash
|
|
jupyter notebook
|
|
```
|
|
|
|
### 4. ความขัดแย้งของเวอร์ชัน Dependency
|
|
|
|
**พื้นฐาน:** โครงการอาจล้มเหลวหากเวอร์ชันของแพ็กเกจไม่ตรงกัน
|
|
|
|
**อาการ:**
|
|
- ข้อผิดพลาดหรือคำเตือนเกี่ยวกับเวอร์ชันที่ไม่เข้ากัน
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- แพ็กเกจ Python เก่าหรือขัดแย้งกัน
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **ติดตั้งในสภาพแวดล้อมใหม่**
|
|
ลบ venv/conda env เก่าและสร้างใหม่
|
|
2. **ใช้เวอร์ชันที่แน่นอน**
|
|
รันคำสั่ง:
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
หากล้มเหลว ให้ติดตั้งแพ็กเกจที่ขาดหายไปด้วยตนเองตามที่อธิบายใน README
|
|
|
|
---
|
|
|
|
## ปัญหาการตั้งค่า
|
|
|
|
### 5. Environment Variables ยังไม่ได้ตั้งค่า
|
|
|
|
**พื้นฐาน:** โมดูลบางตัวอาจต้องการคีย์ โทเค็น หรือการตั้งค่าคอนฟิก
|
|
|
|
**อาการ:**
|
|
- ข้อผิดพลาด: `KeyError` หรือคำเตือนเกี่ยวกับการตั้งค่าที่ขาดหายไป
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- Environment Variables ที่จำเป็นยังไม่ได้ตั้งค่า
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **ตรวจสอบไฟล์ `.env.example` หรือไฟล์ที่คล้ายกัน**
|
|
2. **สร้างไฟล์ `.env` และกรอกค่าที่จำเป็น**
|
|
3. **โหลดเทอร์มินัลหรือ IDE ใหม่หลังจากตั้งค่า Environment Variables**
|
|
|
|
---
|
|
|
|
## การใช้งานโน้ตบุ๊ก
|
|
|
|
### 6. โน้ตบุ๊กไม่สามารถเปิดหรือรันได้
|
|
|
|
**พื้นฐาน:** โน้ตบุ๊ก Jupyter ต้องการการตั้งค่าที่เหมาะสม
|
|
|
|
**อาการ:**
|
|
- โน้ตบุ๊กไม่สามารถเปิดได้
|
|
- เบราว์เซอร์ไม่เปิดโดยอัตโนมัติ
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- Jupyter ยังไม่ได้ติดตั้ง
|
|
- ปัญหาการตั้งค่าเบราว์เซอร์
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **ติดตั้ง Jupyter (ดูหัวข้อปัญหาการติดตั้งด้านบน)**
|
|
2. **เปิดโน้ตบุ๊กด้วยตนเอง**
|
|
- คัดลอก URL จากเทอร์มินัล (เช่น `http://localhost:8888/?token=...`) และวางลงในเบราว์เซอร์ของคุณ
|
|
|
|
### 7. Kernel ล่มหรือค้าง
|
|
|
|
**พื้นฐาน:** Kernel ของโน้ตบุ๊กอาจล่มเนื่องจากข้อจำกัดของทรัพยากรหรือข้อผิดพลาดในโค้ด
|
|
|
|
**อาการ:**
|
|
- Kernel ล่มหรือรีสตาร์ทซ้ำ ๆ
|
|
- ข้อผิดพลาด Out-of-memory
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- ชุดข้อมูลขนาดใหญ่
|
|
- โค้ดหรือแพ็กเกจที่ไม่เข้ากัน
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **รีสตาร์ท Kernel**
|
|
ใช้ปุ่ม "Restart Kernel" ใน Jupyter
|
|
2. **ตรวจสอบการใช้งานหน่วยความจำ**
|
|
ปิดแอปพลิเคชันที่ไม่ได้ใช้งาน
|
|
3. **รันโน้ตบุ๊กบนแพลตฟอร์มคลาวด์**
|
|
ใช้ [Google Colab](https://colab.research.google.com/) หรือ [Azure Notebooks](https://notebooks.azure.com/)
|
|
|
|
---
|
|
|
|
## ปัญหาด้านประสิทธิภาพ
|
|
|
|
### 8. โน้ตบุ๊กทำงานช้า
|
|
|
|
**พื้นฐาน:** งาน AI บางอย่างต้องใช้หน่วยความจำและ CPU จำนวนมาก
|
|
|
|
**อาการ:**
|
|
- การทำงานช้า
|
|
- พัดลมของแล็ปท็อปทำงานเสียงดัง
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- ชุดข้อมูลหรือโมเดลขนาดใหญ่
|
|
- ทรัพยากรระบบจำกัด
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **ใช้แพลตฟอร์มคลาวด์**
|
|
- อัปโหลดโน้ตบุ๊กไปยัง Colab หรือ Azure Notebooks
|
|
2. **ลดขนาดชุดข้อมูล**
|
|
- ใช้ข้อมูลตัวอย่างสำหรับการฝึกฝน
|
|
3. **ปิดโปรแกรมที่ไม่จำเป็น**
|
|
- เพิ่มพื้นที่ว่างใน RAM ของระบบ
|
|
|
|
---
|
|
|
|
## ปัญหาเว็บไซต์ตำราเรียน
|
|
|
|
### 9. บทเรียนไม่โหลด
|
|
|
|
**พื้นฐาน:** ตำราเรียนออนไลน์แสดงบทเรียนและบทต่าง ๆ
|
|
|
|
**อาการ:**
|
|
- บทเรียน (เช่น Transformers/BERT) หายไปหรือไม่สามารถเปิดได้
|
|
|
|
**ปัญหาที่ทราบ:**
|
|
- [Issue #303](https://github.com/microsoft/AI-For-Beginners/issues/303): “18 Transformers. BERT. can't be opened on the textbook website.” เกิดจากข้อผิดพลาดของชื่อไฟล์ (`READMEtransformers.md` แทนที่จะเป็น `README.md`)
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **ตรวจสอบข้อผิดพลาดการเปลี่ยนชื่อไฟล์**
|
|
หากคุณเป็นผู้มีส่วนร่วม ตรวจสอบให้แน่ใจว่าไฟล์บทเรียนมีชื่อว่า `README.md`
|
|
2. **รายงานไฟล์ที่หายไป**
|
|
เปิด Issue ใน GitHub พร้อมชื่อบทเรียนและรายละเอียดข้อผิดพลาด
|
|
|
|
---
|
|
|
|
## ปัญหาการมีส่วนร่วม
|
|
|
|
### 10. PR ไม่ได้รับการยอมรับหรือการ Build ล้มเหลว
|
|
|
|
**พื้นฐาน:** การมีส่วนร่วมต้องผ่านการทดสอบและปฏิบัติตามแนวทาง
|
|
|
|
**อาการ:**
|
|
- Pull request ถูกปฏิเสธ
|
|
- ข้อผิดพลาดใน CI/CD pipeline
|
|
|
|
**สาเหตุที่เป็นไปได้:**
|
|
- การทดสอบล้มเหลว
|
|
- ไม่ปฏิบัติตามมาตรฐานการเขียนโค้ด
|
|
|
|
**วิธีแก้ไข:**
|
|
1. **อ่านแนวทางการมีส่วนร่วม**
|
|
- ปฏิบัติตาม [CONTRIBUTING.md](https://github.com/microsoft/AI-For-Beginners/blob/main/CONTRIBUTING.md) ของ repository
|
|
2. **รันการทดสอบในเครื่องก่อนการ Push**
|
|
3. **ตรวจสอบกฎการ linting หรือข้อกำหนดการจัดรูปแบบ**
|
|
|
|
---
|
|
|
|
## คำถามที่พบบ่อย
|
|
|
|
### ฉันจะหาความช่วยเหลือสำหรับโมดูลเฉพาะได้ที่ไหน?
|
|
- แต่ละโมดูลมักจะมี README ของตัวเอง เริ่มต้นที่นั่นสำหรับคำแนะนำการตั้งค่าและการใช้งาน
|
|
|
|
### ฉันจะรายงานบั๊กหรือขอฟีเจอร์ได้อย่างไร?
|
|
- [เปิด Issue ใน GitHub](https://github.com/microsoft/AI-For-Beginners/issues/new) พร้อมคำอธิบายที่ชัดเจนและขั้นตอนการทำซ้ำ
|
|
|
|
### ฉันสามารถขอความช่วยเหลือได้หรือไม่หากปัญหาของฉันไม่ได้อยู่ในรายการ?
|
|
- ได้! ค้นหา Issue ที่มีอยู่ก่อน และหากคุณไม่พบปัญหาของคุณ ให้สร้าง Issue ใหม่
|
|
|
|
---
|
|
|
|
## การขอความช่วยเหลือ
|
|
|
|
- **ตรวจสอบ Issues:** [GitHub Issues](https://github.com/microsoft/AI-For-Beginners/issues)
|
|
- **ถามคำถาม:** ใช้ GitHub Discussions หรือเปิด Issue
|
|
- **ชุมชน:** ดูลิงก์ใน repository สำหรับตัวเลือกแชท/ฟอรัม
|
|
|
|
---
|
|
|
|
_อัปเดตล่าสุด: 20 กันยายน 2025_
|
|
|
|
---
|
|
|
|
**ข้อจำกัดความรับผิดชอบ**:
|
|
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI [Co-op Translator](https://github.com/Azure/co-op-translator) แม้ว่าเราจะพยายามให้การแปลมีความถูกต้องมากที่สุด แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ ขอแนะนำให้ใช้บริการแปลภาษามนุษย์ที่มีความเชี่ยวชาญ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดจากการใช้การแปลนี้ |