Documents

เมธอด: corpora.documents.create

สร้าง Document ที่ว่างเปล่า

ปลายทาง

post https://generativelanguage.googleapis.com/v1beta/{parent=corpora/*}/documents

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

parent string

ต้องระบุ ชื่อของ Corpus ที่จะสร้าง Document นี้ ตัวอย่าง: corpora/my-corpus-123 มีรูปแบบเป็น corpora/{corpora}

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

เนื้อความของคำขอมีอินสแตนซ์ของ Document

ฟิลด์
name string

เปลี่ยนแปลงไม่ได้ ตัวระบุ Documentชื่อทรัพยากร รหัส (ชื่อไม่รวมคำนำหน้า "corpora/*/documents/") มีอักขระได้สูงสุด 40 ตัว ซึ่งเป็นตัวอักษรพิมพ์เล็กและตัวเลขคละกันหรือขีดกลาง (-) โดยรหัสต้องไม่ขึ้นต้นหรือลงท้ายด้วยขีดกลาง หากไม่ได้ระบุชื่อเมื่อสร้าง ระบบจะสร้างชื่อที่ไม่ซ้ำกันจาก displayName พร้อมด้วยคำต่อท้ายแบบสุ่ม 12 อักขระ ตัวอย่าง: corpora/{corpus_id}/documents/my-awesome-doc-123a456b789c

displayName string

ไม่บังคับ ชื่อที่แสดงที่มนุษย์อ่านได้สำหรับ Document ชื่อที่แสดงต้องมีความยาวไม่เกิน 512 อักขระ รวมถึงช่องว่าง ตัวอย่าง: "เอกสารประกอบของ Semantic Retriever"

customMetadata[] object (CustomMetadata)

ไม่บังคับ ข้อมูลเมตาที่กำหนดเองซึ่งได้จากผู้ใช้จะจัดเก็บเป็นคู่คีย์-ค่าที่ใช้สำหรับการค้นหา Document มี CustomMetadata ได้สูงสุด 20 รายการ

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

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ Document ที่สร้างขึ้นใหม่

เมธอด: corpora.documents.query

ทำการค้นหาเชิงความหมายใน Document

ปลายทาง

post https://generativelanguage.googleapis.com/v1beta/{name=corpora/*/documents/*}:query

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

name string

ต้องระบุ ชื่อของ Document ที่จะค้นหา ตัวอย่าง: corpora/my-corpus-123/documents/the-doc-abc มีรูปแบบเป็น corpora/{corpora}/documents/{document}

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

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

ฟิลด์
query string

ต้องระบุ สตริงการค้นหาเพื่อทำการค้นหาเชิงความหมาย

resultsCount integer

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

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

metadataFilters[] object (MetadataFilter)

ไม่บังคับ กรองหาChunkข้อมูลเมตา ออบเจ็กต์ MetadataFilter แต่ละรายการควรสอดคล้องกับคีย์ที่ไม่ซ้ำกัน ระบบจะรวมออบเจ็กต์ MetadataFilter หลายรายการด้วยตรรกะ "AND"

หมายเหตุ: คำขอนี้ไม่รองรับการกรองระดับ Document เนื่องจากมีการระบุชื่อ Document ไว้แล้ว

ตัวอย่างคำค้นหา: (year >= 2020 OR year < 2010) AND (genre = drama OR genre = action)

MetadataFilter รายการออบเจ็กต์: metadataFilters = [ {key = "chunk.custom_metadata.year" conditions = [{int_value = 2020, operation = GREATER_EQUAL}, {int_value = 2010, operation = LESS}}, {key = "chunk.custom_metadata.genre" conditions = [{stringValue = "drama", operation = EQUAL}, {stringValue = "action", operation = EQUAL}}]

ตัวอย่างคําค้นหาช่วงค่าตัวเลข: (year > 2015 AND year <= 2020)

MetadataFilter รายการออบเจ็กต์: metadataFilters = [ {key = "chunk.custom_metadata.year" conditions = [{int_value = 2015, operation = GREATER}]}, {key = "chunk.custom_metadata.year" conditions = [{int_value = 2020, operation = LESS_EQUAL}]}]

หมายเหตุ: ระบบรองรับ "AND" สำหรับคีย์เดียวกันเฉพาะค่าตัวเลขเท่านั้น ค่าสตริงรองรับเฉพาะ "OR" สำหรับคีย์เดียวกัน

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

คำตอบจาก documents.query ที่มีรายการก้อนข้อมูลที่เกี่ยวข้อง

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

ฟิลด์
relevantChunks[] object (RelevantChunk)

ก้อนข้อมูลที่เกี่ยวข้องซึ่งระบบแสดงผล

การแสดง JSON
{
  "relevantChunks": [
    {
      object (RelevantChunk)
    }
  ]
}

เมธอด: corpora.documents.list

แสดง Document ทั้งหมดใน Corpus

ปลายทาง

get https://generativelanguage.googleapis.com/v1beta/{parent=corpora/*}/documents

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

parent string

ต้องระบุ ชื่อของ Corpus ที่มี Document ตัวอย่าง: corpora/my-corpus-123 มีรูปแบบเป็น corpora/{corpora}

พารามิเตอร์การค้นหา

pageSize integer

ไม่บังคับ จำนวนสูงสุดของ Document ที่จะแสดง (ต่อหน้า) บริการอาจแสดง Document น้อยลง

หากไม่ระบุ ระบบจะแสดงผล Document อย่างน้อย 10 รายการ ขนาดสูงสุดคือ 20 Document ต่อหน้า

pageToken string

ไม่บังคับ โทเค็นหน้าเว็บที่ได้รับจากการเรียกใช้ documents.list ก่อนหน้า

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

เมื่อแบ่งหน้า พารามิเตอร์อื่นๆ ทั้งหมดที่ระบุให้กับ documents.list ต้องตรงกับการเรียกที่ระบุโทเค็นหน้าเว็บ

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

เนื้อหาของคำขอต้องว่างเปล่า

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

การตอบกลับจาก documents.list ที่มีรายการ Document แบบแบ่งหน้า Document จะจัดเรียงตาม document.create_time จากน้อยไปมาก

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

ฟิลด์
documents[] object (Document)

Document ที่ส่งคืน

nextPageToken string

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

การแสดง JSON
{
  "documents": [
    {
      object (Document)
    }
  ],
  "nextPageToken": string
}

เมธอด: corpora.documents.get

รับข้อมูลเกี่ยวกับ Document ที่เฉพาะเจาะจง

ปลายทาง

get https://generativelanguage.googleapis.com/v1beta/{name=corpora/*/documents/*}

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

name string

ต้องระบุ ชื่อของ Document ที่จะดึงข้อมูล ตัวอย่าง: corpora/my-corpus-123/documents/the-doc-abc มีรูปแบบเป็น corpora/{corpora}/documents/{document}

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

เนื้อหาของคำขอต้องว่างเปล่า

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

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ Document

เมธอด: corpora.documents.patch

อัปเดต Document

ปลายทาง

patch https://generativelanguage.googleapis.com/v1beta/{document.name=corpora/*/documents/*}

PATCH https://generativelanguage.googleapis.com/v1beta/{document.name=corpora/*/documents/*}

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

document.name string

เปลี่ยนแปลงไม่ได้ ตัวระบุ Documentชื่อทรัพยากร รหัส (ชื่อไม่รวมคำนำหน้า "corpora/*/documents/") มีอักขระได้สูงสุด 40 ตัว ซึ่งเป็นตัวอักษรพิมพ์เล็กและตัวเลขคละกันหรือขีดกลาง (-) โดยรหัสต้องไม่ขึ้นต้นหรือลงท้ายด้วยขีดกลาง หากไม่ได้ระบุชื่อเมื่อสร้าง ระบบจะสร้างชื่อที่ไม่ซ้ำกันจาก displayName พร้อมด้วยคำต่อท้ายแบบสุ่ม 12 อักขระ ตัวอย่าง: corpora/{corpus_id}/documents/my-awesome-doc-123a456b789c มีรูปแบบเป็น corpora/{corpora}/documents/{document}

พารามิเตอร์การค้นหา

updateMask string (FieldMask format)

ต้องระบุ รายการช่องที่จะอัปเดต ปัจจุบันฟีเจอร์นี้รองรับเฉพาะการอัปเดต displayName และ customMetadata

ซึ่งเป็นรายการชื่อฟิลด์แบบสมบูรณ์ในตัวเองที่คั่นด้วยคอมมา ตัวอย่าง: "user.displayName,photo"

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

เนื้อความของคำขอมีอินสแตนซ์ของ Document

ฟิลด์
displayName string

ไม่บังคับ ชื่อที่แสดงที่มนุษย์อ่านได้สำหรับ Document ชื่อที่แสดงต้องมีความยาวไม่เกิน 512 อักขระ รวมถึงช่องว่าง ตัวอย่าง: "เอกสารประกอบของ Semantic Retriever"

customMetadata[] object (CustomMetadata)

ไม่บังคับ ข้อมูลเมตาที่กำหนดเองซึ่งได้จากผู้ใช้จะจัดเก็บเป็นคู่คีย์-ค่าที่ใช้สำหรับการค้นหา Document มี CustomMetadata ได้สูงสุด 20 รายการ

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

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ Document

เมธอด: corpora.documents.delete

ลบ Document

ปลายทาง

ลบ https://generativelanguage.googleapis.com/v1beta/{name=corpora/*/documents/*}

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

name string

ต้องระบุ ชื่อทรัพยากรของ Document ที่จะลบ ตัวอย่าง: corpora/my-corpus-123/documents/the-doc-abc มีรูปแบบเป็น corpora/{corpora}/documents/{document}

พารามิเตอร์การค้นหา

force boolean

ไม่บังคับ หากตั้งค่าเป็น "จริง" ระบบจะลบ Chunk และออบเจ็กต์ที่เกี่ยวข้องกับ Document นี้ด้วย

หากเป็นเท็จ (ค่าเริ่มต้น) ระบบจะแสดงข้อผิดพลาด FAILED_PRECONDITION หาก Document มี Chunk

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

เนื้อหาของคำขอต้องว่างเปล่า

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

หากทำสำเร็จ เนื้อหาการตอบกลับจะเป็นออบเจ็กต์ JSON ที่ว่างเปล่า

ทรัพยากร REST: corpora.documents

แหล่งข้อมูล: เอกสาร

Document คือคอลเล็กชันของ Chunk Corpus มี Document ได้สูงสุด 10,000 รายการ

ฟิลด์
name string

เปลี่ยนแปลงไม่ได้ ตัวระบุ Documentชื่อทรัพยากร รหัส (ชื่อไม่รวมคำนำหน้า "corpora/*/documents/") มีอักขระได้สูงสุด 40 ตัว ซึ่งเป็นตัวอักษรพิมพ์เล็กและตัวเลขคละกันหรือขีดกลาง (-) โดยรหัสต้องไม่ขึ้นต้นหรือลงท้ายด้วยขีดกลาง หากไม่ได้ระบุชื่อเมื่อสร้าง ระบบจะสร้างชื่อที่ไม่ซ้ำกันจาก displayName พร้อมด้วยคำต่อท้ายแบบสุ่ม 12 อักขระ ตัวอย่าง: corpora/{corpus_id}/documents/my-awesome-doc-123a456b789c

displayName string

ไม่บังคับ ชื่อที่แสดงที่มนุษย์อ่านได้สำหรับ Document ชื่อที่แสดงต้องมีความยาวไม่เกิน 512 อักขระ รวมถึงช่องว่าง ตัวอย่าง: "เอกสารประกอบของ Semantic Retriever"

customMetadata[] object (CustomMetadata)

ไม่บังคับ ข้อมูลเมตาที่กำหนดเองซึ่งได้จากผู้ใช้จะจัดเก็บเป็นคู่คีย์-ค่าที่ใช้สำหรับการค้นหา Document มี CustomMetadata ได้สูงสุด 20 รายการ

updateTime string (Timestamp format)

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

ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็น Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย ตัวอย่าง: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" หรือ "2014-10-02T15:01:23+05:30"

createTime string (Timestamp format)

เอาต์พุตเท่านั้น การประทับเวลาของเวลาที่สร้าง Document

ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็น Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย ตัวอย่าง: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" หรือ "2014-10-02T15:01:23+05:30"

การแสดง JSON
{
  "name": string,
  "displayName": string,
  "customMetadata": [
    {
      object (CustomMetadata)
    }
  ],
  "updateTime": string,
  "createTime": string
}

CustomMetadata

ข้อมูลเมตาที่ได้จากผู้ใช้ซึ่งจัดเก็บเป็นคู่คีย์-ค่า

ฟิลด์
key string

ต้องระบุ คีย์ของข้อมูลเมตาที่จะจัดเก็บ

value Union type
value ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
stringValue string

ค่าสตริงของข้อมูลเมตาที่จะจัดเก็บ

stringListValue object (StringList)

ค่า StringList ของข้อมูลเมตาที่จะจัดเก็บ

numericValue number

ค่าตัวเลขของข้อมูลเมตาที่จะจัดเก็บ

การแสดง JSON
{
  "key": string,

  // value
  "stringValue": string,
  "stringListValue": {
    object (StringList)
  },
  "numericValue": number
  // Union type
}

StringList

ค่าสตริงที่ผู้ใช้ระบุซึ่งกำหนดให้กับคีย์ข้อมูลเมตาเดียว

ฟิลด์
values[] string

ค่าสตริงของข้อมูลเมตาที่จะจัดเก็บ

การแสดง JSON
{
  "values": [
    string
  ]
}