Package google.developers.knowledge.v1alpha

ดัชนี

DeveloperKnowledge

Developer Knowledge API ให้สิทธิ์เข้าถึงเอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์แบบสาธารณะของ Google โดยใช้โปรแกรม ซึ่งช่วยให้คุณผสานรวมฐานความรู้นี้เข้ากับแอปพลิเคชันและเวิร์กโฟลว์ของคุณเองได้

API นี้ออกแบบมาเพื่อเป็นแหล่งข้อมูล Canonical สำหรับการเข้าถึงเอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์ของ Google ที่เครื่องอ่านได้

กรณีการใช้งานทั่วไปคือการใช้ DeveloperKnowledge.SearchDocumentChunks ก่อนเพื่อค้นหาชิ้นส่วนเอกสารที่เกี่ยวข้องตามการค้นหา จากนั้นใช้ DeveloperKnowledge.GetDocument หรือ DeveloperKnowledge.BatchGetDocuments กับชื่อทรัพยากรเอกสาร (เช่น DocumentChunk.parent หรือ documents/{uri_without_scheme}) เพื่อดึงเนื้อหาทั้งหมดของผลการค้นหายอดนิยม

เนื้อหาเอกสารทั้งหมดจะอยู่ในรูปแบบมาร์กดาวน์

AnswerQuery

rpc AnswerQuery(AnswerQueryRequest) returns (AnswerQueryResponse)

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

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

ต้องใช้ขอบเขต 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

BatchGetDocuments

rpc BatchGetDocuments(BatchGetDocumentsRequest) returns (BatchGetDocumentsResponse)

ดึงข้อมูลเอกสารหลายรายการ โดยแต่ละรายการมีเนื้อหา Markdown แบบเต็ม

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

ต้องใช้ขอบเขต 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

GetDocument

rpc GetDocument(GetDocumentRequest) returns (Document)

ดึงข้อมูลเอกสารรายการเดียวพร้อมเนื้อหา Markdown แบบเต็ม

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

ต้องใช้ขอบเขต 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

SearchDocumentChunks

rpc SearchDocumentChunks(SearchDocumentChunksRequest) returns (SearchDocumentChunksResponse)

ค้นหาความรู้สำหรับนักพัฒนาซอฟต์แวร์ในเอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์ของ Google แสดงผล DocumentChunk ตามคำค้นหาของผู้ใช้ อาจมีหลายส่วนจาก Document เดียวกัน หากต้องการเรียกข้อมูลเอกสารฉบับเต็ม ให้ใช้ DeveloperKnowledge.GetDocument หรือ DeveloperKnowledge.BatchGetDocuments กับ DocumentChunk.parent ที่แสดงใน SearchDocumentChunksResponse.results

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

ต้องใช้ขอบเขต 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

คำตอบ

คำตอบสำหรับคำถาม

ช่อง
answer_text

string

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

citations[]

AnswerCitation

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

references[]

AnswerReference

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

AnswerCitation

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

ช่อง
start_index

int32

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

end_index

int32

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

sources[]

CitationSource

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

AnswerReference

แสดงการอ้างอิงถึงแหล่งข้อมูล

ช่อง
ฟิลด์ Union content มีเนื้อหาของข้อมูลอ้างอิง content ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
document_reference

DocumentReference

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

CitationSource

แหล่งอ้างอิง

ช่อง
reference_index

int32

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

DocumentReference

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

ช่อง
document_chunk

DocumentChunk

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

AnswerQueryRequest

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

ช่อง
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): การประทับเวลาเมื่อมีการอัปเดตเอกสารอย่างมีนัยสำคัญครั้งล่าสุด การอัปเดตที่มีความหมายคือการอัปเดตที่เปลี่ยนแปลงเนื้อหาหรือข้อมูลเมตาของมาร์กดาวน์ของเอกสาร
  • uri (STRING): URI ของเอกสาร เช่น https://docs.cloud.google.com/bigquery/docs/tables

ช่อง INTEGER รองรับโอเปอเรเตอร์ =, <, <=, > และ >=

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

ฟิลด์ TIMESTAMP รองรับโอเปอเรเตอร์ =, <, <=, > และ >= การประทับเวลาต้องอยู่ในรูปแบบ 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

AnswerQueryResponse

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

ช่อง
answer

Answer

คำตอบสำหรับคำถาม

BatchGetDocumentsRequest

ข้อความคำขอสำหรับ DeveloperKnowledge.BatchGetDocuments

ช่อง
names[]

string

ต้องระบุ ระบุชื่อเอกสารที่จะดึงข้อมูล คุณสามารถดึงข้อมูลเอกสารได้สูงสุด 20 รายการในกลุ่มเดียว ระบบจะแสดงผลเอกสารตามลําดับเดียวกับ names ในคําขอ

รูปแบบ: documents/{uri_without_scheme} ตัวอย่าง: documents/docs.cloud.google.com/storage/docs/creating-buckets

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

view

DocumentView

ไม่บังคับ ระบุ DocumentView ของเอกสาร หากไม่ได้ระบุ DeveloperKnowledge.BatchGetDocuments จะมีค่าเริ่มต้นเป็น DOCUMENT_VIEW_CONTENT

BatchGetDocumentsResponse

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

ช่อง
documents[]

Document

มีเอกสารที่ขอ

เอกสาร

เอกสารแสดงหน้าเอกสารประกอบในคลังความรู้สำหรับนักพัฒนาซอฟต์แวร์ เช่น หน้าที่ https://docs.cloud.google.com/storage/docs/creating-buckets

ช่อง
name

string

ตัวระบุ มีชื่อทรัพยากรของเอกสาร รูปแบบ: documents/{uri_without_scheme} ตัวอย่าง: documents/docs.cloud.google.com/storage/docs/creating-buckets

uri

string

เอาต์พุตเท่านั้น ระบุ URI ของเนื้อหา เช่น https://docs.cloud.google.com/storage/docs/creating-buckets

content

string

เอาต์พุตเท่านั้น มีเนื้อหาทั้งหมดของเอกสารในรูปแบบ Markdown

description

string

เอาต์พุตเท่านั้น ระบุคำอธิบายของเอกสาร

data_source

string

เอาต์พุตเท่านั้น ระบุแหล่งข้อมูลของเอกสาร ตัวอย่างแหล่งข้อมูล: firebase.google.com

title

string

เอาต์พุตเท่านั้น ระบุชื่อเอกสาร

update_time

Timestamp

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

view

DocumentView

เอาต์พุตเท่านั้น ระบุ DocumentView ของเอกสาร

content_length_bytes

int32

เอาต์พุตเท่านั้น ความยาวของช่อง content ในหน่วยไบต์

DocumentChunk

DocumentChunk แสดงถึงเนื้อหาจาก Document ในคลัง DeveloperKnowledge หากต้องการดึงเนื้อหาเอกสารทั้งหมด ให้ส่ง parent ไปยัง DeveloperKnowledge.GetDocument หรือ DeveloperKnowledge.BatchGetDocuments

ช่อง
parent

string

เอาต์พุตเท่านั้น มีชื่อทรัพยากรของเอกสารที่ข้อมูลโค้ดนี้มาจาก รูปแบบ: documents/{uri_without_scheme} ตัวอย่าง: documents/docs.cloud.google.com/storage/docs/creating-buckets

id

string

เอาต์พุตเท่านั้น ระบุรหัสของกลุ่มนี้ภายในเอกสาร รหัสกลุ่มข้อมูลจะไม่ซ้ำกันภายในเอกสาร แต่ไม่ซ้ำกันทั่วโลกในเอกสารต่างๆ รหัสกลุ่มไม่คงที่และอาจเปลี่ยนแปลงเมื่อเวลาผ่านไป

content

string

เอาต์พุตเท่านั้น มีเนื้อหาของส่วนย่อยของเอกสาร

document

Document

เอาต์พุตเท่านั้น แสดงข้อมูลเมตาเกี่ยวกับ Document ที่ข้อมูลโค้ดนี้มาจาก ระบบจะตั้งค่าDocumentViewของข้อความ Document นี้เป็น DOCUMENT_VIEW_BASIC เราได้รวมไว้ที่นี่เพื่อความสะดวก เพื่อให้ไคลเอ็นต์ไม่จำเป็นต้องเรียกใช้ DeveloperKnowledge.GetDocument หรือ DeveloperKnowledge.BatchGetDocuments หากต้องการเฉพาะช่องข้อมูลเมตา ไม่เช่นนั้น ไคลเอ็นต์ควรใช้ DeveloperKnowledge.GetDocument หรือ DeveloperKnowledge.BatchGetDocuments เพื่อดึงเนื้อหาเอกสารแบบเต็ม

relevance_score

double

เอาต์พุตเท่านั้น แสดงคะแนนความเกี่ยวข้องของกลุ่มข้อมูลกับคำค้นหา คะแนนที่สูงขึ้นบ่งชี้ถึงความเกี่ยวข้องของกลุ่มข้อมูลที่สูงขึ้น คะแนนอยู่ในช่วง [0.0, 1.0]

DocumentView

ระบุช่องของ Document ที่รวมอยู่

Enum
DOCUMENT_VIEW_UNSPECIFIED ค่าเริ่มต้น / ค่าที่ไม่ได้ตั้งค่า ดูเมธอด API แต่ละรายการสำหรับค่าเริ่มต้นหากไม่ได้ระบุ DocumentView ไว้
DOCUMENT_VIEW_BASIC

มีเฉพาะช่องข้อมูลเมตาพื้นฐานต่อไปนี้

  • name
  • uri
  • data_source
  • title
  • description
  • update_time
  • view
  • content_length_bytes

นี่คือมุมมองเริ่มต้นสำหรับ DeveloperKnowledge.SearchDocumentChunks

DOCUMENT_VIEW_FULL รวมช่องข้อมูล Document ทั้งหมด
DOCUMENT_VIEW_CONTENT

ซึ่งรวมถึงช่อง DOCUMENT_VIEW_BASIC และช่อง content

นี่คือมุมมองเริ่มต้นสำหรับ DeveloperKnowledge.GetDocument และ DeveloperKnowledge.BatchGetDocuments

GetDocumentRequest

ข้อความคำขอสำหรับ DeveloperKnowledge.GetDocument

ช่อง
name

string

ต้องระบุ ระบุชื่อเอกสารที่จะดึงข้อมูล รูปแบบ: documents/{uri_without_scheme} ตัวอย่าง: documents/docs.cloud.google.com/storage/docs/creating-buckets

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

view

DocumentView

ไม่บังคับ ระบุ DocumentView ของเอกสาร หากไม่ได้ระบุ DeveloperKnowledge.GetDocument จะมีค่าเริ่มต้นเป็น DOCUMENT_VIEW_CONTENT

SearchDocumentChunksRequest

ข้อความคำขอสำหรับ DeveloperKnowledge.SearchDocumentChunks

ช่อง
query

string

ต้องระบุ ระบุสตริงการค้นหาดิบที่ผู้ใช้ระบุ เช่น "วิธีสร้างที่เก็บข้อมูล Cloud Storage" คำค้นหาต้องมีความยาวไม่เกิน 500 อักขระ ค่าที่ยาวกว่า 500 อักขระจะทำให้เกิดข้อผิดพลาด INVALID_ARGUMENT

page_size

int32

ไม่บังคับ ระบุจำนวนผลลัพธ์สูงสุดที่จะแสดง บริการอาจแสดงผลลัพธ์น้อยกว่าค่านี้

หากไม่ระบุ ระบบจะแสดงผลลัพธ์ไม่เกิน 5 รายการ

ค่าสูงสุดคือ 100 โดยค่าที่มากกว่า 100 จะถูกบังคับให้เป็น 100

page_token

string

ไม่บังคับ มีโทเค็นหน้าเว็บที่ได้รับจากการเรียก SearchDocumentChunks ก่อนหน้า ระบุโทเค็นนี้เพื่อเรียกข้อมูลหน้าถัดไป

filter

string

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

แม้ว่า SearchDocumentChunks จะแสดงผลเป็น DocumentChunk แต่ระบบจะใช้ตัวกรองกับช่อง DocumentChunk.document

ช่องที่รองรับการกรองมีดังนี้

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

ช่อง INTEGER รองรับโอเปอเรเตอร์ =, <, <=, > และ >=

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

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

หมายเหตุ: ชื่อช่องต้องอยู่ใน snake_case (เช่น data_source) ค่าทางด้านขวาของนิพจน์ตัวกรองต้องเป็นสตริงสัญพจน์ที่อยู่ในเครื่องหมายคำพูดคู่ (เช่น "docs.cloud.google.com")

คุณสามารถรวมนิพจน์โดยใช้โอเปอเรเตอร์เชิงตรรกะ 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

SearchDocumentChunksResponse

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

ช่อง
results[]

DocumentChunk

มีผลการค้นหาสำหรับคำค้นหาที่ระบุ DocumentChunk แต่ละรายการในรายการนี้มีตัวอย่างเนื้อหาที่เกี่ยวข้องกับคำค้นหา ใช้ช่อง DocumentChunk.parent ของผลลัพธ์แต่ละรายการกับ DeveloperKnowledge.GetDocument หรือ DeveloperKnowledge.BatchGetDocuments เพื่อดึงเนื้อหาเอกสารแบบเต็ม

next_page_token

string

ระบุโทเค็นที่ส่งเป็น page_token เพื่อดึงข้อมูลหน้าถัดไปได้ หากละเว้นช่องนี้ แสดงว่าไม่มีหน้าถัดไป