1 คะแนน โดย GN⁺ 2023-11-25 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • นี่คือคอร์สเบื้องต้นที่ Microsoft Cloud Advocates จัดทำขึ้นเป็น 21 บทเรียน เพื่อให้นักพัฒนาที่เพิ่งเริ่มสร้างแอป Generative AI สามารถเรียนตามได้ตั้งแต่ แนวคิดไปจนถึงการลงมือทำจริง
  • บทเรียนแบ่งเป็น Learn ที่เน้นทฤษฎี และ Build ที่มีตัวอย่างโค้ดประกอบ โดยหากเป็นไปได้จะมีตัวอย่างทั้ง Python และ TypeScript ให้
  • แบบฝึกปฏิบัติสามารถรันได้ด้วย Azure OpenAI Service, GitHub Marketplace Model Catalog หรือ OpenAI API อย่างใดอย่างหนึ่ง จึงมีตัวเลือกด้านสภาพแวดล้อมการเรียนรู้ค่อนข้างกว้าง
  • แต่ละบทเรียนประกอบด้วยวิดีโอแนะนำสั้น ๆ เอกสาร README ตัวอย่างโค้ด และลิงก์สำหรับเรียนรู้เพิ่มเติม จึงเหมาะกับการเรียนแบบแยกบทได้ง่าย
  • แม้จะรองรับการแปลมากกว่า 50 ภาษา แต่การโคลนลงเครื่องอาจมีขนาดใหญ่ได้ ดังนั้นหากต้องการไม่เอาไฟล์แปลติดมาด้วย การใช้ sparse checkout จะมีประโยชน์

คอร์สเบื้องต้นที่ประกอบด้วย 21 บทเรียน

  • Generative AI for Beginners เป็น คอร์สเริ่มต้นสำหรับแอปพลิเคชัน Generative AI ที่สร้างโดย Microsoft Cloud Advocates
  • ประกอบด้วยทั้งหมด 21 บทเรียน และแต่ละบทเรียนว่าด้วยหัวข้อที่เป็นอิสระต่อกัน จึงเริ่มเรียนจากจุดที่ต้องการได้
  • ประเภทของบทเรียนแบ่งออกเป็น 2 แบบ
    • Learn: อธิบายแนวคิดของ Generative AI
    • Build: ครอบคลุมทั้งแนวคิดและตัวอย่างโค้ด
  • หากเป็นไปได้ จะมีตัวอย่างโค้ดทั้ง Python และ TypeScript ให้
  • นักพัฒนา .NET สามารถดู Generative AI for Beginners (.NET Edition) ได้
  • ในแต่ละบทเรียนมีส่วน Keep Learning ที่รวบรวมแหล่งเรียนรู้เพิ่มเติมไว้

สิ่งที่ต้องเตรียมสำหรับการฝึกปฏิบัติ

  • หากต้องการรันโค้ดของคอร์ส สามารถใช้หนึ่งในตัวเลือกต่อไปนี้
  • หากมีพื้นฐาน Python หรือ TypeScript จะช่วยให้เรียนได้ง่ายขึ้น
    • ผู้ที่เป็นมือใหม่จริง ๆ สามารถดูคอร์ส Python และ TypeScript ก่อนได้
  • หากต้องการ fork รีโพซิทอรีทั้งหมดไปยังบัญชีของตนเอง จะต้องมี บัญชี GitHub
  • การตั้งค่าสภาพแวดล้อมการพัฒนาครอบคลุมอยู่ในบท Course Setup

การรองรับการแปลและการปรับแต่งการโคลนลงเครื่องให้เหมาะสม

  • คอร์สนี้มี คำแปลมากกว่า 50 ภาษา และมีการอัปเดตคำแปลให้ทันสมัยโดยอัตโนมัติผ่าน GitHub Action
  • รายชื่อภาษาที่รองรับมีหลายภาษา เช่น Arabic, Chinese, French, German, Hindi, Japanese, Korean, Spanish และ Vietnamese
  • เนื่องจากมีไฟล์แปล จึงอาจทำให้ขนาดดาวน์โหลดของรีโพซิทอรีใหญ่ขึ้น
  • หากต้องการโคลนอย่างรวดเร็วโดยไม่รวมไฟล์แปล สามารถใช้ sparse checkout เพื่อตัด translations และ translated_images ออกได้
git clone --filter=blob:none --sparse https://github.com/microsoft/generative-ai-for-beginners.git
cd generative-ai-for-beginners
git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'

โครงสร้างพื้นฐานของแต่ละบทเรียน

  • แต่ละบทเรียนประกอบด้วยองค์ประกอบต่อไปนี้
    • วิดีโอแนะนำ สั้น ๆ ของหัวข้อนั้น
    • บทเรียนในรูปแบบเอกสารที่อิงกับ README
    • ตัวอย่างโค้ด Python และ TypeScript ที่รองรับ Azure OpenAI และ OpenAI API
    • ลิงก์แหล่งข้อมูลสำหรับเรียนรู้ต่อ

ลำดับบทเรียนทั้งหมด

แหล่งข้อมูลเพิ่มเติมและช่องทางการมีส่วนร่วม

  • ตัวอย่างโค้ดที่ลึกขึ้นสามารถดูได้จากชุด Generative AI Code Samples ซึ่งมีให้ทั้ง Python และ TypeScript
  • หากต้องการพูดคุยกับผู้เรียนคนอื่นและรับการสนับสนุน สามารถเข้าร่วม Azure AI Foundry Discord server ได้
  • คำถามหรือฟีดแบ็กเกี่ยวกับผลิตภัณฑ์สามารถแชร์ได้ที่ Azure AI Foundry Developer Forum
  • สตาร์ทอัพที่ต้องการเริ่มต้นด้วย Azure credits สามารถดูได้ที่ Microsoft for Startups
  • ข้อเสนอแนะ คำสะกดผิด หรือข้อผิดพลาดในโค้ด สามารถส่ง issue หรือสร้าง pull request ได้

1 ความคิดเห็น

 
GN⁺ 2023-11-25
ความคิดเห็นบน Hacker News
  • อยากได้คำแนะนำคอร์สหรือหนังสือที่ไม่ได้พูดถึงว่า ใช้ Generative AI อย่างไร แต่เจาะว่า จริง ๆ แล้วมันทำงานอย่างไร

    • ทั้ง https://course.fast.ai และ https://karpathy.ai/zero-to-hero.html ยอดเยี่ยมทั้งคู่
    • ลองดูสิ่งที่คอมเมนต์พี่น้องแนะนำแล้วแต่ไม่ช่วย พอดูช่องนี้ก็เข้าใจทันที: https://www.youtube.com/@algorithmicsimplicity
      ทั้ง convolutional neural network และ transformer network อธิบายได้ลงตัวมาก
      ถ้าต้องการด้านการทำภาพประกอบ/visualization ก็ขอแนะนำช่องนี้อย่างยิ่ง: https://www.youtube.com/watch?v=eMXuk97NeSI&t=207s
      อธิบายและแสดงแนวคิดต่าง ๆ ใน convolutional neural network ได้ดี เช่น stride, feature, ขนาดหน้าต่าง และความสัมพันธ์ระหว่างขนาด input กับ output
    • ขึ้นอยู่กับระดับของคุณเอง
      คอร์ส Coursera ของ Andrew Ng ช่วยให้เรียนพื้นฐาน deep learning ได้
      "Generative AI for Everyone" และคอร์สสั้นอื่น ๆ ก็ช่วยให้จับภาพพื้นฐานได้ แล้วค่อยต่อยอดจากตรงนั้น
      https://www.coursera.org/specializations/deep-learning
      https://www.deeplearning.ai/courses/generative-ai-for-everyo...
      HuggingFace ก็มีคอร์สที่ดี: https://huggingface.co/learn/nlp-course/
      บล็อกโพสต์ของ Jay Allamer เกี่ยวกับ โครงสร้าง Transformer ก็ดีเช่นกัน: https://www.deeplearning.ai/short-courses/
      สุดท้ายมีโอกาสสูงที่จะลงเอยด้วยการอ่านเปเปอร์บน arxiv.org
    • Karpathy ก็มี บรรยายความยาว 1 ชั่วโมง ที่เพิ่งลง YouTube: https://www.youtube.com/watch?v=zjkBMFhNj_g
    • รวบรวมรายชื่อคอร์สและตำราเรียนฟรีไว้ที่นี่: https://phaseai.com/resources/free-resources-ai-ml-2024
      ตรวจดูเองทั้งหมดแล้วว่าเนื้อหามีคุณภาพพอใช้ และไม่ใช่เนื้อหาแนวขายของหรือการตลาด
  • อยากรู้ว่ามี เส้นทางการเรียนรู้ สำหรับคนที่ไม่เคยทำ AI/ML เลยไหม
    ลองถาม ChatGPT แล้ว มันแนะนำให้เริ่มจาก linear algebra แล้วไป calculus, probability และ statistics จากนั้นขั้นที่ 2 คือพื้นฐาน machine learning ขั้นที่ 3 คือ deep learning และ neural network
    ไม่รู้ว่าข้อเสนอนี้ถูกต้องแค่ไหน และตัวเองเป็นนักพัฒนาซอฟต์แวร์

    • นั่นไม่ใช่เส้นทางที่ถูกต้องสำหรับการเรียนพื้นฐาน deep learning
      แค่เรียน Intro to Machine Learning และคอร์ส Deep Learning บน Coursera ของ Andrew Ng ก็พอ
      ได้ยินว่า 『Deep Learning』 ของ Goodfellow และคณะก็ดีมาก แต่ยังไม่ได้อ่านเอง
      ถ้ากลับไปไล่เรียนคอร์ส calculus หรือ linear algebra มาตรฐานทั้งหมด จะเป็นการ เสียเวลา
      เรียนเฉพาะคณิตศาสตร์ที่เกี่ยวข้องซึ่งสอนอยู่ช่วงต้น ๆ ของคอร์ส AI หรือหนังสือ deep learning จะดีกว่า แล้วข้าม 90% ที่ไม่เกี่ยวข้องของแต่วิชาพื้นฐานไป
      พูดในฐานะคนที่เคยสร้าง neural network เองตั้งแต่ศูนย์เมื่อราว 10 ปีก่อน
    • ผมชอบ linear algebra มากกว่า calculus เยอะ แต่รู้สึกว่าถ้าจะเรียนคอร์ส linear algebra ที่จริงจังให้เข้าใจได้ ต้องมี วุฒิภาวะทางคณิตศาสตร์ ระดับหนึ่ง ซึ่งมักถูกบ่มเพาะผ่านการเรียน calculus
      ถ้ารู้ calculus ก็จะเข้าไปสู่ ทฤษฎีการประมาณค่า อย่าง Padé approximation ได้ ซึ่งเป็นสาขาที่งดงามตรงจุดตัดระหว่าง calculus กับ linear algebra
      อย่างไรก็ดี 『Schaum's Outline of Linear Algebra』 น่าจะเป็นหนังสือ linear algebra ที่ดีที่สุดเท่าที่เคยอ่านมา และยังแตะ abstract algebra บางส่วนเล็กน้อยด้วย
    • ขึ้นอยู่กับอย่างมากว่าจริง ๆ แล้วคุณต้องการอะไร
      1. ใช้โมเดลที่มีอยู่: วิธีที่ง่ายที่สุดมักเป็นเว็บเซอร์วิสแบบเสียเงิน ส่วนทางที่ยากกว่าคือการติดตั้งในเครื่อง ซึ่งต้องมีคอมพิวเตอร์ที่ดี
      2. เข้าใจว่าโมเดลทำงานอย่างไร
      3. เข้าใจภาพรวมว่ากระแสนี้กำลังไปทางไหน
      4. สามารถเทรนหรือ fine-tune โมเดลที่มีอยู่ได้
        4.1 สร้างเฟรมเวิร์กสำหรับการสร้างโมเดล
        4.2 สร้างเฟรมเวิร์กสำหรับการทดสอบ การเทรน การอนุมาน ฯลฯ
      5. ออกแบบโมเดล: แตกต่างกันมากตามสาขา ถ้าจะลงลึกต้องเชี่ยวชาญเฉพาะทาง
      6. สุดท้ายก็สร้าง AGI
        แต่ละอย่างต้องใช้ทักษะต่างกัน
        บางอย่างแค่ติดตามข่าวก็พอ บางอย่างต้องมีทักษะการเขียนโค้ด และบางอย่างทฤษฎีหรือปรัชญาสำคัญกว่า
        คุณไม่สามารถมีทุกอย่างได้ แต่แม้ไม่มีทักษะที่เกี่ยวข้องเลย ก็ยังไปถึงประมาณ 4 ข้อแรกได้
        แน่นอนว่าเส้นทางที่ง่ายที่สุดคือการเป็น “ผู้เชี่ยวชาญ” ด้านจริยธรรม
    • ขึ้นอยู่กับว่าคุณอยาก ใช้ หรืออยาก สร้าง
      ถ้าเป็นอย่างหลัง คำแนะนำของ ChatGPT เป็นจุดเริ่มต้นที่ดี ถ้าเป็นอย่างแรก คอร์สแบบนี้เป็นจุดเริ่มต้นที่ดี
    • ขอแนะนำ คอร์ส zero to hero ของ Andrej Karpathy
      ดีมาก ประกอบด้วยวิดีโอเลกเชอร์ 8 ตอน และทำตามได้ใน Jupyter notebook ของตัวเอง
      แต่ละเลกเชอร์ยาวประมาณ 1–2 ชั่วโมง
  • ดูจากความเร็วในการพัฒนาและความเร็วที่พาราไดม์ใหม่ ๆ ถูกสำรวจ คอร์สนี้น่าจะล้าสมัยเร็วมาก
    ผมเรียน Generative AI เมื่อ 2 ปีก่อน และเครื่องมือที่ใช้ตอนนั้นก็กลายเป็นของเก่าไปหมดแล้ว

  • อยากรู้ว่าฝั่ง โอเพนซอร์ส มีอะไรคล้าย ๆ กันไหม

    • ไม่ใช่ไกด์ แต่ https://github.com/AUTOMATIC1111/stable-diffusion-webui เป็น แอป sandbox สำหรับลองสร้างภาพ AI ในเครื่อง และมีชุมชนที่คึกคักมาก
    • บน Mac Silicon น่าลองใช้ Ollama เป็นวิธีดาวน์โหลดและรัน LLM สาธารณะได้ง่าย ๆ
    • ถ้าต้องการ UI เรียบง่ายที่เริ่มได้ง่าย ก็น่าจะเป็นตัวนี้: https://github.com/oobabooga/text-generation-webui
  • ดูเหมือน การตลาดของ Azure เลย เลยไม่ค่อยชอบ

  • ถ้ากำลังหาไกด์เชิงปฏิบัติเกี่ยวกับวิธีใช้ LLM ขอแนะนำ "Hackers Guide to language models" ของ Jeremy Howard อย่างยิ่ง
    เป็นวิดีโอ 1.5 ชั่วโมงที่อัดแน่นด้วยข้อมูลเชิงปฏิบัติ: https://youtu.be/jkrNMKz9pWU

  • อันนี้ดูเหมือนจะต้องมี สิทธิ์เข้าถึง Azure OpenAI ซึ่งผู้ใช้ส่วนบุคคลไม่น่าจะขอได้ และดูเหมือนจะเปิดให้เฉพาะลูกค้าองค์กรบางรายเท่านั้น

  • อ่านแล้วเหมือน เอกสารการตลาด มาก จึงไม่ค่อยเข้าใจว่าทำไมถึงถูกเอามาโพสต์ที่นี่

    • ไม่แน่ใจว่าส่วนไหนที่รู้สึกเหมือนการตลาด
      ผมไล่อ่านเนื้อหาแล้ว สำหรับวิศวกรที่กำลังจะเริ่มเข้าสู่เทคโนโลยีนี้ ก็ดูค่อนข้างครอบคลุมทีเดียว