Method: models.generateAnswer

สร้างคำตอบพื้นฐานจากโมเดลที่ระบุอินพุต GenerateAnswerRequest

คำขอ HTTP

POST https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateAnswer

URL ใช้ไวยากรณ์การแปลง gRPC

พารามิเตอร์เส้นทาง

พารามิเตอร์
model

string

ต้องระบุ ชื่อของ Model ที่จะใช้เพื่อสร้างการตอบสนองไปยังพื้นที่ต่างๆ

รูปแบบ: model=models/{model}

เนื้อหาของคำขอ

เนื้อหาของคำขอมีข้อมูลซึ่งมีโครงสร้างต่อไปนี้

การแสดง JSON
{
  "contents": [
    {
      object (Content)
    }
  ],
  "answerStyle": enum (AnswerStyle),
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ],

  // Union field grounding_source can be only one of the following:
  "inlinePassages": {
    object (GroundingPassages)
  },
  "semanticRetriever": {
    object (SemanticRetrieverConfig)
  }
  // End of list of possible types for union field grounding_source.
  "temperature": number
}
ช่อง
contents[]

object (Content)

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

หมายเหตุ: ปัจจุบันmodel.generateAnswer รองรับเฉพาะคำค้นหาภาษาอังกฤษ

answerStyle

enum (AnswerStyle)

ต้องระบุ รูปแบบที่ควรแสดงผลคำตอบ

safetySettings[]

object (SafetySetting)

ไม่บังคับ รายการอินสแตนซ์ SafetySetting ที่ไม่ซ้ำกันสำหรับการบล็อกเนื้อหาที่ไม่ปลอดภัย

จะมีการบังคับใช้ในวันที่ GenerateAnswerRequest.contents และ GenerateAnswerResponse.candidate ควรมีการตั้งค่าไม่เกิน 1 รายการสำหรับ SafetyCategory แต่ละประเภท API จะบล็อกเนื้อหาและการตอบกลับที่ไม่เป็นไปตามเกณฑ์ที่กำหนดโดยการตั้งค่าเหล่านี้ รายการนี้ลบล้างการตั้งค่าเริ่มต้นสำหรับ SafetyCategory แต่ละรายการที่ระบุใน safetySettings หากไม่มี SafetySetting สำหรับ SafetyCategory ที่ระบุในรายการ API จะใช้การตั้งค่าความปลอดภัยเริ่มต้นสำหรับหมวดหมู่นั้น รองรับหมวดหมู่ที่เป็นอันตราย HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT

ฟิลด์สหภาพ grounding_source แหล่งที่มาที่จะเป็นผู้ให้คำตอบ grounding_source ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
inlinePassages

object (GroundingPassages)

ข้อความที่ระบุในบรรทัดกับคำขอ

semanticRetriever

object (SemanticRetrieverConfig)

เนื้อหาที่ดึงมาจากทรัพยากรที่สร้างผ่าน Semantic Retriever API

temperature

number

ไม่บังคับ ควบคุมการสุ่มของเอาต์พุต

ค่ามีได้ตั้งแต่ [0.0,1.0] ค่าที่ใกล้เคียงกับ 1.0 จะทำให้ได้คำตอบที่หลากหลายและสร้างสรรค์กว่า ส่วนค่าที่ใกล้เคียงกับ 0.0 มากกว่าจะส่งผลให้โมเดลได้รับคำตอบที่ตรงไปตรงมามากกว่า โดยทั่วไปเราขอแนะนำให้ใช้อุณหภูมิต่ำ (~0.2) ใน Use Case การระบุแหล่งที่มา-การตอบคำถาม

เนื้อหาการตอบกลับ

คำตอบจากโมเดลสำหรับคำตอบพื้นฐาน

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

การแสดง JSON
{
  "answer": {
    object (Candidate)
  },
  "answerableProbability": number,
  "inputFeedback": {
    object (InputFeedback)
  }
}
ช่อง
answer

object (Candidate)

คำตอบผู้สมัครจากโมเดล

หมายเหตุ: โมเดลจะพยายามให้คำตอบที่มีพื้นฐานเสมอ แม้ว่าคำตอบนั้นจะตอบง่ายๆ ในข้อความที่ระบุไม่ได้ก็ตาม ในกรณีนี้ อาจมีคำตอบที่มีคุณภาพต่ำหรือไม่มีเหตุผลพร้อม answerableProbability ที่ต่ำ

answerableProbability

number

เอาต์พุตเท่านั้น ค่าประมาณของความน่าจะเป็นที่คำตอบของโมเดลนั้นถูกต้องและอิงตามข้อความอินพุต

ค่า answerableProbability ต่ำบ่งชี้ว่า คำตอบอาจไม่ได้มาจากแหล่งที่มา

เมื่อ answerableProbability ต่ำ ลูกค้าบางรายอาจต้องการดำเนินการต่อไปนี้

  • แสดงข้อความที่ระบุว่า "เราไม่สามารถตอบคำถามนั้นได้" ต่อผู้ใช้
  • ถอยกลับไปใช้ LLM อเนกประสงค์ที่ตอบคำถามจากความรู้รอบโลก เกณฑ์และลักษณะของโฆษณาสำรองดังกล่าวจะขึ้นอยู่กับกรณีการใช้งานของลูกค้าแต่ละราย 0.5 คือเกณฑ์เริ่มต้นที่ดี
inputFeedback

object (InputFeedback)

เอาต์พุตเท่านั้น ความคิดเห็นที่เกี่ยวข้องกับข้อมูลอินพุตที่ใช้ตอบคำถาม ไม่ใช่การตอบคำถามที่โมเดลสร้างขึ้น

"ข้อมูลอินพุต" อาจเป็นสิ่งต่อไปนี้อย่างน้อย 1 อย่าง

  • คำถามที่ระบุโดยรายการสุดท้ายใน GenerateAnswerRequest.content
  • ประวัติการสนทนาที่ระบุโดยรายการอื่นๆ ใน GenerateAnswerRequest.content
  • แหล่งที่มาของการต่อสายดิน (GenerateAnswerRequest.semantic_retriever หรือ GenerateAnswerRequest.inline_passages)

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth อย่างใดอย่างหนึ่งต่อไปนี้

  • https://www.googleapis.com/auth/generative-language
  • https://www.googleapis.com/auth/generative-language.retriever
  • https://www.googleapis.com/auth/generative-language.retriever.readonly
  • https://www.googleapis.com/auth/generative-language.tuning
  • https://www.googleapis.com/auth/generative-language.tuning.readonly

ดูข้อมูลเพิ่มเติมได้ที่ภาพรวมการตรวจสอบสิทธิ์

GroundingPassages

รายการข้อความที่ซ้ำ

การแสดง JSON
{
  "passages": [
    {
      object (GroundingPassage)
    }
  ]
}
ช่อง
passages[]

object (GroundingPassage)

รายการข้อความ

GroundingPassage

ข้อความที่ระบุในบรรทัดกับการกำหนดค่าสายกราวด์

การแสดง JSON
{
  "id": string,
  "content": {
    object (Content)
  }
}
ช่อง
id

string

ตัวระบุข้อความสำหรับการระบุแหล่งที่มาของข้อความนี้ในคำตอบพื้นฐาน

content

object (Content)

เนื้อหาของข้อความ

SemanticRetrieverConfig

การกำหนดค่าสำหรับการเรียกเนื้อหาที่ต่อสายดินจาก Corpus หรือ Document ที่สร้างขึ้นโดยใช้ Semantic Retriever API

การแสดง JSON
{
  "source": string,
  "query": {
    object (Content)
  },
  "metadataFilters": [
    {
      object (MetadataFilter)
    }
  ],
  "maxChunksCount": integer,
  "minimumRelevanceScore": number
}
ช่อง
source

string

ต้องระบุ ชื่อทรัพยากรสำหรับการดึงข้อมูล เช่น corpora/123 หรือ corpora/123/documents/abc

query

object (Content)

ต้องระบุ ข้อความค้นหาที่จะใช้สำหรับการจับคู่ความคล้ายคลึง Chunks ในทรัพยากรที่ระบุ

metadataFilters[]

object (MetadataFilter)

ไม่บังคับ ตัวกรองสำหรับเลือก Document และ/หรือ Chunk จากทรัพยากร

maxChunksCount

integer

ไม่บังคับ จำนวนสูงสุดของ Chunk ที่เกี่ยวข้องที่จะดึงข้อมูล

minimumRelevanceScore

number

ไม่บังคับ คะแนนความเกี่ยวข้องขั้นต่ำสำหรับ Chunk ที่เกี่ยวข้องที่ดึงมา

AnswerStyle

สไตล์สำหรับคำตอบที่ถูกต้อง

Enum
ANSWER_STYLE_UNSPECIFIED รูปแบบคำตอบที่ไม่ระบุ
ABSTRACTIVE สไตล์ที่กระชับแต่เป็นนามธรรม
EXTRACTIVE สไตล์ที่สั้นกระชับและชัดเจน
VERBOSE รูปแบบแบบละเอียดรวมถึงรายละเอียดเพิ่มเติม คําตอบอาจอยู่ในรูปแบบประโยค ย่อหน้า หลายย่อหน้า หรือหัวข้อย่อย ฯลฯ

InputFeedback

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

การแสดง JSON
{
  "safetyRatings": [
    {
      object (SafetyRating)
    }
  ],
  "blockReason": enum (BlockReason)
}
ช่อง
safetyRatings[]

object (SafetyRating)

การให้คะแนนเพื่อความปลอดภัยของการป้อนข้อมูล มีการให้คะแนนไม่เกิน 1 รายการต่อหมวดหมู่

blockReason

enum (BlockReason)

ไม่บังคับ หากตั้งค่าไว้ ระบบจะบล็อกอินพุตและจะไม่แสดงผลตัวเลือก ปรับเปลี่ยนข้อมูลที่ป้อน

BlockReason

ระบุสาเหตุที่อินพุตถูกบล็อก

Enum
BLOCK_REASON_UNSPECIFIED ค่าเริ่มต้น ค่านี้ไม่ได้ใช้
SAFETY ข้อมูลที่ป้อนถูกบล็อกเนื่องจากเหตุผลด้านความปลอดภัย คุณตรวจสอบ safetyRatings ได้เพื่อดูว่าหมวดหมู่ความปลอดภัยใดบล็อกไว้
OTHER ข้อมูลที่ป้อนถูกบล็อกเนื่องจากสาเหตุอื่นๆ