LangChain เฟรมเวิร์คสุดเจ๋งที่ช่วยให้การสร้าง AI Apps เป็นเรื่องง่าย

   By: Nonthakon Jitchiranant

   อัปเดตล่าสุด Nov. 24, 2024

LangChain เฟรมเวิร์คสุดเจ๋งที่ช่วยให้การสร้าง AI Apps เป็นเรื่องง่าย

สวัสดีครับทุกคน สำหรับบทความนี้เราจะมาพูดถึง LangChain หนึ่งในไลบรารีสำหรับประยุกต์ใช้ร่วมกับ Large Language Model (LLM) ที่จะช่วยให้เราสร้างแอพ AI ได้อย่างรวดเร็วกันครับ


LangChain คืออะไร?

LangChain เป็นเฟรมเวิร์คที่อำนวยความสะดวกในการสร้างแอปพลิเคชันที่ ใช้ Large Language Models (LLMs) เช่น ChatGPT, Google Bard และโมเดลอื่นๆอีกมากมายนั่นเอง อีกทั้งตัวมันเองยังมีเครื่องมือและ API ที่ช่วยให้ Developer สามารถทำงานกับ LLMs และเอาไปทำโน่นนี่นั่นได้มากมาย

จากภาพด้านล่างบ่งบอกความยอดนิยมของเฟรมเวิร์คนี้ แม้เพิ่งสร้างได้ไม่นาน แต่จำนวน GitHub Stars พุ่งไปที่ 55k + แล้ว


จำนวน GitHub Stars ของ LangChain


Update: ปัจจุบันมี GitHub Star สูงกว่า 89.4k stars แล้วครับ


LangChain ทำอะไรได้บ้าง?

LangChain สามารถเอามาใช้ในการสร้างแอปพลิเคชันได้หลากหลายประเภทไม่ว่าจะเป็น แชทบอท ระบบตอบคำถาม โปรแกรมสรุปข้อมูล และโปรแกรมแปลภาษา นอกจากนี้เรายังสามารถใช้ LangChain ในการสร้างแอปพลิเคชันที่ Custom สำหรับงานที่เราอยากทำก็ได้เหมือนกัน (ลองจินตนาการว่าเราสามารถสร้าง AI เป็นเลขานักข่าว ให้มันค้นเน็ต อ่านบทความ แล้วมาสรุปเป็นอีเมลล์ให้เราทุกเช้าก็ได้เหมือนกัน)

อีกหนึ่งในประโยชน์ของการใช้ LangChain คือมันเป็นไลบรารีโอเพนซอร์ส ซึ่งแปลว่ามันฟรีและ เราสามารถ modify หรือไป contribute ได้ครับ แล้วยังมีชุมชนของคนที่ใช้ LangChain เหมือนกันมาช่วยในการตอบปัญหา หรือช่วยเวลาที่เราต้องการอะไรด้วย

ที่สำคัญ LangChain ยังอยู่ในที่ Active มาก ๆ ซึ่งหมายความว่ามันจะมีการเพิ่ม feature ใหม่ ๆอยู่ตลอด และจะมีการปรับปรุงให้ดีขึ้นเรื่อย ๆ ยิ่งในยุคที่ AI บูมสุดขีดในปัจจุบัน LangChain ก็ยิ่งได้รับความนิยมสูงขึ้นเรื่อย ๆ จากการนำไปพัฒนา AI App ได้อย่างรวดเร็ว

ถ้าคุณสนใจที่จะสร้างแอปพลิเคชันที่ใช้ LLMs ก็สามารถเริ่มต้นใช้ LangChain ได้เลยครับ มันเป็นเครื่องมือที่มีประสิทธิภาพมาก ๆ และจะช่วยให้เราสามารถนำโมเดล LLM แบบ ChatGPT, Bard, อื่น ๆ ไปใช้ทำอะไรได้อีกเยอะแยะมากมาย


ตัวอย่างสิ่งที่ LangChain สามารถทำได้

  • การสรุป: LangChain สามารถใช้สรุปเอกสารข้อความ หรือสรุปการสนทนาได้
  • การตอบคำถาม: LangChain สามารถใช้ตอบคำถามเกี่ยวกับเอกสาร หรือสร้าง Q&A ที่จะตอบคำถามแทนเราได้
  • การเขียน/แต่ง: LangChain สามารถใช้แต่งข้อความใหม่ๆ เช่นกลอน Code หรือบทพูดได้ด้วย
  • การแปล: LangChain สามารถใช้แปลข้อความจากภาษาหนึ่งเป็นอีกภาษาหนึ่งได้ (เหมือนวุ้นแปลภาษา)
  • การค้นหาด้วยความหมาย: LangChain สามารถใช้ค้นหาเอกสารจากข้อความโดยใช้ความหมายของมันจริงๆ ไม่ใช่แค่ keyword อย่างเดียว (Semantic Search)

ถ้าทุกคนสนใจ LangChain สามารถใช้งานได้ง่ายมากๆเลยครับ ในบทความนี้ผมแนบตัวอย่างการใช้งาน LangChain ในการสรุปข้อความมาด้วย ซึ่งการใช้งานของมันก็ไม่ซับซ้อน แต่ก็มีประสิทธิภาพสูงมากๆเลยทีเดียว

ตัวอย่างโค้ดการใช้งาน LangChain ในภาษา Python

import langchain

def summarize_document(document):
"""Summarizes a text document using LangChain."""

chain = langchain.Chain(langchain.OpenAI())
chain.add_step(langchain.Summarize(max_length=200))

summary = chain.predict(document)
return summary

if __name__ == "__main__":
document = """
This is a document that I want to summarize. It is a few paragraphs long, and it discusses the benefits of using LangChain.
"""

summary = summarize_document(document)
print(summary)


โค้ดนี้จะสร้าง  Chain  ซึ่งเป็น  object ที่พื้นฐานที่สุดใน LangChain ก่อน จากนั้นเราจะกำหนดให้   Chain  เลือก LLM จาก  OpenAI 


ต่อมา เราจะทำให้มันสรุปเนื้อหาให้เราโดยใช้งาน  
 Summarize     และกำหนดความยาวสูงสุดของข้อความที่สรุปไว้ที่ 200 คำ


สุดท้ายเราจะเรียกใช้ฟังก์ชัน 
 predict()  เพื่อรันทุกอย่างใน Chain นี้ เป็นอันเสร็จสิ้น


การเรียกใช้โค้ดนี้ เราต้องติดตั้งไลบรารี LangChain ก่อน ทำได้โดยใช้คำสั่ง:

pip install langchain


เมื่อติดตั้ง LangChain เรียบร้อยแล้ว เราสามารถใช้โค้ดได้โดยการเซฟโค้ดเป็นไฟล์ .py และเรียกใช้จาก command line ด้วยคำสั่ง:

python summarize_document.py


เราจะได้ผลลัพท์ของการสรุปออกมาในหน้าต่าง terminal ของเรา
ก็จบไปแล้วนะครับสำหรับบทความแนะนำการใช้งาน LangChain

แนะนำคอร์สแรกในไทย คอร์สเรียน Prompt Engineering with ChatGPT and Python LangChain AI เรียนวันที่ 23 กรกฎาคม 2566 นี้แล้ว ลงทะเบียนคอร์ส LangChain ได้ก่อนปิด


เปิดโลกการเขียนโปรแกรมและ Software Development ด้วย online courses ที่จะพาคุณอัพสกิลและพัฒนาสู่การเป็นมืออาชีพ เรียนออนไลน์ เรียนจากที่ไหนก็ได้ พร้อมซัพพอร์ตหลังเรียน

เรียนเขียนโปรแกรม

คอร์สเรียนแนะนำ

Full Stack Developer 2024

คอร์สเรียน Full Stack Developer 2024 ด้วยเฟรมเวิร์คยอดนิยมในการพัฒนา A…