6 คะแนน โดย xguru 2023-07-09 | 3 ความคิดเห็น | แชร์ทาง WhatsApp
  • เต็มไปด้วยโค้ด wrapper ที่ไร้ประโยชน์
    • Embeddings ก็เป็นแค่ wrapper ของ SentenceTransformer ที่แทบไม่ได้ทำอะไรเลย
    • Chroma ก็เป็นเพียง wrapper แบบตรงไปตรงมาของ ChromaDB
    • เต็มไปด้วยฟังก์ชัน 'helper' ที่แค่เรียกใช้ฟังก์ชัน Python ทั่วไปอย่างง่ายๆ
  • เอกสารประกอบเองก็แทบไม่มีอะไรที่เป็นประโยชน์
  • ดูเหมือนโปรเจกต์ของมือใหม่ที่แค่เกาะกระแสยุคสมัย

เนื้อหาที่ GN⁺ สรุป

  • LangChain: เทคโนโลยีที่ทำให้สลับ language model, vector store และ text splitter ในโปรแกรมได้ง่าย
  • มีเป้าหมายเพื่อประหยัดเวลาและทำให้โค้ดยืดหยุ่นขึ้นด้วยการทำ abstraction ขององค์ประกอบต่างๆ
  • ผู้ใช้บางส่วนพบว่า LangChain ออกแบบมาไม่ดีและชวนสับสน
  • เอกสารประกอบไม่เพียงพอ และใน codebase ก็มีฟังก์ชันที่ไม่จำเป็นอยู่มากมาย
  • ผู้ใช้ประสบปัญหาในการสลับองค์ประกอบ และบางครั้งต้องเขียน prompt กับโค้ดใหม่
  • ผู้ใช้บางส่วนหันไปหาทางเลือกอื่น เช่น Griptape หรือการสร้างฟังก์ชันใช้เอง
  • แต่ถึงจะมีข้อบกพร่อง LangChain ก็ยังได้รับความนิยมเพราะความสามารถในการทำงานร่วมกันและการรองรับโมเดลกับ vector store ที่หลากหลาย
  • คนที่เชี่ยวชาญด้านเทคนิคอาจสนใจบทความนี้เพื่อทำความเข้าใจข้อดีข้อเสียของโปรเจกต์ที่ใช้ LangChain
  • เป็นเครื่องมือที่ดีสำหรับมือใหม่ในการเริ่มต้น และยังสามารถใช้กับโปรเจกต์ที่ซับซ้อนกว่านี้ได้
  • เอกสารของ LangChain ยังขาดอยู่มาก และหลายฟีเจอร์ก็ไม่ได้มีการอธิบายไว้อย่างดี
  • จำเป็นต้องมี tutorial และตัวอย่างที่ก้าวหน้ากว่านี้สำหรับผู้ใช้ที่ต้องการก้าวข้าม LangChain
  • ในชุมชนโปรแกรมมิงมีมุมมองต่อ LangChain แบบหลากหลาย บางคนมองว่ามีประโยชน์ ขณะที่อีกบางคนวิจารณ์ว่ามีข้อจำกัด
  • การพัฒนาเครื่องมือที่คล้าย LangChain เป็นส่วนหนึ่งของการปฏิวัติ AI ที่ดำเนินไปอย่างรวดเร็ว
  • ผู้ใช้ควรถูกสนับสนุนให้มีส่วนร่วมกับโอเพนซอร์สโปรเจกต์อย่าง LangChain เพื่อช่วยปรับปรุงมัน
  • สำหรับการเติบโตและการเรียนรู้ โปรแกรมเมอร์ควรถ่อมตัวและยอมรับคำวิจารณ์
  • LangChain เป็นโอเพนซอร์สโปรเจกต์ยอดนิยมในชุมชน AI
  • นักพัฒนาบางส่วนมองว่า LangChain ไม่คุ้มที่จะใช้ เพราะไม่ได้เพิ่มฟีเจอร์ใหม่และมีข้อจำกัดมาก
  • ทางเลือกคือใช้ไลบรารีอื่น เช่น SentenceTransformers, ChromaDB และ requests แทน
  • LangChain ถูกมองว่าเป็นโปรเจกต์ของมือใหม่เพราะมีจำนวนดาวบน GitHub สูงมาก
  • นักพัฒนาบางส่วนเสนอว่า SymbolicAI หรือ Haystack เป็นทางเลือกที่ดีกว่า LangChain
  • มีความกังวลเกี่ยวกับ chain abstraction และ composability ของ LangChain โดยนักพัฒนาบางคนเชื่อว่า abstraction แบบอื่น เช่น DAG หรือ state machine อาจมีประสิทธิภาพมากกว่า
  • EdgeChains เป็นอีกไลบรารีหนึ่งที่นำเสนอ generative AI prompt engineering ในรูปแบบการจัดการคอนฟิก
  • นักพัฒนาบางส่วนแสดงความหงุดหงิดต่อเอกสารของ LangChain และพฤติกรรมที่ไม่สม่ำเสมอ
  • โดยรวมแล้ว LangChain อาจมีประโยชน์สำหรับการเรียนรู้ แต่ไม่น่าจะเหมาะกับระบบระดับโปรดักชัน

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

 
xguru 2023-07-10

ใน Hacker News ก็มีความเห็นหลากหลายเช่นกัน
แม้ว่า LangChain จะได้รับเงินทุนราว $30m จาก Benchmark และ Sequoia ไปแล้ว แต่ก็มีการถกเถียงกันมากว่าเหมาะสมกับเงินทุนที่ได้รับจริงหรือไม่

ความเห็นจากผู้พัฒนา simpleaichat ซึ่งเป็นทางเลือกแบบเรียบง่ายของ LangChain

  • LangChain ไม่ได้ช่วยมากนัก แถมยังทำให้เกิด lock-in
  • เวิร์กโฟลว์/การทำ prompt engineering แบบ ReAct นั้นล้าสมัย
  • แทบจะดีบักไม่ได้เลย (ถึงจะตั้ง verbose=true ก็ตาม)
  • ถ้าต้องการทำสิ่งที่นอกเหนือจากเวิร์กโฟลว์ที่อยู่ในเอกสาร การแฮ็กแก้ก็ยากมาก แม้จะใช้ Custom Agents ก็ตาม
  • ถึงอย่างนั้น ความสนใจที่ LangChain ได้รับก็จริง ๆ แล้วไม่เป็นผลดีต่อ ecosystem ของ AI
 
GN⁺ 2023-07-09
ความคิดเห็นจาก Hacker News
  • เป็นความพยายามแก้ปัญหาบนรากฐานทางเทคนิคที่ไม่สามารถรองรับข้อจำกัดทางเทคนิคของ LangChain ได้
  • LLM รุ่นปัจจุบันมีความสามารถในการนำกลับมาใช้ซ้ำต่ำ
  • การสร้างฟังก์ชันด้วย LLM chain ต้องใช้พรอมป์ต์แบบกำหนดเองที่เขียนด้วยมือและรูปแบบข้อมูลเฉพาะ
  • LangChain พยายามสร้าง abstraction เพื่อการนำกลับมาใช้ซ้ำ แต่สุดท้ายกลับกลายเป็นเฟรมเวิร์ก DAG ตรงกลางที่ให้ผลลัพธ์ขยะ
  • LangChain สนับสนุนให้พึ่งพาเครื่องมือทั้งที่ไม่ได้ให้ประโยชน์กับนักพัฒนา
  • การใช้งานเวิร์กโฟลว์ ReAct และ prompt engineering ในปัจจุบันล้าสมัยแล้ว
  • การดีบักข้อผิดพลาดของ LangChain ทำได้ยาก และการปรับแต่งเวิร์กโฟลว์ก็ท้าทาย
  • เอกสารขาดรายละเอียดที่จำเป็น ทำให้ผู้ใช้ต้องลงไปคุ้ยใน codebase โดยตรง
  • ความนิยมของ LangChain บิดเบือนระบบนิเวศ AI และส่งผลเสียต่อการพัฒนาและความสามารถในการอ่านโค้ด
  • LiteChain ซึ่งเป็นทางเลือกแทน LangChain มอบ monad ที่ประกอบกันได้จริงและ codebase ที่เรียบง่ายกว่า
  • LangChain กำลังสร้าง ETL ขึ้นมาใหม่ ทั้งที่มีเทคโนโลยีที่แข็งแกร่งอยู่แล้ว
  • abstraction ของ LangChain แทบไม่เพิ่มคุณค่า และทำได้ง่ายอยู่แล้วโดยไม่ต้องใช้เฟรมเวิร์ก
  • LangChain ระดมทุนได้จำนวนมาก แต่คุณภาพยังน่ากังขา
  • เมื่อเทียบกับโซลูชันอื่น ประสิทธิภาพของ LangChain ไม่ดีนัก
  • LangChain ถูกมองว่าเป็น abstraction ที่ผิดพลาดซึ่งเพิ่ม API และความซับซ้อนของตัวเองเข้ามา
  • มีข้อเสนอให้เลิกใช้งาน prompt templates ใน LangChain
  • นักพัฒนา ML ที่มีประสบการณ์มองว่า LangChain ไม่มีความหมายต่อการพัฒนาผลิตภัณฑ์ แต่สำหรับบางคนก็อาจยังมีประโยชน์อยู่