จะเพิ่มสถานะหน่วยความจำใน Chain โดยใช้ LangChain ได้อย่างไร

Ca Pheim Sthana Hnwy Khwam Ca Ni Chain Doy Chi Langchain Di Xyangri



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

คู่มือนี้จะแสดงกระบวนการโหลด chain จาก LangChain Hub

จะเพิ่มสถานะหน่วยความจำใน Chain โดยใช้ LangChain ได้อย่างไร

สถานะหน่วยความจำสามารถใช้เพื่อเริ่มต้นเชนได้เนื่องจากสามารถอ้างอิงถึงค่าล่าสุดที่เก็บไว้ในเชนซึ่งจะใช้ในขณะที่ส่งคืนเอาต์พุต หากต้องการเรียนรู้กระบวนการเพิ่มสถานะหน่วยความจำใน chain โดยใช้เฟรมเวิร์ก LangChain เพียงอ่านคำแนะนำง่ายๆ นี้:







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

ขั้นแรก เข้าสู่กระบวนการโดยการติดตั้งเฟรมเวิร์ก LangChain ที่มีการขึ้นต่อกันโดยใช้คำสั่ง pip:



pip ติดตั้ง langchain



ติดตั้งโมดูล OpenAI ด้วยเพื่อรับไลบรารีที่สามารถใช้เพื่อเพิ่มสถานะหน่วยความจำในเชน:





pip ติดตั้ง openai

รับคีย์ API จากบัญชี OpenAI และ ตั้งค่าสภาพแวดล้อม ใช้มันเพื่อให้โซ่สามารถเข้าถึงได้:



นำเข้า คุณ

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

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

ขั้นตอนนี้มีความสำคัญเพื่อให้โค้ดทำงานได้อย่างถูกต้อง

ขั้นตอนที่ 2: นำเข้าไลบรารี

หลังจากตั้งค่าสภาพแวดล้อม เพียงนำเข้าไลบรารีเพื่อเพิ่มสถานะหน่วยความจำ เช่น LLMChain, ConversationBufferMemory และอื่นๆ อีกมากมาย:

จาก แลงเชน ห่วงโซ่ นำเข้า การสนทนาห่วงโซ่

จาก แลงเชน หน่วยความจำ นำเข้า หน่วยความจำบัฟเฟอร์การสนทนา

จาก แลงเชน chat_models นำเข้า ChatOpenAI

จาก แลงเชน ห่วงโซ่ . llm นำเข้า LLMChain

จาก แลงเชน แจ้ง นำเข้า พรอมต์เทมเพลต

ขั้นตอนที่ 3: การสร้างโซ่

ตอนนี้ เพียงสร้างเชนสำหรับ LLM โดยใช้เมธอด OpenAI() และเทมเพลตของพรอมต์โดยใช้แบบสอบถามเพื่อเรียกเชน:

แชท = ChatOpenAI ( อุณหภูมิ = 0 )

prompt_template = 'เขียนเรื่องตลก {style}'

llm_chain = LLMChain ( llm = แชท , พร้อมท์ = พรอมต์เทมเพลต from_template ( prompt_template ) )

llm_chain ( อินพุต = { 'สไตล์' : : 'ซ้ำซาก' } )

โมเดลได้แสดงผลโดยใช้โมเดล LLM ดังที่แสดงในภาพหน้าจอด้านล่าง:

ขั้นตอนที่ 4: การเพิ่มสถานะหน่วยความจำ

ที่นี่เราจะเพิ่มสถานะหน่วยความจำในห่วงโซ่โดยใช้วิธี ConversationBufferMemory() และเรียกใช้ห่วงโซ่เพื่อให้ได้สี 3 สีจากรุ้ง:

การสนทนา = การสนทนาห่วงโซ่ (

llm = แชท ,

หน่วยความจำ = หน่วยความจำบัฟเฟอร์การสนทนา ( )

)

การสนทนา. วิ่ง ( “ขอสั้นๆ ให้ 3 สีรุ้ง” )

แบบจำลองนี้แสดงรุ้งกินน้ำเพียงสามสีเท่านั้น และบริบทถูกจัดเก็บไว้ในหน่วยความจำของห่วงโซ่:

ที่นี่เรากำลังรันเชนด้วยคำสั่งที่ไม่ชัดเจนเป็น “ อีก 4? ” ดังนั้นตัวแบบจึงรับบริบทจากหน่วยความจำและแสดงสีรุ้งที่เหลือ:

การสนทนา. วิ่ง ( “อีก 4?” )

แบบจำลองได้ทำอย่างนั้นแล้ว เนื่องจากเข้าใจบริบทและส่งคืนสีที่เหลืออีกสี่สีจากชุดสีรุ้ง:

นั่นคือทั้งหมดที่เกี่ยวกับการโหลดโซ่จาก LangChain Hub

บทสรุป

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