ตัวแทน
เนื่องจากการใช้งาน Large Language Models (LLM) ขยายในเชิงลึกและกว้างมากขึ้น ข้อกำหนดบางประการจึงเกิดขึ้น:
- ความสามารถในการตั้งโปรแกรม LLM และสร้างพรอมต์ที่ใช้ซ้ำได้และรวมพรอมต์เข้ากับแอปพลิเคชัน ขนาดใหญ่ได้อย่างราบรื่น
- การสร้างห่วงโซ่เพื่อจัดลำดับการโต้ตอบ LLM สำหรับแอปพลิเคชันขนาดใหญ่
- ดำเนินการกระตุ้นห่วงโซ่แห่งความคิดอย่างอัตโนมัติโดยทันทีผ่านตัวแทนซึ่งสามารถดำเนินการได้เองโดยอัตโนมัติเมื่อพิจารณาจากขอบเขตของเครื่องมือ
- สร้างไปป์ไลน์พรอมต์ ที่ปรับขนาดได้ ซึ่งสามารถรวบรวมข้อมูลที่เกี่ยวข้องจากแหล่งต่างๆ ทั้งหมดขึ้นอยู่กับอินพุตของผู้ใช้และประกอบเป็นพรอมต์ และส่งพรอมต์ไปยัง LLM
ด้วยการดำเนินงานที่เกี่ยวข้องกับ LLM จึงมีความจำเป็นที่ชัดเจนสำหรับระบบอัตโนมัติ ขณะนี้ระบบอัตโนมัตินี้อยู่ในรูปแบบของสิ่งที่เรียกว่าตัวแทน
Prompt Chainingคือการดำเนินการตามลำดับการกระทำที่กำหนดไว้ล่วงหน้าและกำหนดไว้
ความน่าสนใจของเอเย่นต์คือเอเย่นต์จะไม่ทำตามลำดับเหตุการณ์ที่กำหนดไว้ล่วงหน้า ตัวแทนสามารถรักษาความเป็นอิสระในระดับสูงได้
เมื่อพิจารณาจากภาพด้านล่างตัวแทนสามารถเข้าถึงชุดเครื่องมือและคำขอใด ๆ ที่อยู่ภายใต้ขอบเขตของเครื่องมือเหล่านี้สามารถแก้ไขได้โดยตัวแทน ไปป์ไลน์ Execution ให้อิสระแก่ Agent และอาจต้องมี การวนซ้ำหลายครั้งจนกว่า Agent จะไปถึงคำตอบสุดท้าย
การดำเนินการที่ดำเนินการโดยตัวแทนเกี่ยวข้องกับ:
- โดยใช้เครื่องมือ
- การสังเกตผลลัพธ์ของมัน
- ปั่นจักรยานไปที่เครื่องมืออื่น
- ส่งคืนเอาต์พุตไปยังผู้ใช้
“ผู้ชายกลายเป็นเครื่องมือของเครื่องมือของพวกเขา”
- เฮนรี เดวิด ธอโร
มีการสังเกตคิดและได้คำตอบสุดท้าย แผนภาพแสดงวิธีการเรียกใช้ประเภทการดำเนินการอื่นในกรณีที่ไม่ถึงคำตอบสุดท้าย
เอาต์พุตที่สนิปด้านล่างไดอะแกรมแสดงวิธีการดำเนินการของเอเจนต์และวิธีสร้างเชนในแบบอิสระ
การใช้ LangChain เป็นข้อมูลอ้างอิง ตัวแทนมีสามแนวคิด:
เครื่องมือ
ดังที่แสดงไว้ก่อนหน้าในบทความ มีเครื่องมือหลายอย่างที่สามารถใช้ได้ เครื่องมือสามารถถูกมองว่าเป็นหน้าที่ที่ทำหน้าที่เฉพาะ
เครื่องมือต่างๆ ได้แก่ Google Search, การค้นหาฐานข้อมูล, Python REPL หรือแม้แต่การเรียกใช้เชนที่มีอยู่
ภายในกรอบงาน LangChain อินเทอร์เฟซสำหรับเครื่องมือคือฟังก์ชันที่คาดว่าจะมี:
- สตริงเป็นอินพุต
- และสตริงเป็นเอาต์พุต
นี่คือโมเดลภาษาที่ขับเคลื่อนเอเจนต์ ด้านล่างนี้คือตัวอย่างวิธีกำหนด LLM ภายในเอเจนต์:
ประเภทตัวแทน
ตัวแทนใช้ LLM เพื่อกำหนดว่าจะดำเนินการใดและดำเนินการตามลำดับใด ตัวแทนสร้างลำดับห่วงโซ่ของความคิดในทันทีโดยแยกย่อยคำขอของผู้ใช้
ตัวแทนเกี่ยวข้องกับ LLM ในการตัดสินใจว่าจะดำเนินการใด ดำเนินการนั้น ดูการสังเกต และทำซ้ำจนกว่าจะเสร็จสิ้น — ที่มา
ตัวแทนมีประสิทธิภาพแม้ในกรณีที่คำถามคลุมเครือและต้องการแนวทางแบบหลายฮอป สิ่งนี้สามารถพิจารณาได้ว่าเป็นกระบวนการอัตโนมัติในการแยกย่อยคำถามหรือคำสั่งที่ซับซ้อนให้เป็นกระบวนการห่วงโซ่แห่งความคิด
ภาพด้านล่างแสดงการสลายตัวของคำถามได้ดี และวิธีตอบคำถามใน กระบวนการ คิดแบบห่วงโซ่ อาหารทีละชิ้น :
ด้านล่างนี้คือรายชื่อประเภทตัวแทนภายในสภาพแวดล้อม LangChain อ่านเพิ่มเติมที่นี่สำหรับคำอธิบายแบบเต็มของประเภทตัวแทน
เมื่อพิจารณาจากภาพด้านล่าง สิ่งเดียวที่เปลี่ยนแปลงในโค้ดคือคำAgentTypeอธิบาย การเปลี่ยนแปลงในการตอบสนองสามารถเห็นได้อย่างชัดเจนในภาพนี้ โดยใช้การกำหนดค่าเดียวกันทุกประการและต่างกันเพียงAgentType.
สำหรับตัวอย่างโค้ดการทำงานที่ สมบูรณ์ของ LangChain Agents โปรดอ่านเพิ่มเติมที่นี่
⭐️ โปรดติดตามฉันบนLinkedInสำหรับการอัปเดตเกี่ยวกับ Conversational AI ⭐️
ตอนนี้ฉันเป็นหัวหน้าผู้สอนศาสนา @ HumanFirst ฉันสำรวจและเขียนเกี่ยวกับทุกสิ่งที่จุดตัดของ AI และภาษา ตั้งแต่LLMs , Chatbots , Voicebots , Development Frameworks , Data-Centric Latent Spaceและอื่นๆ





































![รายการที่เชื่อมโยงคืออะไร? [ส่วนที่ 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)