ResponseSynthesizer (ตัวสังเคราะห์การตอบกลับ)
เอกสารนี้ได้รับการแปลโดยอัตโนมัติและอาจมีข้อผิดพลาด อย่าลังเลที่จะเปิด Pull Request เพื่อแนะนำการเปลี่ยนแปลง.
ResponseSynthesizer มีหน้าที่ส่งคำถาม, โหนด และแม่แบบข้อความให้กับ LLM เพื่อสร้างคำตอบ มีโหมดหลักๆ สำหรับการสร้างคำตอบดังนี้:
Refine
(ปรับปรุง): "สร้างและปรับปรุง" คำตอบโดยการไปทีละชิ้นข้อความที่ได้รับ สร้างการเรียก LLM แยกตามโหนด ใช้สำหรับคำตอบที่ละเอียดมากขึ้นCompactAndRefine
(คอมแพ็คและปรับปรุง) (ค่าเริ่มต้น): "คอมแพ็ค" แม่แบบระหว่างการเรียก LLM โดยการเติมข้อความที่จะพอดีกับขนาดของแม่แบบสูงสุด หากมีข้อความมากเกินไปที่จะเติมในแม่แบบเดียว ให้ "สร้างและปรับปรุง" คำตอบโดยไปทีละแม่แบบ คล้ายกับrefine
แต่ควรจะทำให้มีการเรียก LLM น้อยลงTreeSummarize
(สรุปต้นไม้): โดยให้ชุดข้อความและคำถาม สร้างต้นไม้และส่งโหนดรากเป็นคำตอบ ใช้สำหรับการสรุปSimpleResponseBuilder
(สร้างคำตอบแบบง่าย): โดยให้ชุดข้อความและคำถาม นำคำถามไปใช้กับแต่ละข้อความ และสะสมคำตอบในอาร์เรย์ ส่งคืนสตริงที่ต่อกันของคำตอบทั้งหมด ใช้เมื่อต้องการเรียกคำถามเดียวกันต่อแต่ละข้อความ
import { NodeWithScore, ResponseSynthesizer, TextNode } from "llamaindex";
const responseSynthesizer = new ResponseSynthesizer();
const nodesWithScore: NodeWithScore[] = [
{
node: new TextNode({ text: "ฉันอายุ 10 ปี" }),
score: 1,
},
{
node: new TextNode({ text: "จอห์นอายุ 20 ปี" }),
score: 0.5,
},
];
const response = await responseSynthesizer.synthesize(
"ฉันอายุเท่าไร?",
nodesWithScore,
);
console.log(response.response);
อ้างอิง API
"