ระบบ RAG แบบดั้งเดิมมักจะพยายามดิ้นรนเพื่อให้คำตอบที่น่าพอใจเมื่อผู้ใช้ถามคำถามที่คลุมเครือหรือคลุมเครือโดยไม่ต้องให้บริบทที่เพียงพอ สิ่งนี้นำไปสู่การตอบกลับที่ไม่เป็นประโยชน์ เช่น "ฉันไม่รู้" หรือคำตอบที่ไม่ถูกต้องซึ่งจัดทำขึ้นโดย LLM Repo นี้มีโค้ดเพื่อปรับปรุง RAG Agent แบบดั้งเดิม
เราขอแนะนำเครื่องมือ LangChain แบบกำหนดเองสำหรับตัวแทน RAG ซึ่งช่วยให้ตัวแทนมีส่วนร่วมในการสนทนาสนทนากับผู้ใช้เมื่อคำถามเริ่มแรกไม่ชัดเจนหรือคลุมเครือเกินไป ด้วยการถามคำถามเพื่อให้กระจ่าง แจ้งให้ผู้ใช้ทราบรายละเอียดเพิ่มเติม และรวมข้อมูลตามบริบท ตัวแทนสามารถรวบรวมบริบทที่จำเป็นเพื่อให้คำตอบที่ถูกต้องและเป็นประโยชน์ แม้จะมาจากการสอบถามเบื้องต้นที่คลุมเครือก็ตาม
มาอธิบายข้อดีโดยใช้ตัวอย่างคำถามต่อไปนี้: "อินสแตนซ์ EC2 ของฉันมี GPU กี่ตัว"
RAG Agent แบบเดิมไม่ทราบว่าผู้ใช้มีอินสแตนซ์ EC2 ใดอยู่ในใจ ดังนั้นจึงให้คำตอบที่ไม่เป็นประโยชน์มากนัก:
RAG Agent ที่ได้รับการปรับปรุงด้วยเครื่องมือ `AskHuman`` ดำเนินการเพิ่มเติมอีกสองขั้นตอน:
สิ่งนี้ช่วยให้ตัวแทนที่ได้รับการปรับปรุงสามารถให้คำตอบที่เฉพาะเจาะจงและเป็นประโยชน์ได้:
หากต้องการเรียกใช้การสาธิตนี้ในบัญชี AWS ของคุณ คุณต้องทำตามขั้นตอนเหล่านี้:
llm
ที่ใช้ใน LangChain Agent ใน demo.py
ด้วย LLM ที่รองรับโดย LangChainsh dependencies.sh
ใน TerminalKENDRA_INDEX_ID
ของคุณในพารามิเตอร์ตัวดึงข้อมูล demo.py
streamlit run demo.py
ใน Terminal โปรดทราบว่าการใช้งานดัชนี Kendra ใหม่และการสาธิตการใช้งานอาจเพิ่มค่าใช้จ่ายเพิ่มเติมในใบเรียกเก็บเงินของคุณ เพื่อหลีกเลี่ยงไม่ให้เกิดค่าใช้จ่ายที่ไม่จำเป็น โปรดลบ Amazon Kendra Index หากคุณไม่ได้ใช้งานอีกต่อไป และปิดอินสแตนซ์ SageMaker Studio หากคุณใช้เพื่อเรียกใช้การสาธิต