เมื่อมองย้อนกลับไปถึงกระบวนการเรียนรู้ที่ผ่านมา วิดีโอของอาจารย์ Ng Enda และ Li Hongyi ได้ให้ความช่วยเหลือฉันอย่างมากในการเดินทางสู่การเรียนรู้เชิงลึก วิธีการอธิบายที่ตลกขบขันและคำอธิบายที่เรียบง่ายและใช้งานง่ายทำให้การเรียนรู้เชิงทฤษฎีที่น่าเบื่อมีชีวิตชีวาและน่าสนใจ
อย่างไรก็ตาม ในทางปฏิบัติ นักเรียนหลายคนจะกังวลในตอนแรกว่าจะรับ API ของโมเดลต่างประเทศขนาดใหญ่ได้อย่างไร แม้ว่าในที่สุดพวกเขาจะสามารถหาวิธีแก้ปัญหาได้ แต่ความกลัวในครั้งแรกจะทำให้ความก้าวหน้าในการเรียนรู้ล่าช้าและค่อยๆ เปลี่ยนแปลงไป ของ "เพียงแค่ดูวิดีโอ" ฉันมักจะเห็นการสนทนาที่คล้ายกันในพื้นที่แสดงความคิดเห็น ดังนั้นฉันจึงตัดสินใจใช้เวลาว่างเพื่อช่วยให้นักเรียนก้าวข้ามขีดจำกัดนี้ นี่เป็นจุดประสงค์ดั้งเดิมของโครงการนี้เช่นกัน
โปรเจ็กต์นี้จะไม่มีบทช่วยสอนเกี่ยวกับการเข้าถึงอินเทอร์เน็ตเชิงวิทยาศาสตร์ และจะไม่อาศัยอินเทอร์เฟซที่ปรับแต่งตามแพลตฟอร์ม แต่จะใช้ OpenAI SDK ที่เข้ากันได้มากกว่าเพื่อช่วยให้ทุกคนเรียนรู้ความรู้ทั่วไปมากขึ้น
โปรเจ็กต์จะเริ่มต้นด้วยการเรียก API แบบง่ายๆ และนำคุณเข้าสู่โลกของโมเดลขนาดใหญ่ทีละน้อย ในกระบวนการนี้ คุณจะเชี่ยวชาญทักษะต่างๆ เช่น การสรุปวิดีโอ AI การปรับแต่ง LLM แบบละเอียด และ การสร้างภาพ AI
ขอแนะนำอย่างยิ่งให้ดูหลักสูตร "Introduction to Generative Artificial Intelligence" ของครู Li Hongyi เพื่อการเรียนรู้ไปพร้อมๆ กัน: เข้าถึงลิงก์ที่เกี่ยวข้องกับหลักสูตรได้อย่างรวดเร็ว
ขณะนี้ โปรเจ็กต์ยังมี CodePlayground อีกด้วย คุณสามารถกำหนดค่าสภาพแวดล้อมตามเอกสารประกอบ รันสคริปต์ด้วยโค้ดหนึ่งบรรทัด และสัมผัสกับเสน่ห์ของ AI
?เรียงความวิทยานิพนธ์อยู่ใน PaperNotes และเอกสารพื้นฐานที่เกี่ยวข้องกับแบบจำลองขนาดใหญ่จะค่อยๆ อัปโหลด
อิมเมจพื้นฐานพร้อมแล้ว หากคุณยังไม่ได้กำหนดค่าสภาพแวดล้อมการเรียนรู้เชิงลึกของคุณเอง คุณอาจลองใช้ Docker ได้เช่นกัน
ขอให้มีการเดินทางที่ดี!
---
: ความรู้พื้นฐาน ดูตามต้องการ หรือข้ามไปชั่วคราว ผลลัพธ์ไฟล์โค้ดจะแสดงในบทความ แต่ยังแนะนำให้รันโค้ดด้วยตนเอง อาจมีข้อกำหนดเกี่ยวกับหน่วยความจำวิดีโอAPI
: บทความนี้ใช้เฉพาะ API ของรุ่นใหญ่เท่านั้น ไม่อยู่ภายใต้ข้อจำกัดของอุปกรณ์ และสามารถทำงานได้โดยไม่ต้องใช้ GPULLM
: แบบฝึกหัดที่เกี่ยวข้องกับโมเดลภาษาขนาดใหญ่ ไฟล์โค้ดอาจมีข้อกำหนดหน่วยความจำวิดีโอSD
: Stable Diffusion แนวทางปฏิบัติที่เกี่ยวข้องกับไดอะแกรม Vincentian และไฟล์โค้ดมีข้อกำหนดหน่วยความจำวิดีโอFile
ได้ และผลการเรียนรู้จะเหมือนเดิมSetting
-> Accelerator
->选择GPU
代码执行程序
->更改运行时类型
->选择GPU
แนะนำ | แท็ก | อธิบาย | ไฟล์ | ออนไลน์ |
---|---|---|---|---|
00. ขั้นตอนการรับ API ของ Alibaba Big Model | เอพีไอ | เราจะนำคุณไปทีละขั้นตอนเพื่อรับ API หากนี่เป็นครั้งแรกในการลงทะเบียน คุณจะต้องดำเนินการยืนยันตัวตน (การจดจำใบหน้า) | ||
01. การแนะนำครั้งแรกเกี่ยวกับ LLM API: การกำหนดค่าสภาพแวดล้อมและการสาธิตการสนทนาแบบหลายรอบ | เอพีไอ | นี่คือการกำหนดค่าเบื้องต้นและการสาธิต รหัสการสนทนาได้รับการแก้ไขจากเอกสารการพัฒนาของอาลีบาบา | รหัส | กากเกิล โคลาบ |
02. เริ่มต้นง่ายๆ: สร้างแอปพลิเคชัน AI ผ่าน API และ Gradio | เอพีไอ | แนะนำวิธีใช้ Gradio เพื่อสร้างแอปพลิเคชัน AI อย่างง่าย | รหัส | โคลาบ |
03. คำแนะนำขั้นสูง: ปรับแต่งพร้อมท์เพื่อปรับปรุงความสามารถในการแก้ไขปัญหาโมเดลขนาดใหญ่ | เอพีไอ | คุณจะได้เรียนรู้การปรับแต่ง Prompt เพื่อปรับปรุงความสามารถของโมเดลขนาดใหญ่ในการแก้ปัญหาทางคณิตศาสตร์ นอกจากนี้ จะมีการจัดเตรียมเวอร์ชัน Gradio และที่ไม่ใช่ Gradio ด้วย และรายละเอียดโค้ดจะปรากฏขึ้น | รหัส | กากเกิล โคลาบ |
04. ทำความเข้าใจ LoRA: จากเลเยอร์เชิงเส้นไปจนถึงกลไกความสนใจ | - | ก่อนที่จะเข้าสู่การฝึกหัดอย่างเป็นทางการ คุณจำเป็นต้องรู้แนวคิดพื้นฐานของ LoRA บทความนี้จะพาคุณตั้งแต่การใช้ LoRA เลเยอร์เชิงเส้นไปจนถึงกลไกความสนใจ | ||
05. ทำความเข้าใจกับซีรีส์ AutoModel ของ Hugging Face: คลาสการโหลดโมเดลอัตโนมัติสำหรับงานต่างๆ | - | โมดูลที่เรากำลังจะใช้คือ AutoModel ใน Hugging Face บทความนี้เป็นความรู้เบื้องต้นเช่นกัน (แน่นอนคุณสามารถข้ามไปอ่านได้ในภายหลังหากคุณมีข้อสงสัย) | รหัส | กากเกิล โคลาบ |
06. เริ่มต้นใช้งาน: ปรับใช้โมเดลภาษาแรกของคุณ | นิติศาสตร์มหาบัณฑิต | การนำโมเดลภาษาขั้นพื้นฐานไปใช้ โปรเจ็กต์ยังไม่มีข้อกำหนดที่ยากสำหรับ GPU จนถึงตอนนี้ คุณสามารถเรียนรู้ต่อไปได้ | รหัส app_fastapi.py app_flask.py | |
07. สำรวจความสัมพันธ์ระหว่างพารามิเตอร์โมเดลและหน่วยความจำวิดีโอ และผลกระทบของความแม่นยำที่แตกต่างกัน | - | การทำความเข้าใจความสอดคล้องระหว่างพารามิเตอร์โมเดลและหน่วยความจำวิดีโอ ตลอดจนการเรียนรู้วิธีการนำเข้าที่มีความแม่นยำต่างกันจะทำให้การเลือกแบบจำลองของคุณมีทักษะมากขึ้น | ||
08. พยายามปรับแต่ง LLM: ปล่อยให้มันเขียนบทกวี Tang | นิติศาสตร์มหาบัณฑิต | บทความนี้เหมือนกับ 03 คำแนะนำขั้นสูง: การปรับแต่ง Prompt เพื่อปรับปรุงความสามารถในการแก้ปัญหาโมเดลขนาดใหญ่ โดยพื้นฐานแล้วมุ่งเน้นไปที่ "การใช้" มากกว่า "การเขียน" คุณสามารถมีความเข้าใจในกระบวนการโดยรวมได้เหมือนเมื่อก่อน ส่วนไฮเปอร์พารามิเตอร์เพื่อดูผลกระทบต่อการปรับแต่งอย่างละเอียด | รหัส | กากเกิล โคลาบ |
09. ความเข้าใจเชิงลึกเกี่ยวกับ Beam Search: หลักการ ตัวอย่าง และการนำโค้ดไปใช้ | - | จากตัวอย่างไปจนถึงการสาธิตโค้ด การอธิบายคณิตศาสตร์ของ Beam Search สิ่งนี้น่าจะช่วยขจัดความสับสนจากการอ่านครั้งก่อน และสุดท้ายก็เป็นตัวอย่างง่ายๆ ของการใช้ไลบรารี Hugging Face Transformers (คุณสามารถลองใช้ได้ หากคุณข้ามบทความก่อนหน้านี้) . | รหัส | กากเกิล โคลาบ |
10. Top-K กับ Top-P: กลยุทธ์การสุ่มตัวอย่างและอิทธิพลของอุณหภูมิในแบบจำลองกำเนิด | - | นอกจากนี้เพื่อแสดงให้คุณเห็นกลยุทธ์การสร้างรุ่นอื่น ๆ | รหัส | กากเกิล โคลาบ |
11. ตัวอย่างการปรับแต่ง DPO: การเพิ่มประสิทธิภาพโมเดลภาษาขนาดใหญ่ LLM ตามความต้องการของมนุษย์ | นิติศาสตร์มหาบัณฑิต | ตัวอย่างการปรับแต่งอย่างละเอียดโดยใช้ DPO | รหัส | กากเกิล โคลาบ |
12. การระบุแหล่งที่มาของคุณสมบัติ Inseq: ตีความผลลัพธ์ของ LLM ด้วยสายตา | นิติศาสตร์มหาบัณฑิต | ตัวอย่างภาพงานการแปลและการสร้างข้อความ (เติมคำในช่องว่าง) | รหัส | กากเกิล โคลาบ |
13. ทำความเข้าใจอคติที่เป็นไปได้ใน AI | นิติศาสตร์มหาบัณฑิต | ไม่จำเป็นต้องเข้าใจโค้ด และสามารถใช้เป็นการสำรวจอย่างสนุกสนานในช่วงเวลาว่างได้ | รหัส | กากเกิล โคลาบ |
14. PEFT: ใช้ LoRA กับโมเดลขนาดใหญ่อย่างรวดเร็ว | - | เรียนรู้วิธีเพิ่มเลเยอร์ LoRA หลังจากนำเข้าโมเดล | รหัส | กากเกิล โคลาบ |
15. ใช้ API เพื่อใช้สรุปวิดีโอ AI: สร้างผู้ช่วยวิดีโอ AI ของคุณเอง | API และ LLM | คุณจะได้เรียนรู้หลักการเบื้องหลังผู้ช่วยสรุปวิดีโอ AI ทั่วไป และเริ่มต้นใช้งานการสรุปวิดีโอ AI | รหัส - เวอร์ชันเต็ม รหัส - เวอร์ชัน Lite ?สคริปต์ | กากเกิล โคลาบ |
16. ใช้ LoRA เพื่อปรับแต่งการกระจายความเสถียร: ถอดแยกชิ้นส่วนเตาเล่นแร่แปรธาตุและลงสี AI ครั้งแรกของคุณ | เอสดี | ใช้ LoRA เพื่อปรับแต่งโมเดลไดอะแกรม Vincent และตอนนี้ คุณยังสามารถมอบไฟล์ LoRA ของคุณให้กับผู้อื่นได้อีกด้วย | รหัส รหัส - เวอร์ชัน Lite | กากเกิล โคลาบ |
17. การอภิปรายสั้น ๆ เกี่ยวกับการหาปริมาณของโมเดล RTN: asymmetric vs symmetric.md | - | เพื่อทำความเข้าใจเพิ่มเติมเกี่ยวกับพฤติกรรมการหาปริมาณของโมเดล RTN บทความนี้จึงใช้ INT8 เป็นตัวอย่างในการอธิบาย | รหัส | กากเกิล โคลาบ |
18. ภาพรวมของเทคโนโลยีการหาปริมาณแบบจำลองและการวิเคราะห์รูปแบบไฟล์ GGUF/GGML | - | นี่คือบทความภาพรวมที่อาจแก้ไขข้อสงสัยของคุณเมื่อใช้ GGUF/GGML | ||
19a. จากการโหลดไปจนถึงการสนทนา: การรันโมเดลขนาดใหญ่ LLM เชิงปริมาณ (GPTQ & AWQ) ภายในเครื่องโดยใช้ Transformers 19b จากการโหลดไปสู่การสนทนา: การรัน LLM ขนาดใหญ่แบบเชิงปริมาณ (GGUF) ในเครื่องโดยใช้ Llama-cpp-python | นิติศาสตร์มหาบัณฑิต | คุณจะปรับใช้แบบจำลองเชิงปริมาณด้วยพารามิเตอร์ 7 พันล้าน (7B) บนคอมพิวเตอร์ของคุณ โปรดทราบว่าบทความนี้ไม่จำเป็นต้องใช้การ์ดกราฟิก 19 a การใช้ Transformers ซึ่งเกี่ยวข้องกับการโหลดโมเดลในรูปแบบ GPTQ และ AWQ 19 b การใช้ Llama-cpp-python ซึ่งเกี่ยวข้องกับการโหลดโมเดลในรูปแบบ GGUF นอกจากนี้ คุณยังจะทำหน้าที่โต้ตอบกล่องโต้ตอบโมเดลขนาดใหญ่ในพื้นที่ให้สมบูรณ์อีกด้วย | รหัส-Transformers รหัส-Llama-cpp-python ?สคริปต์ | |
20. การฝึกปฏิบัติเบื้องต้นของ RAG: ตั้งแต่การแยกเอกสารไปจนถึงฐานข้อมูลเวกเตอร์และการสร้างคำถามและคำตอบ | นิติศาสตร์มหาบัณฑิต | แนวทางปฏิบัติที่เกี่ยวข้องกับ RAG เรียนรู้ว่าการแบ่งข้อความแบบเรียกซ้ำทำงานอย่างไร | รหัส | |
21. BPE กับ Word Piece: ทำความเข้าใจหลักการทำงานของ Tokenizer และวิธีการแบ่งส่วนคำย่อย | - | การทำงานพื้นฐานของ Tokenizer เรียนรู้เกี่ยวกับวิธีการแบ่งส่วนคำย่อยทั่วไป: BPE และ Word Piece ทำความเข้าใจการมาสก์ความสนใจ (Attention Mask) และรหัสประเภทโทเค็น (รหัสประเภทโทเค็น) | รหัส | กากเกิล โคลาบ |
22. การมอบหมาย - เบิร์ตปรับแต่งการตอบคำถามแบบแยกส่วนอย่างละเอียด | นี่เป็นงานที่ใช้ BERT เพื่อปรับแต่งคำถามและคำตอบต่อเนื่อง คุณสามารถลองเข้าร่วม "การแข่งขัน" ของ Kaggle ได้ คุณจะได้รับบทความแนะนำพร้อมเคล็ดลับทั้งหมดหลังจากผ่านไปหนึ่งสัปดาห์ คุณสามารถเลือกเรียนได้เลย หรือทิ้งไว้ทีหลัง บทความเบื้องต้นจะไม่ครอบคลุมคำอธิบายของงาน และโค้ดสองเวอร์ชันจะถูกอัปโหลดเพื่อการเรียนรู้ ดังนั้นอย่ากังวล จะไม่มีกำหนดเวลาที่นี่ | รหัส - การมอบหมาย | กากเกิล โคลาบ |
เคล็ดลับ
หากคุณต้องการดึงคลังข้อมูลเพื่ออ่าน .md
ในเครื่อง เมื่อเกิดข้อผิดพลาดของสูตร โปรดใช้ Ctrl+F
หรือ Command+F
ค้นหา \_
และแทนที่ทั้งหมดด้วย _
อ่านเพิ่มเติม:
แนะนำ | อธิบาย |
---|---|
ก. ใช้ HFD เพื่อเร่งความเร็วการดาวน์โหลดโมเดล Hugging Face และชุดข้อมูล | หากคุณรู้สึกว่าการดาวน์โหลดโมเดลช้าเกินไป คุณสามารถดูการกำหนดค่าได้จากบทความนี้ หากคุณพบข้อผิดพลาด 443 ที่เกี่ยวข้องกับพร็อกซี คุณสามารถลองตรวจสอบบทความนี้ได้ |
ข. ตรวจสอบคำสั่งบรรทัดคำสั่งพื้นฐานอย่างรวดเร็ว (ใช้ได้กับ Linux/Mac) | การตรวจสอบคำสั่งบรรทัดคำสั่งอย่างรวดเร็วโดยทั่วไปประกอบด้วยคำสั่งทั้งหมดที่เกี่ยวข้องกับคลังข้อมูลปัจจุบัน ตรวจสอบเมื่อคุณสับสน |
ค. แนวทางแก้ไขปัญหาบางอย่าง | ที่นี่เราจะแก้ไขปัญหาบางอย่างที่อาจเกิดขึ้นระหว่างการดำเนินงานของโครงการ - จะดึงคลังข้อมูลระยะไกลเพื่อเขียนทับการแก้ไขในเครื่องทั้งหมดได้อย่างไร - จะดูและลบไฟล์ที่ดาวน์โหลดโดย Hugging Face ได้อย่างไร และจะแก้ไขเส้นทางการบันทึกได้อย่างไร |
d. วิธีโหลดโมเดล GGUF (วิธีแก้ปัญหาสำหรับ Shared/Shared/Split/00001-of-0000...) | - เรียนรู้เกี่ยวกับคุณสมบัติใหม่ของ Transformers เกี่ยวกับ GGUF - ใช้ Transformers/Llama-cpp-python/Ollama เพื่อโหลดไฟล์โมเดลในรูปแบบ GGUF - เรียนรู้การรวมไฟล์ GGUF ที่กระจัดกระจาย - แก้ไขปัญหาที่ไม่สามารถถ่าย LLama-cpp-python ได้ |
จ. การเพิ่มประสิทธิภาพข้อมูล: การวิเคราะห์วิธีการทั่วไปของ torchvision.transforms | - ทำความเข้าใจวิธีการปรับปรุงข้อมูลภาพที่ใช้กันทั่วไป รหัส |. Kaggle | |
ฉ ฟังก์ชันการสูญเสียข้ามเอนโทรปี nn.CrossEntropyLoss() คำอธิบายโดยละเอียดและการแจ้งเตือนประเด็นสำคัญ (PyTorch) | - ทำความเข้าใจหลักการทางคณิตศาสตร์ของการสูญเสียเอนโทรปีข้ามและการนำ PyTorch ไปใช้ - เรียนรู้สิ่งที่ควรใส่ใจเมื่อใช้งานครั้งแรก |
g. การฝังเลเยอร์ nn.Embedding() คำอธิบายโดยละเอียดและการเตือนประเด็นสำคัญ (PyTorch) | - เข้าใจแนวคิดของการฝังเลเยอร์และการฝังคำ - แสดงภาพการฝังโดยใช้โมเดลที่ได้รับการฝึกอบรมล่วงหน้า รหัส |. Kaggle | |
h. ใช้ Docker เพื่อกำหนดค่าสภาพแวดล้อมการเรียนรู้เชิงลึก (Linux) อย่างรวดเร็ว h. ความรู้เบื้องต้นเกี่ยวกับคำสั่งพื้นฐานของ Docker และการแก้ไขข้อผิดพลาดทั่วไป | - ใช้คำสั่งสองบรรทัดเพื่อกำหนดค่าสภาพแวดล้อมการเรียนรู้เชิงลึก - ความรู้เบื้องต้นเกี่ยวกับคำสั่งพื้นฐานของ Docker - แก้ไขข้อผิดพลาดทั่วไปสามประการระหว่างการใช้งาน |
คำอธิบายโฟลเดอร์:
การสาธิต
ไฟล์โค้ดทั้งหมดจะถูกเก็บไว้ที่นั่น
ข้อมูล
ไม่จำเป็นต้องใส่ใจกับโฟลเดอร์นี้เพื่อเก็บข้อมูลขนาดเล็กที่อาจใช้ในโค้ด
GenAI_PDF
นี่คือไฟล์ PDF ของงานสำหรับหลักสูตร [ความรู้เบื้องต้นเกี่ยวกับปัญญาประดิษฐ์ทั่วไป] ฉันอัปโหลดไฟล์เหล่านี้เนื่องจากเดิมถูกบันทึกไว้ใน Google Drive
แนะนำ
เอกสารคำแนะนำทั้งหมดจะอยู่ที่นั่น
สินทรัพย์
นี่คือรูปภาพที่ใช้ในไฟล์ .md ไม่จำเป็นต้องใส่ใจกับโฟลเดอร์นี้
กระดาษโน้ต
เรียงความวิทยานิพนธ์.
รหัสสนามเด็กเล่น
ตัวอย่างสคริปต์โค้ดที่น่าสนใจ (เวอร์ชันของเล่น)
README.md
summer.py ?สคริปต์
การสรุปวิดีโอ / เสียง / คำบรรยาย AI
chat.py ?สคริปต์
การสนทนาของเอไอ
ข้อมูลเบื้องต้นเกี่ยวกับทรัพยากรการเรียนรู้ปัญญาประดิษฐ์เชิงสร้างสรรค์
หน้าแรกของหลักสูตร
เป็นทางการ |. วิดีโอที่ได้รับอนุญาต: YouTube |
การผลิตและแบ่งปันเวอร์ชั่นกระจกจีนได้รับอนุญาตจากอาจารย์ Li Hongyi ขอขอบคุณอาจารย์สำหรับการแบ่งปันความรู้ที่ไม่เห็นแก่ตัว!
PS อิมเมจภาษาจีนจะรับรู้ถึงฟังก์ชันทั้งหมดของรหัสงาน (การดำเนินการในท้องถิ่น) Kaggle เป็นแพลตฟอร์มออนไลน์ที่สามารถเชื่อมต่อโดยตรงในประเทศจีน เนื้อหาของ Colab ภาษาจีนและ Kaggle นั้นสอดคล้องกันกับงานดั้งเดิม เพียงเลือกหนึ่งในนั้นเพื่อทำการศึกษาให้เสร็จสิ้น
ตามความต้องการที่แท้จริง ให้เลือกวิธีการจากด้านล่างเพื่อเตรียมสภาพแวดล้อมการเรียนรู้ คลิก ►
หรือข้อความเพื่อขยาย
Kaggle (แนะนำการเชื่อมต่อโดยตรงในประเทศ): อ่านบทความ "Kaggle: คู่มือการใช้งาน GPU ฟรี ทางเลือกในอุดมคติสำหรับ Colab" เพื่อเรียนรู้เพิ่มเติม
Colab (ต้องมีการเข้าถึงอินเทอร์เน็ตเชิงวิทยาศาสตร์)
ไฟล์โค้ดในโครงการจะซิงโครไนซ์บนทั้งสองแพลตฟอร์ม
ลินุกซ์ (อูบุนตู) :
sudo apt-get update
sudo apt-get install git
ระบบปฏิบัติการ macOS :
ติดตั้ง Homebrew ก่อน:
/bin/bash -c " $( curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh ) "
จากนั้นเรียกใช้:
brew install git
หน้าต่าง :
ดาวน์โหลดและติดตั้งจาก Git สำหรับ Windows
ลินุกซ์ (อูบุนตู) :
sudo apt-get update
sudo apt-get install wget curl
ระบบปฏิบัติการ macOS :
brew install wget curl
หน้าต่าง :
ดาวน์โหลดและติดตั้งจากเว็บไซต์อย่างเป็นทางการของ Wget สำหรับ Windows และ Curl
เยี่ยมชมเว็บไซต์อย่างเป็นทางการของ Anaconda ป้อนที่อยู่อีเมลของคุณและตรวจสอบอีเมลของคุณ คุณควรจะเห็น:
คลิก Download Now
เลือกเวอร์ชันที่เหมาะสมและดาวน์โหลด (มีทั้ง Anaconda และ Miniconda):
ลินุกซ์ (อูบุนตู) :
ติดตั้งอนาคอนด้า
ไปที่ repo.anaconda.com เพื่อเลือกเวอร์ชัน
# 下载 Anaconda 安装脚本(以最新版本为例)
wget https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh
# 运行安装脚本
bash Anaconda3-2024.10-1-Linux-x86_64.sh
# 按照提示完成安装(先回车,空格一直翻页,翻到最后输入 yes,回车)
# 安装完成后,刷新环境变量或者重新打开终端
source ~ /.bashrc
ติดตั้ง Miniconda (แนะนำ)
ไปที่ repo.anaconda.com/miniconda เพื่อเลือกเวอร์ชัน Miniconda เป็นเวอร์ชันปรับปรุงของ Anaconda ซึ่งมีเพียง Conda และ Python เท่านั้น
# 下载 Miniconda 安装脚本
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# 运行安装脚本
bash Miniconda3-latest-Linux-x86_64.sh
# 按照提示完成安装(先回车,空格一直翻页,翻到最后输入 yes,回车)
# 安装完成后,刷新环境变量或者重新打开终端
source ~ /.bashrc
ระบบปฏิบัติการ macOS :
แทนที่ URL ในคำสั่ง Linux ตามลำดับ
ติดตั้งอนาคอนด้า
ไปที่ repo.anaconda.com เพื่อเลือกเวอร์ชัน
ติดตั้ง Miniconda (แนะนำ)
ไปที่ repo.anaconda.com/miniconda เพื่อเลือกเวอร์ชัน
ป้อนคำสั่งต่อไปนี้ในเทอร์มินัล หากข้อมูลเวอร์ชันปรากฏขึ้น แสดงว่าการติดตั้งสำเร็จ
conda --version
cat << ' EOF ' > ~/.condarc
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirror.nju.edu.cn/anaconda/pkgs/main
- https://mirror.nju.edu.cn/anaconda/pkgs/r
- https://mirror.nju.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirror.nju.edu.cn/anaconda/cloud
pytorch: https://mirror.nju.edu.cn/anaconda/cloud
EOF
[!บันทึก]
แหล่งมิเรอร์หลายแห่งที่มีอยู่ในปีที่แล้วไม่มีให้บริการอีกต่อไป สำหรับการกำหนดค่าปัจจุบันของไซต์มิเรอร์อื่น ๆ คุณสามารถดูเอกสารที่ดีมากนี้จาก NTU: ความช่วยเหลือเกี่ยวกับการใช้งานมิเรอร์
หมายเหตุ : หากติดตั้ง Anaconda หรือ Miniconda ไว้แล้ว pip
จะถูกรวมไว้ในระบบและไม่จำเป็นต้องติดตั้งเพิ่มเติม
ลินุกซ์ (อูบุนตู) :
sudo apt-get update
sudo apt-get install python3-pip
ระบบปฏิบัติการ macOS :
brew install python3
หน้าต่าง :
ดาวน์โหลดและติดตั้ง Python ตรวจสอบให้แน่ใจว่าได้เลือกตัวเลือก "เพิ่ม Python ไปยัง PATH" แล้ว
เปิดพรอมต์คำสั่งแล้วป้อน:
python -m ensurepip --upgrade
ป้อนคำสั่งต่อไปนี้ในเทอร์มินัล หากข้อมูลเวอร์ชันปรากฏขึ้น แสดงว่าการติดตั้งสำเร็จ
pip --version
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple
ดึงโปรเจ็กต์ด้วยคำสั่งต่อไปนี้:
git clone https://github.com/Hoper-J/AI-Guide-and-Demos-zh_CN.git
cd AI-Guide-and-Demos-zh_CN
ไม่มีการจำกัดเวอร์ชัน แต่อาจสูงกว่าได้:
conda create -n aigc python=3.9
กด y
และ Enter เพื่อดำเนินการต่อ หลังจากการสร้างเสร็จสมบูรณ์ ให้เปิดใช้งานสภาพแวดล้อมเสมือน:
conda activate aigc
ถัดไป คุณต้องติดตั้งการพึ่งพาพื้นฐาน โปรดดูเว็บไซต์อย่างเป็นทางการของ PyTorch โดยใช้ CUDA 11.8 เป็นตัวอย่าง (หากการ์ดกราฟิกไม่รองรับ 11.8 คุณต้องเปลี่ยนคำสั่ง) เลือกหนึ่งในสองรายการที่จะติดตั้ง:
# pip
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# conda
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
ตอนนี้เราได้กำหนดค่าสภาพแวดล้อมที่จำเป็นทั้งหมดเรียบร้อยแล้ว และพร้อมที่จะเริ่มเรียนรู้ :) การขึ้นต่อกันที่เหลือจะแสดงรายการแยกกันในแต่ละบทความ
[!บันทึก]
อิมเมจ Docker มีการอ้างอิงที่ติดตั้งไว้ล่วงหน้า ดังนั้นจึงไม่จำเป็นต้องติดตั้งใหม่
ขั้นแรกให้ติดตั้ง jupyter-lab
ซึ่งใช้งานง่ายกว่า jupyter notebook
มาก
pip install jupyterlab
หลังจากการติดตั้งเสร็จสมบูรณ์ ให้รันคำสั่งต่อไปนี้:
jupyter-lab
ตอนนี้คุณสามารถเข้าถึงได้ผ่านลิงก์ป๊อปอัปซึ่งโดยปกติจะอยู่ที่พอร์ต 8888 สำหรับอินเทอร์เฟซแบบกราฟิก ให้กด Ctrl
บน Windows/Linux ค้างไว้ กด Command
บน mac ค้างไว้ จากนั้นคลิกที่ลิงก์เพื่อข้ามไปโดยตรง ณ จุดนี้ คุณจะได้รับภาพรวมของโครงการ:
นักเรียนที่ยังไม่ได้ติดตั้ง Docker สามารถอ่านบทความ "ใช้ Docker เพื่อกำหนดค่าสภาพแวดล้อมการเรียนรู้เชิงลึก (Linux) ได้อย่างรวดเร็ว" แนะนำให้ผู้เริ่มต้นอ่าน "คำแนะนำพื้นฐานของ Docker และการแก้ไขข้อผิดพลาดทั่วไป"
ทุกเวอร์ชันได้รับการติดตั้งล่วงหน้าด้วยเครื่องมือทั่วไป เช่น sudo
, pip
, conda
, wget
, curl
และ vim
และมีการกำหนดค่าแหล่งรูปภาพในประเทศของ pip
และ conda
แล้ว ในเวลาเดียวกัน มันรวม zsh
และปลั๊กอินบรรทัดคำสั่งที่ใช้งานได้จริงบางตัว (การเติมคำสั่งอัตโนมัติ การเน้นไวยากรณ์ และเครื่องมือข้ามไดเร็กทอรี z
) นอกจากนี้ jupyter notebook
และ jupyter lab
ได้รับการติดตั้งไว้ล่วงหน้าแล้ว และเทอร์มินัลเริ่มต้นได้รับการตั้งค่าเป็น zsh
เพื่ออำนวยความสะดวกในการพัฒนาการเรียนรู้เชิงลึกในคอนเทนเนอร์ได้รับการปรับให้เหมาะสมเพื่อหลีกเลี่ยงอักขระที่อ่านไม่ออก ที่อยู่มิเรอร์ในประเทศของ Hugging Face ก็ได้รับการกำหนดค่าไว้ล่วงหน้าเช่นกัน
pytorch/pytorch:2.5.1-cuda11.8-cudnn9-devel
เวอร์ชันหลามเริ่มต้นคือ python
เวอร์ชันสามารถแก้ไขได้โดยตรงผ่าน conda install python==版本号
การติดตั้งที่เหมาะสม :
wget
, curl
: เครื่องมือดาวน์โหลดบรรทัดคำสั่งvim
, nano
: โปรแกรมแก้ไขข้อความgit
: เครื่องมือควบคุมเวอร์ชันgit-lfs
: Git LFS (พื้นที่จัดเก็บไฟล์ขนาดใหญ่)zip
, unzip
: เครื่องมือบีบอัดไฟล์และคลายการบีบอัดhtop
: เครื่องมือตรวจสอบระบบtmux
, screen
: เครื่องมือการจัดการเซสชันbuild-essential
: เครื่องมือการคอมไพล์ (เช่น gcc
, g++
)iputils-ping
, iproute2
, net-tools
: เครื่องมือเครือข่าย (จัดเตรียมคำสั่งเช่น ping
, ip
, ifconfig
, netstat
ฯลฯ )ssh
: เครื่องมือเชื่อมต่อระยะไกลrsync
: เครื่องมือซิงโครไนซ์ไฟล์tree
: แสดงแผนผังไฟล์และไดเร็กทอรีlsof
: ดูไฟล์ที่เปิดอยู่บนระบบในปัจจุบันaria2
: เครื่องมือดาวน์โหลดแบบมัลติเธรดlibssl-dev
: ไลบรารีการพัฒนา OpenSSLการติดตั้ง pip :
jupyter notebook
, jupyter lab
: สภาพแวดล้อมการพัฒนาเชิงโต้ตอบvirtualenv
: เครื่องมือการจัดการสภาพแวดล้อมเสมือน Python คุณสามารถใช้ conda ได้โดยตรงtensorboard
: เครื่องมือสร้างภาพการฝึกอบรมการเรียนรู้เชิงลึกipywidgets
: ไลบรารีวิดเจ็ต Jupyter เพื่อแสดงแถบความคืบหน้าอย่างถูกต้องปลั๊กอิน :
zsh-autosuggestions
: คำสั่งเติมข้อความอัตโนมัติzsh-syntax-highlighting
: การเน้นไวยากรณ์z
: ข้ามไปยังไดเร็กทอรีอย่างรวดเร็วเวอร์ชัน dl (Deep Learning) อิงตาม ฐาน และติดตั้งเครื่องมือและไลบรารีพื้นฐานเพิ่มเติมที่อาจใช้ในการเรียนรู้เชิงลึก:
การติดตั้งที่เหมาะสม :
ffmpeg
: เครื่องมือประมวลผลเสียงและวิดีโอlibgl1-mesa-glx
: การพึ่งพาไลบรารีกราฟิก (แก้ไขปัญหากราฟิกที่เกี่ยวข้องกับเฟรมเวิร์กการเรียนรู้เชิงลึก)การติดตั้ง pip :
numpy
, scipy
: การคำนวณเชิงตัวเลขและการคำนวณทางวิทยาศาสตร์pandas
: การวิเคราะห์ข้อมูลmatplotlib
seaborn
: การสร้างภาพข้อมูลscikit-learn
: เครื่องมือการเรียนรู้ของเครื่องtensorflow
, tensorflow-addons
: อีกหนึ่งเฟรมเวิร์กการเรียนรู้เชิงลึกยอดนิยมtf-keras
: การใช้งาน TensorFlow ของอินเทอร์เฟซ Kerastransformers
datasets
: เครื่องมือ NLP ที่จัดทำโดย Hugging Facenltk
, spacy
: เครื่องมือประมวลผลภาษาธรรมชาติหากต้องการไลบรารีเพิ่มเติม สามารถติดตั้งไลบรารีเหล่านั้นได้ด้วยตนเองโดยใช้คำสั่งต่อไปนี้:
pip install --timeout 120 <替换成库名>
ที่นี่ --timeout 120
ตั้งค่าการหมดเวลา 120 วินาทีเพื่อให้แน่ใจว่ายังมีเวลาเพียงพอสำหรับการติดตั้งแม้ว่าเครือข่ายไม่ดีก็ตาม หากคุณไม่ได้ตั้งค่า คุณอาจพบสถานการณ์ที่แพ็คเกจการติดตั้งล้มเหลวเนื่องจากการหมดเวลาการดาวน์โหลดในสภาพแวดล้อมภายในประเทศ
โปรดทราบว่าภาพทั้งหมดจะไม่ดึงโกดังล่วงหน้า
สมมติว่าคุณได้ติดตั้งและกำหนดค่า Docker แล้ว คุณเพียงต้องการคำสั่งสองบรรทัดเพื่อกำหนดค่าสภาพแวดล้อมการเรียนรู้เชิงลึกให้เสร็จสมบูรณ์ สำหรับโปรเจ็กต์ปัจจุบัน คุณสามารถเลือกได้หลังจากดูคำอธิบายเวอร์ชันแล้ว image_name:tag
ของทั้งสองรายการจะเป็นดังนี้ ดังต่อไปนี้:
hoperj/quickstart:base-torch2.5.1-cuda11.8-cudnn9-devel
hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel
คำสั่งดึงคือ:
docker pull < image_name:tag >
ต่อไปนี้ใช้เวอร์ชัน dl เป็นตัวอย่างเพื่อสาธิตคำสั่ง เลือกวิธีใดวิธีหนึ่งเพื่อให้เสร็จสมบูรณ์
docker pull dockerpull.org/hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel
docker pull hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel
สามารถดาวน์โหลดไฟล์ได้ผ่าน Baidu Cloud Disk (Alibaba Cloud Disk ไม่รองรับการแชร์ไฟล์บีบอัดขนาดใหญ่)
ไฟล์ที่มีชื่อเดียวกันมีเนื้อหาเหมือนกัน .
.tar.gz
เป็นเวอร์ชันบีบอัด หลังจากดาวน์โหลด ให้ขยายขนาดด้วยคำสั่งต่อไปนี้:gzip -d dl.tar.gz
สมมติ dl.tar
ถูกดาวน์โหลดไปที่ ~/Downloads
จากนั้นสลับไปยังไดเร็กทอรีที่เกี่ยวข้อง:
cd ~ /Downloads
จากนั้นโหลดภาพ:
docker load -i dl.tar
ในโหมดนี้ คอนเทนเนอร์จะใช้การกำหนดค่าเครือข่ายของโฮสต์โดยตรง และพอร์ตทั้งหมดจะเท่ากับพอร์ตของโฮสต์โดยไม่มีการแมปแยกกัน หากคุณต้องการแมปพอร์ตเฉพาะ ให้แทนที่
--network host
ด้วย-p port:port
docker run --gpus all -it --name ai --network host hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel /bin/zsh
สำหรับนักเรียนที่จำเป็นต้องใช้พรอกซี ให้เพิ่ม -e
เพื่อตั้งค่าตัวแปรสภาพแวดล้อม คุณยังสามารถดูบทความเพิ่มเติม a:
สมมติว่าหมายเลขพอร์ต HTTP/HTTPS ของพร็อกซีคือ 7890 และ SOCKS5 คือ 7891:
-e http_proxy=http://127.0.0.1:7890
-e https_proxy=http://127.0.0.1:7890
-e all_proxy=socks5://127.0.0.1:7891
รวมเข้ากับคำสั่งก่อนหน้า:
docker run --gpus all -it
--name ai
--network host
-e http_proxy=http://127.0.0.1:7890
-e https_proxy=http://127.0.0.1:7890
-e all_proxy=socks5://127.0.0.1:7891
hoperj/quickstart:dl-torch2.5.1-cuda11.8-cudnn9-devel
/bin/zsh
[!เคล็ดลับ]
ตรวจสอบการดำเนินงานทั่วไปล่วงหน้า :
- เริ่มคอนเทนเนอร์ :
docker start <容器名>
- รันคอนเทนเนอร์ :
docker exec -it <容器名> /bin/zsh
- ออกภายในคอนเทนเนอร์ :
Ctrl + D
หรือexit
- หยุดคอนเทนเนอร์ :
docker stop <容器名>
- ลบคอนเทนเนอร์ :
docker rm <容器名>
git clone https://github.com/Hoper-J/AI-Guide-and-Demos-zh_CN.git
cd AI-Guide-and-Demos-zh_CN
jupyter lab --ip=0.0.0.0 --port=8888 --no-browser --allow-root
สำหรับอินเทอร์เฟซแบบกราฟิก ให้กด Ctrl
บน Windows/Linux ค้างไว้ กด Command
บน mac ค้างไว้ จากนั้นคลิกที่ลิงก์เพื่อข้ามไปโดยตรง
ขอบคุณสำหรับ STAR ของคุณ ฉันหวังว่านี่จะช่วยได้