แนะนำ

LangChain คือเฟรมเวิร์คการพัฒนาแอปพลิเคชัน AI ที่เปิดเป็นโค้ดซอร์สของ Python ซึ่งมีโมดูลและเครื่องมือสำหรับการสร้างแอปพลิเคชัน AI โดยใช้โมเดลขนาดใหญ่ เน้นที่การประยุกต์ใช้ Large Language Models (LLMs) เพื่อสร้างโมเดลที่สามารถสร้างข้อความ ตอบคำถาม แปลภาษา และสนทนาได้อย่างง่ายดาย LangChain ช่วยลดความยากในการพัฒนาแอปพลิเคชัน AI ทำให้ทุกคนสามารถสร้างแอปพลิเคชันสร้างสรรค์ขึ้นมาเองตามกำลังความคิด โดยใช้ LLM

คุณสมบัติของ LangChain:

  • LLM และ Prompt: LangChain สะท้อนทุก API ของโมเดลขนาดใหญ่ LLM และมีกลไกการจัดการแบบรูปแบบ Prompt
  • Chain: LangChain ซ้อนห่วงวงการสร้าง Module พร้อมใช้ที่สามารถปรับใช้งานได้ง่าย เช่น ระบบตอบคำถามโดยใช้ประวัติ การสร้างภาษาธรรมชาติของคำถาม SQL เป็นต้น ชื่อ "Chain" เพราะกระบวนการของการปฏิบัติงานเหมือนกับงานที่ต้องปฏิบัติตามขั้นตอน
  • LCEL: LangChain Expression Language (LCEL) เป็นคุณสมบัติหลักของ LangChain เวอร์ชันใหม่ ใช้ในการแก้ปัญหาการวางงานแบบกระบวนการได้ ผ่านการใช้ออกมาให้เหมือนการปรับใช้งานไปยังการประมวลผลงาน AI ได้อย่างยืดหยุ่น ยกตัวเช่นการปรับใช้งานไปใน "Chain" ได้อย่างยืดหยุ่น
  • Retrieval Augmented Generation (RAG): ด้วยที่ LLM ไม่เข้าใจข้อมูลใหม่และไม่สามารถตอบคำถามใหม่ได้ เราสามารถนำข้อมูลใหม่เข้าไปใน LLM เพื่อเพิ่มคุณภาพของเนื้อหาที่สร้างขึ้น โหมดนี้เรียกว่า RAG mode (Retrieval Augmented Generation)
  • Agents: รูปแบบการออกแบบที่ใช้ LLM อินเทย์รายความเข้าใจภาษาธรรมชาติและความสามารถในการเห็นเหตุและเหตุในการดำเนินงานโดยอัตโนมัติ การประยุกต์ใช้ LLM ในฐานะสมอง เพื่อเรียกไปที่ระบบและอุปกรณ์ภายนอกมารวมกับกัน เพื่อสร้างงานตามความต้องการของผู้ใช้ เช่น ถ้าผู้ใช้ป้อน "วันพักผ่อนตั้งแต่วันพรุ่งนี้" โมเดลภาษาใหญ่ จะเรียกระบบลาและเริ่มการขออนุญาตการลา
  • Model Memory: ให้โมเดลภาษาใหญ่ จำเนื้อหาการสนทนาก่อนหน้า คุณสมบัติที่เรียกว่า Model Memory

ส่วนประกอบของกรอบการทำงาน LangChain

ส่วนประกอบของกรอบการทำงาน LangChain

กรอบการทำงาน LangChain ประกอบด้วยส่วนประกอบหลายตัว เช่น:

  • ตัวห้องสมุด LangChain: Python และ JavaScript และตัวห้องสมุดเป็นฐานรันไทม์สำหรับอินเตอร์เฟซและการใช้งานส่วนประกอบต่างๆ อีกทั้งการปรับใช้งาน Module ด้านต่างๆ และตัวแทน
  • แม่แบบของ LangChain: แม่แบบงาน AI ทางการทางที่อยู่ภายใต้ LangChain
  • LangServe: อิงจาก FastAPI , ความสามารถของมันคือการทำนายงานของ LangChain โดยกำหนด REST APIs
  • LangSmith: แพลตฟอร์มการพัฒนาคือบริการคลาวด์ที่รองรับการแก้ปัญหาและการติดตามงานของ LangChain

ห้องสมุด LangChain (ห้องห้องสมุด)

ห้องห้องสมุดของ LangChain ประกอบด้วยหมดคลังต่างๆ

  • langchain-core: หลักการขั้นตอนพื้นฐานและภาษาแสดง LCEL ของ LangChain
  • langchain-community: การทำงานของภายนอก บวกกับบริการในภายใต้ LangChain
  • langchain: ในภายใต้ LangChain โดยองรับงานต่างๆ เช่น งานเห็นตาแปร, ห้องชุล

กระบวนการประมวลผลงานของ LangChain

จากรูปภาพ ด้านบน LangChain แสดงแนวทางในการจัดการกับคำถาม และส่งคำถามไปพร้อมกับโมเดลใหญ่ เมื่อคำถามมาถึงคำถามที่โดยอยากย่อย เป็น
:::code LLLm และ .Chat Model ::: ข้อมูลทั้งหมดจะถูกส่งกลับมาทางคำถามข้อใด จากคำถามของคุณโดยการประมวลผลโดยอัตโนมัตและทำการคำว่าจากโมเดล

กรอบการทำงานของ LangChain กล่าวไว้ว่ามีมาโรยีที่สำคัญ 2 อย่าง คือ LLM เเละ Chat Model

  • LLM - โมดูลการตอบคำถาม ทำหน้าที่ในการพื้นพางข้อความและคืนค่าคำถามออกเป็นมาโรยเดียว
  • Chat Model - โมดูลการสนทนาทำระบบได้รับสติของคำถามและคืนค่าของข้อความได้ในการสนทนา

คอนเซ็ปต์หลัก

1. LLM

โมเดลโดยพื้นฐานที่ถูกลับรวมถ่้า LangChain ที่รับข้อความเข้าและนำข้อความกลับออกมาเป็นมาโรยเดียว

2. Chat Models

โมเดลสนทนา (หรือโมเดลการสนทนา) จัดการสำหรับทางการสนทนา เป็นการออกแบบสำหรับสถานการณ์สนทนา ไม่เหมือนกับ LLMs โมเดลเหล่านี้สามารถรับคำถามเซ็ตของข้อความที่ในการสนทนาและคืนค่าของข้อความเป็นสัดส่วนของการสนทนา

3. ข้อความ

ใช้กล่าวถึงเนื้อหาขอข้อความของโมเดลการสนทนา ประเภทของข้อความ มีฮัมาน คำถามเลี่ยน AIMEssage ข้อความระบบ. ฟังก์ขอความ และข้อความเครื่อง ร่วมกับท่าทีอื่นๆ ด้วย

4. Prompt

LangChain ซ้อนทไอตุลเฮุนรของเครื่องมือหัวหื้นที่ใช้ในการจัดการ กเบภายขของข้อความที่เราทำกให้ดายวิ่งตะทวตวิกากวาบบ่า

5. Output Parsers

ด้วยที่กล่าวไว้ในรุปภาพข้างบนหลังของทำนา ทัม จุญ การ่ กรดบความสามารถการจัดรายของการความเนอ หม่างทั้รปง มีแก่การาด ้วยหน้ตงง ArgumentError DivElementณ จงแ่ ต์ ้าร์ ค่ เปาย่า์ สา นงผท หาัตง า ใจ่ามา่า ์ ทาาากยบมยบ็I ้า ต่า ี่ าใท()})

5. Retrievers

เพื่อให้ง่ายต่อการนำเข้าข้อมูลส่วนตัวเข้าสู่โมเดลขนาดใหญ่ (LLM) และปรับปรุงคุณภาพของการตอบโต้ของโมเดล LangChain ได้กลุ่มสิ่งที่เรียกว่า Retrievers ซึ่งช่วยในการโหลด แบ่งส่วน จัดเก็บ และค้นหาข้อมูลเอกสาร

6. Vector Stores

เพื่อสนับสนุนการค้นหาความคล้ายคลึงในข้อมูลส่วนตัว LangChain สนับสนุนฐานข้อมูลเวกเตอร์ต่าง ๆ

7. Agents

Agents ซึ่งมักจะหมายถึงแอปพลิเคชั่นที่ออกแบบขึ้นด้วยโมเดลขนาดใหญ่ (LLM) เป็นเครื่องจักรในการตัดสินใจ โดยโดยอัตโนมัติเรียกใช้ระบบภายนอกและอุปกรณ์ฮาร์ดแวร์เพื่อสำเร็จงานของผู้ใช้ตามข้อมูลที่ผู้ใช้กรอกเข้ามา มันเป็นแพทเทิร์นการออกแบบที่มีโมเดลขนาดใหญ่ (LLM) เป็นใจกลาง

ลักษณะการใช้งาน

  • Chatbots: สร้างผู้ช่วยสนทนาอัจฉริยะ, แชทบอทบริการลูกค้า, และแชทบอทสนทนา
  • ฐานความรู้ Q&A: ให้บริการตอบคำถามของประเด็นที่เปิด โดยรวมความรู้เข้ากับกราฟความรู้
  • การเขียนอัจฉริยะ: เช่นการเขียนบทความ, การเขียนสร้างสรรค์, และการสรุปข้อความ