อัปเดตล่าสุด July 20, 2023
สวัสดีครับทุกคน สำหรับบทความนี้เราจะมาพูดถึง LangChain หนึ่งในไลบรารีสำหรับประยุกต์ใช้ร่วมกับ Large Language Model (LLM) ที่จะช่วยให้เราสร้างแอพ AI ได้อย่างรวดเร็วกันครับ
LangChain คืออะไร ?
LangChain เป็นเฟรมเวิร์คที่อำนวยความสะดวกในการสร้างแอปพลิเคชันที่ ใช้ Large Language Models (LLMs) เช่น ChatGPT, Google Bard และโมเดลอื่นๆอีกมากมายนั่นเอง อีกทั้งตัวมันเองยังมีเครื่องมือและ API ที่ช่วยให้ Developer สามารถทำงานกับ LLMs และเอาไปทำโน่นนี่นั่นได้มากมาย
จากภาพด้านล่างบ่งบอกความยอดนิยมของเฟรมเวิร์คนี้ แม้เพิ่งสร้างได้ไม่นาน แต่จำนวน GitHub Stars พุ่งไปที่ 55k + แล้ว
แล้ว LangChain ทำอะไรได้บ้าง ?
LangChain สามารถเอามาใช้ในการสร้างแอปพลิเคชันได้หลากหลายประเภทไม่ว่าจะเป็น แชทบอท ระบบตอบคำถาม โปรแกรมสรุปข้อมูล และโปรแกรมแปลภาษา นอกจากนี้เรายังสามารถใช้ LangChain ในการสร้างแอปพลิเคชันที่ Custom สำหรับงานที่เราอยากทำก็ได้เหมือนกัน (ลองจินตนาการว่าเราสามารถสร้าง AI เป็นเลขานักข่าว ให้มันค้นเน็ต อ่านบทความ แล้วมาสรุปเป็นอีเมลล์ให้เราทุกเช้าก็ได้เหมือนกัน)
อีกหนึ่งในประโยชน์ของการใช้ LangChain คือมันเป็นไลบรารีโอเพนซอร์ส ซึ่งแปลว่ามันฟรีและ modify ได้ แล้วยังมีชุมชนของคนที่ใช้ LangChain เหมือนกันมาช่วยในการตอบปัญหา หรือช่วยเวลาที่เราต้องการอะไรด้วย
ที่สำคัญ LangChain ยังอยู่ในที่ Active มากๆ ซึ่งหมายความว่ามันจะมีการเพิ่ม feature ใหม่ๆอยู่ตลอด และจะมีการปรับปรุงให้ดีขึ้นเรื่อยๆ
ถ้าคุณสนใจที่จะสร้างแอปพลิเคชันที่ใช้ LLMs ก็สามารถเริ่มต้นใช้ LangChain ได้เลยครับ มันเป็นเครื่องมือที่มีประสิทธิภาพมากๆ และจะช่วยให้คุณเอาโมเดล LLM แบบ ChatGPT, Bard, อื่นๆ ไปใช้ทำอะไรได้อีกเยอะแยะมากมาย
ตัวอย่างสิ่งที่ LangChain สามารถทำได้
ถ้าทุกคนสนใจ 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 นี้แล้ว ลงทะเบียนด่วน ได้ก่อนปิด
เปิดโลกการเขียนโปรแกรมและ Software Development ด้วย online courses ที่จะพาคุณอัพสกิลและพัฒนาสู่การเป็นมืออาชีพ เรียนออนไลน์ เรียนจากที่ไหนก็ได้ พร้อมซัพพอร์ตหลังเรียน
คอร์สเรียนเขียนโปรแกรม