REST Resource: cachedContents

Resource: CachedContent

Konten yang telah diproses sebelumnya dan dapat digunakan dalam permintaan berikutnya ke GenerativeService.

Konten dalam cache hanya dapat digunakan dengan model yang dibuatnya.

Representasi JSON
{
  "contents": [
    {
      object (Content)
    }
  ],
  "tools": [
    {
      object (Tool)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "usageMetadata": {
    object (UsageMetadata)
  },

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
  "name": string,
  "displayName": string,
  "model": string,
  "systemInstruction": {
    object (Content)
  },
  "toolConfig": {
    object (ToolConfig)
  }
}
Kolom
contents[]

object (Content)

Opsional. Input saja. Tidak dapat diubah. Konten yang akan di-cache.

tools[]

object (Tool)

Opsional. Input saja. Tidak dapat diubah. Daftar Tools yang dapat digunakan model untuk membuat respons berikutnya

createTime

string (Timestamp format)

Hanya output. Waktu pembuatan entri cache.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan maksimal sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Hanya output. Kapan entri cache terakhir diperbarui dalam waktu UTC.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan maksimal sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

usageMetadata

object (UsageMetadata)

Hanya output. Metadata tentang penggunaan konten yang di-cache.

Kolom union expiration. Menentukan kapan resource ini akan habis masa berlakunya. expiration hanya ada berupa salah satu diantara berikut:
expireTime

string (Timestamp format)

Stempel waktu dalam UTC saat resource ini dianggap sudah tidak berlaku. Ini selalu disediakan pada output, terlepas dari apa yang dikirim pada input.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan maksimal sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

ttl

string (Duration format)

Input saja. TTL baru untuk resource ini, hanya input.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

name

string

Opsional. ID. Nama resource yang merujuk ke konten yang di-cache. Format: cachedContents/{id}

displayName

string

Opsional. Tidak dapat diubah. Nama tampilan bermakna yang dibuat pengguna untuk konten yang di-cache. Maksimum 128 karakter Unicode

model

string

Wajib. Tidak dapat diubah. Nama Model yang akan digunakan untuk konten yang di-cache Format: models/{model}

systemInstruction

object (Content)

Opsional. Input saja. Tidak dapat diubah. Petunjuk sistem set developer. Saat ini hanya teks.

toolConfig

object (ToolConfig)

Opsional. Input saja. Tidak dapat diubah. Konfigurasi alat. Konfigurasi ini digunakan bersama untuk semua alat.

Konten

Jenis data terstruktur dasar yang berisi konten multi-bagian pesan.

Content mencakup kolom role yang menentukan produser Content dan kolom parts yang berisi data multi-bagian yang berisi konten pembalikan pesan.

Representasi JSON
{
  "parts": [
    {
      object (Part)
    }
  ],
  "role": string
}
Kolom
parts[]

object (Part)

Memesan Parts yang membentuk satu pesan. Komponen mungkin memiliki jenis MIME yang berbeda.

role

string

Opsional. Produser konten. Harus berupa 'pengguna' atau 'model'.

Berguna untuk menyetel percakapan bolak-balik, atau dapat dibiarkan kosong atau tidak disetel.

Komponen

Jenis data yang berisi media yang merupakan bagian dari pesan Content multi-bagian.

Part terdiri dari data yang memiliki jenis data terkait. Part hanya dapat berisi salah satu jenis yang diterima di Part.data.

Part harus memiliki jenis MIME IANA tetap yang mengidentifikasi jenis dan subjenis media jika kolom inlineData diisi dengan byte mentah.

Representasi JSON
{

  // Union field data can be only one of the following:
  "text": string,
  "inlineData": {
    object (Blob)
  },
  "functionCall": {
    object (FunctionCall)
  },
  "functionResponse": {
    object (FunctionResponse)
  },
  "fileData": {
    object (FileData)
  }
  // End of list of possible types for union field data.
}
Kolom

Kolom union data.

data hanya dapat berupa salah satu dari yang berikut:

text

string

Teks {i>inline<i}.

inlineData

object (Blob)

Byte media inline.

functionCall

object (FunctionCall)

FunctionCall yang diprediksi akan ditampilkan dari model yang berisi string yang mewakili FunctionDeclaration.name dengan argumen dan nilainya.

functionResponse

object (FunctionResponse)

Output hasil dari FunctionCall yang berisi string yang mewakili FunctionDeclaration.name dan objek JSON terstruktur yang berisi output apa pun dari fungsi digunakan sebagai konteks untuk model.

fileData

object (FileData)

Data berbasis URI.

Blob

Byte media mentah.

Teks tidak boleh dikirim sebagai byte mentah, gunakan kolom 'text'.

Representasi JSON
{
  "mimeType": string,
  "data": string
}
Kolom
mimeType

string

Jenis MIME standar IANA dari data sumber. Contoh: - image/png - image/jpeg Jika tersedia jenis MIME yang tidak didukung, error akan ditampilkan. Untuk mengetahui daftar lengkap jenis yang didukung, lihat Format file yang didukung.

data

string (bytes format)

Byte mentah untuk format media.

String berenkode base64.

FunctionCall

FunctionCall yang diprediksi akan ditampilkan dari model yang berisi string yang mewakili FunctionDeclaration.name dengan argumen dan nilainya.

Representasi JSON
{
  "name": string,
  "args": {
    object
  }
}
Kolom
name

string

Wajib. Nama fungsi yang akan dipanggil. Harus berupa a-z, A-Z, 0-9, atau berisi garis bawah dan tanda hubung, dengan panjang maksimum 63.

args

object (Struct format)

Opsional. Parameter dan nilai fungsi dalam format objek JSON.

FunctionResponse

Output hasil dari FunctionCall yang berisi string yang mewakili FunctionDeclaration.name dan objek JSON terstruktur yang berisi output apa pun dari fungsi tersebut digunakan sebagai konteks untuk model. Ini harus berisi hasil FunctionCall yang dibuat berdasarkan prediksi model.

Representasi JSON
{
  "name": string,
  "response": {
    object
  }
}
Kolom
name

string

Wajib. Nama fungsi yang akan dipanggil. Harus berupa a-z, A-Z, 0-9, atau berisi garis bawah dan tanda hubung, dengan panjang maksimum 63.

response

object (Struct format)

Wajib. Respons fungsi dalam format objek JSON.

FileData

Data berbasis URI.

Representasi JSON
{
  "mimeType": string,
  "fileUri": string
}
Kolom
mimeType

string

Opsional. Jenis MIME standar IANA dari data sumber.

fileUri

string

Wajib. URI.

Alat

Detail alat yang dapat digunakan model untuk menghasilkan respons.

Tool adalah potongan kode yang memungkinkan sistem berinteraksi dengan sistem eksternal untuk melakukan suatu tindakan, atau serangkaian tindakan, di luar pengetahuan dan cakupan model.

Representasi JSON
{
  "functionDeclarations": [
    {
      object (FunctionDeclaration)
    }
  ]
}
Kolom
functionDeclarations[]

object (FunctionDeclaration)

Opsional. Daftar FunctionDeclarations yang tersedia untuk model yang dapat digunakan untuk panggilan fungsi.

Model atau sistem tidak menjalankan fungsi. Sebagai gantinya, fungsi yang ditentukan dapat ditampilkan sebagai [FunctionCall][content.part.function_call] dengan argumen ke sisi klien untuk dieksekusi. Model dapat memutuskan untuk memanggil subset fungsi ini dengan mengisi [FunctionCall][content.part.function_call] dalam respons. Giliran percakapan berikutnya mungkin berisi [FunctionResponse][content.part.function_response] dengan konteks pembuatan "fungsi" [content.role] untuk giliran model berikutnya.

FunctionDeclaration

Representasi terstruktur dari deklarasi fungsi seperti yang ditentukan oleh spesifikasi OpenAPI 3.03. Nama fungsi dan parameter disertakan dalam deklarasi ini. FunctionDeclaration ini adalah representasi blok kode yang dapat digunakan sebagai Tool oleh model dan dieksekusi oleh klien.

Representasi JSON
{
  "name": string,
  "description": string,
  "parameters": {
    object (Schema)
  }
}
Kolom
name

string

Wajib. Nama fungsi. Harus berupa a-z, A-Z, 0-9, atau berisi garis bawah dan tanda hubung, dengan panjang maksimum 63.

description

string

Wajib. Deskripsi singkat fungsi.

parameters

object (Schema)

Opsional. Menjelaskan parameter untuk fungsi ini. Mencerminkan Kunci string Objek Parameter Open API 3.03: nama parameter. Nama parameter peka huruf besar/kecil. Nilai Skema: Skema yang menentukan jenis yang digunakan untuk parameter.

Skema

Objek Schema memungkinkan definisi jenis data input dan output. Jenis ini dapat berupa objek, tetapi juga primitif dan array. Mewakili subset yang dipilih dari objek skema OpenAPI 3.0.

Representasi JSON
{
  "type": enum (Type),
  "format": string,
  "description": string,
  "nullable": boolean,
  "enum": [
    string
  ],
  "properties": {
    string: {
      object (Schema)
    },
    ...
  },
  "required": [
    string
  ],
  "items": {
    object (Schema)
  }
}
Kolom
type

enum (Type)

Wajib. Tipe data.

format

string

Opsional. Format data. Ini hanya digunakan untuk jenis data primitif. Format yang didukung: untuk jenis NOMOR: float, double untuk jenis INTEGER: int32, int64

description

string

Opsional. Deskripsi singkat parameter. Informasi ini dapat berisi contoh penggunaan. Deskripsi parameter dapat diformat sebagai Markdown.

nullable

boolean

Opsional. Menunjukkan apakah nilai mungkin null.

enum[]

string

Opsional. Nilai yang mungkin dari elemen Type.STRING dengan format enum. Misalnya, kita dapat menentukan Arah Enum sebagai : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}

properties

map (key: string, value: object (Schema))

Opsional. Properti Type.OBJECT.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Opsional. Properti yang diperlukan dari Type.OBJECT.

items

object (Schema)

Opsional. Skema elemen Type.ARRAY.

Jenis

Jenis berisi daftar jenis data OpenAPI sebagaimana ditentukan oleh https://spec.openapis.org/oas/v3.0.3#data-types

Enum
TYPE_UNSPECIFIED Tidak ditentukan, tidak boleh digunakan.
STRING Jenis string.
NUMBER Jenis angka.
INTEGER Jenis bilangan bulat.
BOOLEAN Jenis Boolean.
ARRAY Jenis array.
OBJECT Jenis objek.

ToolConfig

Konfigurasi Alat yang berisi parameter untuk menentukan penggunaan Tool dalam permintaan.

Representasi JSON
{
  "functionCallingConfig": {
    object (FunctionCallingConfig)
  }
}
Kolom
functionCallingConfig

object (FunctionCallingConfig)

Opsional. Konfigurasi panggilan fungsi.

FunctionCallingConfig

Konfigurasi untuk menentukan perilaku panggilan fungsi.

Representasi JSON
{
  "mode": enum (Mode),
  "allowedFunctionNames": [
    string
  ]
}
Kolom
mode

enum (Mode)

Opsional. Menentukan mode tempat panggilan fungsi harus dijalankan. Jika tidak ditentukan, nilai default akan ditetapkan ke AUTO.

allowedFunctionNames[]

string

Opsional. Kumpulan nama fungsi yang, jika disediakan, akan membatasi fungsi yang akan dipanggil model.

Kunci ini hanya boleh disetel jika Mode adalah APA PUN. Nama fungsi harus cocok dengan [FunctionDeclaration.name]. Jika mode ditetapkan ke ANY, model akan memprediksi panggilan fungsi dari sekumpulan nama fungsi yang disediakan.

Mode

Menentukan perilaku eksekusi untuk panggilan fungsi dengan menentukan mode eksekusi.

Enum
MODE_UNSPECIFIED Mode panggilan fungsi tidak ditentukan. Nilai ini tidak boleh digunakan.
AUTO Perilaku model default, model memutuskan untuk memprediksi panggilan fungsi atau respons natural language.
ANY Model dibatasi untuk selalu memprediksi panggilan fungsi saja. Jika "AllowedFunctionNames" disetel, panggilan fungsi yang diprediksi akan dibatasi ke salah satu dari "grantFunctionNames", jika tidak, panggilan fungsi yang diprediksi akan berupa salah satu dari "functionDeclarations" yang disediakan.
NONE Model tidak akan memprediksi panggilan fungsi apa pun. Perilaku model sama seperti saat tidak meneruskan deklarasi fungsi apa pun.

UsageMetadata

Metadata tentang penggunaan konten yang di-cache.

Representasi JSON
{
  "totalTokenCount": integer
}
Kolom
totalTokenCount

integer

Jumlah total token yang digunakan oleh konten yang di-cache.

Metode

create

Membuat resource CachedContent.

delete

Menghapus resource CachedContent.

get

Membaca resource CachedContent.

list

Mencantumkan CachedContents.

patch

Memperbarui resource CachedContent (hanya tanggal habis masa berlaku yang dapat diperbarui).