วิธีใช้สรุปการสนทนาใน LangChain

Withi Chi Srup Kar Snthna Ni Langchain



LangChain เป็นเฟรมเวิร์กที่สามารถใช้ในการสร้างโมเดลภาษาโดยใช้ชุดข้อมูลการฝึกอบรมจำนวนมหาศาลที่สร้างขึ้นในภาษาธรรมชาติ LangChain มอบไลบรารีและการพึ่งพาที่สามารถใช้ในการสร้างและจัดการแชทบอทและโมเดลภาษา เช่น LLM โมเดลเหล่านี้ส่วนใหญ่ถือเป็นเครื่องจักรสำหรับสนทนาด้วยหรือดึงข้อมูลบางส่วนตามข้อความแจ้งเตือนที่เขียนด้วยภาษาที่เหมือนมนุษย์

คู่มือนี้จะแสดงขั้นตอนการใช้สรุปการสนทนาใน LangChain

วิธีใช้สรุปการสนทนาใน LangChain

LangChain มีไลบรารีเช่น ConversationSummaryMemory ที่สามารถดึงข้อมูลสรุปที่สมบูรณ์ของการแชทหรือการสนทนาได้ สามารถใช้เพื่อรับข้อมูลหลักของการสนทนาโดยไม่ต้องอ่านข้อความทั้งหมดที่มีอยู่ในแชท







หากต้องการเรียนรู้กระบวนการใช้สรุปการสนทนาใน LangChain เพียงทำตามขั้นตอนต่อไปนี้:



ขั้นตอนที่ 1: ติดตั้งโมดูล

ขั้นแรก ติดตั้งเฟรมเวิร์ก LangChain เพื่อรับการขึ้นต่อกันหรือไลบรารีโดยใช้โค้ดต่อไปนี้:



pip ติดตั้ง langchain





ตอนนี้ ให้ติดตั้งโมดูล OpenAI หลังจากติดตั้ง LangChain โดยใช้คำสั่ง pip:

pip ติดตั้ง openai



หลังจากติดตั้งโมดูลแล้ว ตั้งค่าสภาพแวดล้อม ใช้รหัสต่อไปนี้หลังจากได้รับคีย์ API จากบัญชี OpenAI:

นำเข้า คุณ

นำเข้า รับผ่าน

คุณ . ประมาณ [ 'OPENAI_API_KEY' ] = รับผ่าน . รับผ่าน ( 'คีย์ OpenAI API:' )

ขั้นตอนที่ 2: การใช้สรุปการสนทนา

เข้าสู่กระบวนการใช้สรุปการสนทนาโดยการนำเข้าไลบรารีจาก LangChain:

จาก แลงเชน หน่วยความจำ นำเข้า บทสนทนาสรุปหน่วยความจำ , ประวัติข้อความแชท

จาก แลงเชน llms นำเข้า OpenAI

กำหนดค่าหน่วยความจำของโมเดลโดยใช้วิธี ConversationSummaryMemory() และ OpenAI() และบันทึกข้อมูลในนั้น:

หน่วยความจำ = บทสนทนาสรุปหน่วยความจำ ( llm = OpenAI ( อุณหภูมิ = 0 ) )

หน่วยความจำ. บันทึก_บริบท ( { 'ป้อนข้อมูล' : : 'สวัสดี' } , { 'เอาท์พุท' : : 'สวัสดี' } )

เรียกใช้หน่วยความจำโดยการเรียก load_memory_variables() วิธีการดึงข้อมูลจากหน่วยความจำ:

หน่วยความจำ. load_memory_variables ( { } )

ผู้ใช้ยังสามารถรับข้อมูลในรูปแบบของการสนทนาเหมือนกับแต่ละเอนทิตีด้วยข้อความแยกกัน:

หน่วยความจำ = บทสนทนาสรุปหน่วยความจำ ( llm = OpenAI ( อุณหภูมิ = 0 ) , return_messages = จริง )

หน่วยความจำ. บันทึก_บริบท ( { 'ป้อนข้อมูล' : : 'สวัสดี' } , { 'เอาท์พุท' : : 'สวัสดีเป็นอย่างไรบ้าง' } )

หากต้องการรับข้อความของ AI และมนุษย์แยกจากกัน ให้ดำเนินการเมธอด load_memory_variables():

หน่วยความจำ. load_memory_variables ( { } )

จัดเก็บสรุปการสนทนาไว้ในหน่วยความจำ จากนั้นดำเนินการหน่วยความจำเพื่อแสดงสรุปการสนทนา/การสนทนาบนหน้าจอ:

ข้อความ = หน่วยความจำ. chat_memory . ข้อความ

ก่อนหน้า_สรุป = ''

หน่วยความจำ. คาดการณ์_ใหม่_สรุป ( ข้อความ , ก่อนหน้า_สรุป )

ขั้นตอนที่ 3: การใช้สรุปการสนทนากับข้อความที่มีอยู่

ผู้ใช้ยังสามารถรับสรุปการสนทนาที่มีอยู่นอกชั้นเรียนหรือการแชทโดยใช้ข้อความ ChatMessageHistory() คุณสามารถเพิ่มข้อความเหล่านี้ลงในหน่วยความจำเพื่อให้สามารถสร้างสรุปการสนทนาที่สมบูรณ์ได้โดยอัตโนมัติ:

ประวัติศาสตร์ = ประวัติข้อความแชท ( )

ประวัติศาสตร์. add_user_message ( 'สวัสดี' )

ประวัติศาสตร์. add_ai_message ( 'สวัสดี!' )

สร้างแบบจำลอง เช่น LLM โดยใช้เมธอด OpenAI() เพื่อดำเนินการกับข้อความที่มีอยู่ใน chat_memory ตัวแปร:

หน่วยความจำ = บทสนทนาสรุปหน่วยความจำ จาก_ข้อความ (
llm = OpenAI ( อุณหภูมิ = 0 ) ,
chat_memory = ประวัติศาสตร์ ,
return_messages = จริง
)

ดำเนินการหน่วยความจำโดยใช้บัฟเฟอร์เพื่อรับข้อมูลสรุปของข้อความที่มีอยู่:

หน่วยความจำ. กันชน

รันโค้ดต่อไปนี้เพื่อสร้าง LLM โดยการกำหนดค่าหน่วยความจำบัฟเฟอร์โดยใช้ข้อความแชท:

หน่วยความจำ = บทสนทนาสรุปหน่วยความจำ (
llm = OpenAI ( อุณหภูมิ = 0 ) ,
กันชน = '''มนุษย์ถามเครื่องจักรถามเกี่ยวกับตัวเอง
ระบบตอบกลับว่า AI ถูกสร้างขึ้นมาเพื่อสิ่งที่ดีเพราะสามารถช่วยให้มนุษย์บรรลุศักยภาพของตนได้'''
,
chat_memory = ประวัติศาสตร์ ,
return_messages = จริง
)

ขั้นตอนที่ 4: การใช้สรุปการสนทนาในเครือข่าย

ขั้นตอนต่อไปจะอธิบายกระบวนการใช้สรุปการสนทนาในห่วงโซ่โดยใช้ LLM:

จาก แลงเชน llms นำเข้า OpenAI
จาก แลงเชน ห่วงโซ่ นำเข้า การสนทนาห่วงโซ่
llm = OpenAI ( อุณหภูมิ = 0 )
การสนทนา_กับ_สรุป = การสนทนาห่วงโซ่ (
llm = llm ,
หน่วยความจำ = บทสนทนาสรุปหน่วยความจำ ( llm = OpenAI ( ) ) ,
รายละเอียด = จริง
)
การสนทนา_กับ_สรุป ทำนาย ( ป้อนข้อมูล = 'สวัสดี คุณสบายดีไหม' )

ที่นี่เราได้เริ่มต้นสร้างเครือข่ายโดยเริ่มการสนทนาด้วยการซักถามอย่างสุภาพ:

ตอนนี้เข้าสู่การสนทนาโดยถามเพิ่มเติมอีกเล็กน้อยเกี่ยวกับผลลัพธ์สุดท้ายเพื่อขยายความ:

การสนทนา_กับ_สรุป ทำนาย ( ป้อนข้อมูล = “บอกฉันมามากกว่านี้สิ!” )

โมเดลได้อธิบายข้อความสุดท้ายพร้อมคำแนะนำโดยละเอียดเกี่ยวกับเทคโนโลยี AI หรือแชทบอท:

แยกจุดสนใจจากผลลัพธ์ก่อนหน้าเพื่อดำเนินการสนทนาไปในทิศทางที่เฉพาะเจาะจง:

การสนทนา_กับ_สรุป ทำนาย ( ป้อนข้อมูล = “มหัศจรรย์มาก โครงการนี้ดียังไง?” )

ที่นี่เราได้รับคำตอบโดยละเอียดจากบอทโดยใช้ไลบรารีหน่วยความจำสรุปการสนทนา:

นั่นคือทั้งหมดที่เกี่ยวกับการใช้สรุปการสนทนาใน LangChain

บทสรุป

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