Method: answerQuery

ตอบคำค้นหาโดยใช้การสร้างที่อิงตามแหล่งข้อมูล

คำขอ HTTP

POST https://developerknowledge.googleapis.com/v1alpha:answerQuery

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

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

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

การแสดง JSON
{
  "query": string,
  "filter": string
}
ช่อง
query

string

ต้องระบุ คำค้นหาที่จะตอบ

filter

string

ไม่บังคับ ใช้ตัวกรองที่เข้มงวดกับผลการค้นหาที่ใช้เป็นข้อมูลพื้นฐานของคำตอบ นิพจน์รองรับไวยากรณ์บางส่วนที่อธิบายไว้ที่ https://google.aip.dev/160

ช่องที่รองรับสำหรับการกรอง

  • content_length_bytes (INTEGER): ความยาวของฟิลด์ Document.content ในหน่วยไบต์
  • data_source (STRING): แหล่งที่มาของเอกสาร เช่น docs.cloud.google.com ดูรายการแหล่งข้อมูลทั้งหมดในคลังได้ที่ https://developers.google.com/knowledge/reference/corpus-reference
  • update_time (TIMESTAMP): การประทับเวลาเมื่อมีการอัปเดตเอกสารครั้งล่าสุด การอัปเดตที่มีความหมายคือการอัปเดตที่เปลี่ยนแปลงเนื้อหา Markdown หรือข้อมูลเมตาของเอกสาร
  • uri (สตริง): URI ของเอกสาร เช่น https://docs.cloud.google.com/bigquery/docs/tables

ฟิลด์ INTEGER รองรับตัวดำเนินการ =, <, <=, > และ >=

ฟิลด์ STRING รองรับโอเปอเรเตอร์ = (เท่ากับ) และ != (ไม่เท่ากับ) สำหรับการทำงานแบบตรงทั้งหมดในสตริงทั้งหมด ระบบไม่รองรับการจับคู่บางส่วน การจับคู่คำนำหน้า และการจับคู่นิพจน์ทั่วไป

ฟิลด์การประทับเวลารองรับตัวดำเนินการ =, <, <=, > และ >= การประทับเวลาต้องอยู่ในรูปแบบ RFC-3339 เช่น "2025-01-01T00:00:00Z"

คุณรวมนิพจน์ได้โดยใช้โอเปอเรเตอร์เชิงตรรกะ AND, OR และ NOT (หรือ -) OR มีลำดับความสำคัญสูงกว่า AND ใช้เครื่องหมายวงเล็บเพื่อจัดกลุ่มลำดับความสำคัญที่ชัดเจน

ตัวอย่าง

  • กรองตาม Document.content_length_bytes: content_length_bytes < 50000
  • data_source = "docs.cloud.google.com" OR data_source = "firebase.google.com"
  • data_source != "firebase.google.com"
  • update_time < "2024-01-01T00:00:00Z"
  • update_time >= "2025-01-22T00:00:00Z" AND (data_source = "developer.chrome.com" OR data_source = "web.dev")
  • uri = "https://docs.cloud.google.com/release-notes"

สตริง filter ต้องมีความยาวไม่เกิน 500 อักขระ หากค่ามีความยาวเกิน 500 อักขระ จะทำให้เกิดข้อผิดพลาด INVALID_ARGUMENT

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

ข้อความตอบกลับสำหรับ DeveloperKnowledge.AnswerQuery

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

การแสดง JSON
{
  "answer": {
    object (Answer)
  }
}
ช่อง
answer

object (Answer)

คำตอบของคำค้นหา

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

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

  • https://www.googleapis.com/auth/devprofiles.full_control
  • https://www.googleapis.com/auth/developerprofiles.readonly
  • https://www.googleapis.com/auth/cloud-platform

ดูข้อมูลเพิ่มเติมได้ที่ OAuth 2.0 Overview

คำตอบ

คำตอบสำหรับคำค้นหา

การแสดง JSON
{
  "answerText": string,
  "citations": [
    {
      object (AnswerCitation)
    }
  ],
  "references": [
    {
      object (AnswerReference)
    }
  ]
}
ช่อง
answerText

string

ประกอบด้วยข้อความของคำตอบ

citations[]

object (AnswerCitation)

เอาต์พุตเท่านั้น มีการอ้างอิงสำหรับคำตอบ

references[]

object (AnswerReference)

เอาต์พุตเท่านั้น มีการอ้างอิงสำหรับคำตอบ

AnswerCitation

ข้อมูลการอ้างอิงสำหรับส่วน

การแสดง JSON
{
  "startIndex": integer,
  "endIndex": integer,
  "sources": [
    {
      object (CitationSource)
    }
  ]
}
ช่อง
startIndex

integer

เอาต์พุตเท่านั้น ระบุจุดเริ่มต้นของกลุ่ม โดยวัดเป็นไบต์ (Unicode UTF-8) รวม หากมีอักขระแบบหลายไบต์ เช่น อักขระที่ไม่ใช่ ASCII การวัดดัชนีจะยาวกว่าความยาวของสตริง

endIndex

integer

เอาต์พุตเท่านั้น ระบุจุดสิ้นสุดของกลุ่ม โดยวัดเป็นไบต์ (Unicode UTF-8) ไม่รวม หากมีอักขระแบบหลายไบต์ เช่น อักขระที่ไม่ใช่ ASCII การวัดดัชนีจะยาวกว่าความยาวของสตริง

sources[]

object (CitationSource)

เอาต์พุตเท่านั้น มีแหล่งที่มาของการอ้างอิงสำหรับกลุ่มที่ระบุแหล่งที่มา

CitationSource

แหล่งที่มาของการอ้างอิง

การแสดง JSON
{
  "referenceIndex": integer
}
ช่อง
referenceIndex

integer

เอาต์พุตเท่านั้น มีดัชนีของ Answer.AnswerReference ในฟิลด์ที่ซ้ำได้ references

AnswerReference

แสดงการอ้างอิงแหล่งที่มา

การแสดง JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "documentReference": {
    object (DocumentReference)
  }
  // End of mutually exclusive fields.
}
ช่อง
มีเนื้อหาของข้อมูลอ้างอิง ต่อไปนี้คือรายการฟิลด์ที่แยกกัน ระบบจะตั้งค่าช่องใดช่องหนึ่งต่อไปนี้ในการตอบกลับ
documentReference

object (DocumentReference)

เอาต์พุตเท่านั้น เอกสารอ้างอิง

สิ้นสุดฟิลด์ที่แยกกัน

DocumentReference

แสดงการอ้างอิงถึงเอกสาร

การแสดง JSON
{
  "documentChunk": {
    object (DocumentChunk)
  }
}
ช่อง
documentChunk

object (DocumentChunk)

เอาต์พุตเท่านั้น มีก้อนเอกสาร ไม่ได้ตั้งค่าฟิลด์ documentChunk.id และจะว่างเปล่า