จะใช้ Async API Agent ใน LangChain ได้อย่างไร

Ca Chi Async Api Agent Ni Langchain Di Xyangri



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

โครงร่างด่วน

โพสต์นี้มีส่วนต่อไปนี้:

จะใช้ Async API Agent ใน LangChain ได้อย่างไร

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







ขั้นตอนที่ 1: การติดตั้งกรอบงาน

ก่อนอื่น ให้ติดตั้งเฟรมเวิร์ก LangChain เพื่อรับการขึ้นต่อกันจากตัวจัดการแพ็คเกจ Python:



pip ติดตั้ง langchain



หลังจากนั้น ให้ติดตั้งโมดูล OpenAI เพื่อสร้างโมเดลภาษา เช่น llm และตั้งค่าสภาพแวดล้อม:





pip ติดตั้ง openai

ขั้นตอนที่ 2: สภาพแวดล้อม OpenAI

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



นำเข้า คุณ
นำเข้า รับผ่าน

คุณ . ประมาณ [ 'OPENAI_API_KEY' ] = รับผ่าน . รับผ่าน ( 'คีย์ OpenAI API:' )
คุณ . ประมาณ [ 'SERPER_API_KEY' ] = รับผ่าน . รับผ่าน ( 'คีย์ API ของเซิร์ฟเวอร์:' )

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

เมื่อตั้งค่าสภาพแวดล้อมแล้ว เพียงนำเข้าไลบรารีที่จำเป็น เช่น asyncio และไลบรารีอื่น ๆ โดยใช้การขึ้นต่อกันของ LangChain:

จาก แลงเชน ตัวแทน นำเข้า เตรียมใช้งาน_ตัวแทน , โหลด_เครื่องมือ
นำเข้า เวลา
นำเข้า อะซินซิโอ
จาก แลงเชน ตัวแทน นำเข้า ประเภทตัวแทน
จาก แลงเชน llms นำเข้า OpenAI
จาก แลงเชน โทรกลับ . มาตรฐาน นำเข้า StdOutCallbackHandler
จาก แลงเชน โทรกลับ . ผู้ตามรอย นำเข้า LangChainTracer
จาก aiohttp นำเข้า เซสชันไคลเอ็นต์

ขั้นตอนที่ 4: ตั้งค่าคำถาม

ตั้งชุดข้อมูลคำถามที่มีหลายคำค้นหาที่เกี่ยวข้องกับโดเมนหรือหัวข้อต่างๆ ที่สามารถค้นหาได้บนอินเทอร์เน็ต (Google):

คำถาม = [
“ใครคือผู้ชนะการแข่งขันยูเอสโอเพ่นในปี 2564” ,
“แฟนของโอลิเวีย ไวลด์อายุเท่าไหร่” ,
“ใครคือผู้ชนะตำแหน่งแชมป์โลกสูตร 1” ,
“ใครจะคว้าแชมป์ยูเอสโอเพ่นหญิงรอบชิงชนะเลิศปี 2021” ,
“ใครคือสามีของบียอนเซ่ และเขาอายุเท่าไหร่” ,
]

วิธีที่ 1: การใช้การดำเนินการแบบอนุกรม

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

llm = OpenAI ( อุณหภูมิ = 0 )
เครื่องมือ = โหลด_เครื่องมือ ( [ 'Google-ส่วนหัว' , 'llm-คณิตศาสตร์' ] , llm = llm )
ตัวแทน = เตรียมใช้งาน_ตัวแทน (
เครื่องมือ , llm , ตัวแทน = ประเภทตัวแทน ZERO_SHOT_REACT_DESCRIPTION , รายละเอียด = จริง
)
= เวลา . perf_counter ( )
#การกำหนดค่าตัวนับเวลาเพื่อรับเวลาที่ใช้สำหรับกระบวนการทั้งหมด
สำหรับ ถาม ใน คำถาม:
ตัวแทน. วิ่ง ( ถาม )
ผ่านไปแล้ว = เวลา . perf_counter ( ) - ส
#พิมพ์เวลาทั้งหมดที่ตัวแทนใช้ในการรับคำตอบ
พิมพ์ ( 'ซีเรียลดำเนินการใน {elapsed:0.2f} วินาที' )

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

วิธีที่ 2: การใช้การดำเนินการพร้อมกัน

วิธีดำเนินการพร้อมกันจะตอบคำถามทั้งหมดและรับคำตอบพร้อมกัน

llm = OpenAI ( อุณหภูมิ = 0 )
เครื่องมือ = โหลด_เครื่องมือ ( [ 'Google-ส่วนหัว' , 'llm-คณิตศาสตร์' ] , llm = llm )
#การกำหนดค่าตัวแทนโดยใช้เครื่องมือด้านบนเพื่อรับคำตอบพร้อมกัน
ตัวแทน = เตรียมใช้งาน_ตัวแทน (
เครื่องมือ , llm , ตัวแทน = ประเภทตัวแทน ZERO_SHOT_REACT_DESCRIPTION , รายละเอียด = จริง
)
#การกำหนดค่าตัวนับเวลาเพื่อรับเวลาที่ใช้สำหรับกระบวนการทั้งหมด
= เวลา . perf_counter ( )
งาน = [ ตัวแทน. โรค ( ถาม ) สำหรับ ถาม ใน คำถาม ]
รออะซินซิโอ รวมตัว ( *งาน )
ผ่านไปแล้ว = เวลา . perf_counter ( ) - ส
#พิมพ์เวลาทั้งหมดที่ตัวแทนใช้ในการรับคำตอบ
พิมพ์ ( 'ดำเนินการพร้อมกันใน {elapsed:0.2f} วินาที' )

เอาท์พุต
การดำเนินการพร้อมกันจะแยกข้อมูลทั้งหมดพร้อมกันและใช้เวลาน้อยกว่าการดำเนินการแบบอนุกรม:

นั่นคือทั้งหมดที่เกี่ยวกับการใช้ Async API agent ใน LangChain

บทสรุป

หากต้องการใช้เอเจนต์ Async API ใน LangChain เพียงติดตั้งโมดูลเพื่อนำเข้าไลบรารีจากการขึ้นต่อกันเพื่อรับไลบรารี asyncio หลังจากนั้น ให้ตั้งค่าสภาพแวดล้อมโดยใช้คีย์ OpenAI และ Serper API โดยการลงชื่อเข้าใช้บัญชีที่เกี่ยวข้อง กำหนดค่าชุดคำถามที่เกี่ยวข้องกับหัวข้อต่างๆ และดำเนินการเชนตามลำดับและพร้อมกันเพื่อรับเวลาดำเนินการ คู่มือนี้ได้อธิบายรายละเอียดเกี่ยวกับกระบวนการใช้ Async API agent ใน LangChain