15 คะแนน โดย GN⁺ 2025-04-20 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Pocket Flow เป็นโปรเจ็กต์ที่ใช้ AI แปลงโค้ดเบสบน GitHub ให้เป็นบทเรียนที่เป็นมิตรกับผู้เริ่มต้น
  • โดยจะครอล GitHub repository เพื่อวิเคราะห์แก่นของนามธรรมในโค้ด และแปลงเป็นบทเรียนที่ช่วยให้เข้าใจโค้ดซับซ้อนได้ง่ายผ่านการทำภาพประกอบ
  • มีตัวอย่างผลลัพธ์ที่ AI สร้างอัตโนมัติจาก GitHub repository หลากหลายรายการ
  • อธิบายการตั้งค่าพื้นฐานและวิธีรันเพื่อเริ่มต้นโปรเจ็กต์
  • มีแหล่งข้อมูลเพิ่มเติมที่เกี่ยวข้องกับบทเรียนสำหรับนักพัฒนา

การสร้างบทเรียนจากโค้ดเบสด้วย AI

  • Pocket Flow คือเฟรมเวิร์ก LLM ขนาด 100 บรรทัด ที่เป็นโปรเจ็กต์สำหรับวิเคราะห์ GitHub repository และสร้างบทเรียนที่เป็นมิตรกับผู้เริ่มต้น
  • โปรเจ็กต์นี้จะระบุแก่นของนามธรรมในโค้ดเบสและวิเคราะห์การโต้ตอบระหว่างส่วนต่าง ๆ เพื่อแปลงโค้ดที่ซับซ้อนให้เป็นบทเรียนที่แม้แต่มือใหม่ก็เข้าใจได้
  • สามารถดูข้อมูลเพิ่มเติมได้จากบทเรียนพัฒนาบน YouTube และบทเรียนในโพสต์บน Substack

ตัวอย่างบทเรียนที่ AI สร้างจาก GitHub repository ยอดนิยม

  • AutoGen Core: อธิบายวิธีจัดทีม AI เพื่อแก้ปัญหา
  • Browser Use: อธิบายวิธีที่ AI สำรวจเว็บและทำงานเหมือนผู้ช่วยดิจิทัล
  • Celery: อธิบายวิธีเสริมความสามารถให้แอปด้วยงานเบื้องหลัง
  • Click: อธิบายวิธีแปลงฟังก์ชัน Python ให้เป็นเครื่องมือบรรทัดคำสั่ง
  • Codex: อธิบายวิธีแปลงภาษาอังกฤษทั่วไปให้เป็นโค้ดที่ทำงานได้
  • Crawl4AI: อธิบายวิธีดึงข้อมูลสำคัญจากเว็บไซต์
  • CrewAI: อธิบายวิธีจัดทีมผู้เชี่ยวชาญ AI เพื่อแก้ปัญหาที่ซับซ้อน
  • DSPy: อธิบายวิธีปรับแต่งแอป LLM ให้เหมาะสมที่สุด
  • FastAPI: อธิบายวิธีสร้าง API ได้อย่างรวดเร็ว
  • Flask: อธิบายวิธีสร้างเว็บแอปด้วยโค้ดเพียงเล็กน้อย
  • Google A2A: อธิบายวิธีที่ AI agent ทำงานร่วมกัน
  • LangGraph: อธิบายวิธีออกแบบ AI agent ด้วยผังงาน
  • LevelDB: อธิบายวิธีจัดเก็บข้อมูลอย่างรวดเร็ว
  • MCP Python SDK: อธิบายวิธีสร้างแอปที่ทรงพลัง
  • NumPy Core: อธิบายวิธีเชี่ยวชาญเอนจินสำหรับวิทยาการข้อมูล
  • OpenManus: อธิบายวิธีสร้าง AI agent
  • Pydantic Core: อธิบายวิธีตรวจสอบความถูกต้องของข้อมูล
  • Requests: อธิบายวิธีสื่อสารกับอินเทอร์เน็ตด้วย Python
  • SmolaAgents: อธิบายวิธีสร้าง AI agent ขนาดเล็ก

เริ่มต้นใช้งาน

  • โคลน repository และติดตั้ง dependency ที่จำเป็น
  • ตั้งค่า LLM ให้เสร็จใน utils/call_llm.py
  • รันสคริปต์หลักเพื่อวิเคราะห์ GitHub repository และสร้างบทเรียน
  • สามารถใช้ตัวเลือกต่าง ๆ เพื่อระบุไฟล์และภาษาที่ต้องการวิเคราะห์ได้

บทเรียนสำหรับนักพัฒนา

  • อธิบายแนวคิดการพัฒนาแบบ Agentic Coding ที่มนุษย์เป็นผู้ออกแบบและ agent เป็นผู้เขียนโค้ด
  • ใช้เฟรมเวิร์ก Pocket Flow เพื่อให้ agent เขียนโค้ด
  • อธิบายแบบเป็นขั้นตอนผ่านบทเรียนพัฒนาบน YouTube

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

 
GN⁺ 2025-04-20
ความคิดเห็นจาก Hacker News
  • มีคำถามว่าใช้แค่เอกสารหรือโค้ดของ repository หรือไม่
  • ลองใช้ด้วยคีย์ AI Studio API แล้วรู้สึกว่าน่าประทับใจ
    • การใช้การเปรียบเทียบกับร้านอาหารเพื่ออธิบาย API รู้สึกว่ายาวเกินความจำเป็น
    • คำอธิบายเกี่ยวกับ GraphQL ก็ยืดยาวเกินไปเช่นกัน
    • เอกสารที่สร้างขึ้นดูเหมาะกับ PM ที่มีพื้นฐานเทคนิคเล็กน้อยมากกว่าวิศวกรซอฟต์แวร์
    • น่าจะบรรเทาเรื่องนี้ได้ด้วยการปรับปรุงพรอมป์ต์
  • น่าจะดีถ้าพรอมป์ต์สนับสนุนความหลากหลายของไดอะแกรมมากกว่านี้
    • ตัวอย่างเช่น สำหรับ durable state machine workflow ที่ใช้ AWS Step Functions แผนภาพการไหลอาจเหมาะกว่าผังงาน
  • เวลาใช้ไลบรารีใหม่ ขั้นตอนแรกคือ clone repository แล้วรัน Claude code เพื่อขอให้เขียนเอกสารที่ดี
    • น่าจะช่วยประหยัดหลายขั้นตอนได้
  • ถาม Cursor หลายคำถามแล้วได้ผลลัพธ์คล้ายกัน
    • อย่างที่คนอื่นพูดไว้ อยากได้โทนที่ต่างออกไปเล็กน้อย
    • ฟีเจอร์ "style template" ที่ปรับให้เข้ากับสไตล์การเขียนที่ชอบได้น่าจะดี
    • ถ้าใช้เวลาไม่มาก อาจจะส่ง PR ด้วย
  • มีบริษัทชื่อ mutable ai ที่ปีที่แล้วถูก Google เข้าซื้อกิจการ และเคยทำงานที่สร้าง wiki แทน tutorial
  • tutorial ของ dspy ยอดเยี่ยมมาก
    • dspy เข้าใจยากในเชิงแนวคิด แต่ tutorial อธิบายได้ดี
  • สร้างขึ้นมาเพื่อใช้กับ browser use
    • ผลลัพธ์ของไลบรารีน่าประทับใจมาก
    • ไม่ได้แก้ไขผลลัพธ์เลยแม้แต่น้อย
    • ตอนนี้มีปัญหาในการดูแล codebase และเอกสารให้คงความถูกต้องอยู่เสมอ (ตัวอย่างโค้ดพังเป็นครั้งคราว)
    • สงสัยว่าอาจแก้ปัญหานี้ได้ด้วยการใช้บางส่วนของ Pocket
  • มีความเห็นว่านี่เป็นงานที่ยอดเยี่ยมมาก และขอบคุณที่แชร์
    • เป็นตัวอย่างที่แสดงคุณค่าของ LLM ได้ดี
    • ช่วยลดมุมมองเชิงลบต่อผลกระทบที่มีต่อวิศวกรจูเนียร์
    • ช่วยแก้ปัญหาที่โปรเจกต์ส่วนใหญ่มีเอกสารที่ไม่อัปเดต
  • อาจเป็น game changer สำหรับการ onboarding ผู้ร่วมพัฒนาโอเพนซอร์สหน้าใหม่
    • สามารถใส่ codebase ของ postgres หรือ redis เข้าไป ทำความเข้าใจได้ดี แล้วเริ่มมีส่วนร่วมได้
  • ด้านบนมีเนื้อหาระดับสูงที่เรียบร้อยดี แต่พอลงลึกกว่านั้นก็เปลี่ยนเป็นโค้ดที่เขียนด้วยภาษามนุษย์อย่างรวดเร็ว
    • ถ้าดู unit test ที่เกี่ยวข้องด้วย ก็น่าจะดึงรูปแบบการใช้งานที่มีประโยชน์ออกมาได้มากขึ้น
    • สำหรับผู้อ่าน tutorial ส่วนใหญ่ สิ่งสำคัญคือ "วิธีใช้งาน"