Corpora

Metodo: corpora.create

Crea un Corpus vuoto.

Endpoint

post https://generativelanguage.googleapis.com/v1beta/corpora

Corpo della richiesta

Il corpo della richiesta contiene un'istanza di Corpus.

Campi
name string

Immutabile. Identificatore. Il nome della risorsa Corpus. L'ID (nome escluso il prefisso "corpora/") può contenere fino a 40 caratteri alfanumerici minuscoli o trattini (-). L'ID non può iniziare o terminare con un trattino. Se il nome è vuoto al momento della creazione, verrà derivato un nome univoco da displayName insieme a un suffisso casuale di 12 caratteri. Esempio: corpora/my-awesome-corpora-123a456b789c

displayName string

(Facoltativo) Il nome visualizzato leggibile per Corpus. Il nome visualizzato non deve contenere più di 512 caratteri, inclusi gli spazi. Esempio: "Documenti su Semantic Retriever"

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza appena creata di Corpus.

Metodo: corpora.query

Esegue la ricerca semantica su un Corpus.

Endpoint

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

Parametri del percorso

name string

Obbligatorio. Il nome di Corpus su cui eseguire la query. Esempio: corpora/my-corpus-123 assume la forma corpora/{corpora}.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Campi
query string

Obbligatorio. Stringa di query per eseguire la ricerca semantica.

metadataFilters[] object (MetadataFilter)

(Facoltativo) Filtra in base ai metadati Chunk e Document. Ogni oggetto MetadataFilter deve corrispondere a una chiave univoca. Più oggetti MetadataFilter sono uniti da "AND" logici.

Query di esempio a livello di documento: (year >= 2020 OR year < 2010) AND (genre = drama OR genre = action)

MetadataFilter elenco di oggetti: metadataFilters = [ {key = "document.custom_metadata.year" conditions = [{int_value = 2020, operation = GREATER_EQUAL}, {int_value = 2010, operation = LESS}]}, {key = "document.custom_metadata.year" conditions = [{int_value = 2020, operation = GREATER_EQUAL}, {int_value = 2010, operation = LESS}]}, {key = "document.custom_metadata.genre" conditions = [{stringValue = "drama", operation = EQUAL}, {stringValue = "action", operation = EQUAL}]}]

Query di esempio a livello di blocco per un intervallo numerico di valori: (year > 2015 AND year <= 2020)

MetadataFilter Elenco di oggetti: metadataFilters = [ {key = "chunk.custom_metadata.year" conditions = [{int_value = 2015, operation = GREATER}]}, {key = "chunk.custom_metadata.year" conditions = [{int_value = 2020, operation = LESS_EQUAL}]}]

Nota: gli "AND" per la stessa chiave sono supportati solo per i valori numerici. I valori stringa supportano solo "OR" per la stessa chiave.

resultsCount integer

(Facoltativo) Il numero massimo di Chunk da restituire. Il servizio potrebbe restituire meno Chunk.

Se non specificato, verranno restituiti al massimo 10 Chunk. Il numero massimo di risultati specificato è 100.

Corpo della risposta

Risposta di corpora.query contenente un elenco di chunk pertinenti.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Campi
relevantChunks[] object (RelevantChunk)

I blocchi pertinenti.

Rappresentazione JSON
{
  "relevantChunks": [
    {
      object (RelevantChunk)
    }
  ]
}

Metodo: corpora.list

Elenca tutti i Corpora di proprietà dell'utente.

Endpoint

get https://generativelanguage.googleapis.com/v1beta/corpora

Parametri di query

pageSize integer

(Facoltativo) Il numero massimo di Corpora da restituire (per pagina). Il servizio potrebbe restituire meno Corpora.

Se non specificato, verranno restituiti al massimo 10 Corpora. Il limite massimo di dimensioni è di 20 Corpora per pagina.

pageToken string

(Facoltativo) Un token di pagina, ricevuto da una precedente chiamata corpora.list.

Fornisci il valore nextPageToken restituito nella risposta come argomento della richiesta successiva per recuperare la pagina successiva.

Durante la paginazione, tutti gli altri parametri forniti a corpora.list devono corrispondere alla chiamata che ha fornito il token di pagina.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

Risposta da corpora.list contenente un elenco paginato di Corpora. I risultati sono ordinati in ordine crescente in base a corpus.create_time.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Campi
corpora[] object (Corpus)

I corpora restituiti.

nextPageToken string

Un token, che può essere inviato come pageToken per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

Rappresentazione JSON
{
  "corpora": [
    {
      object (Corpus)
    }
  ],
  "nextPageToken": string
}

Metodo: corpora.get

Recupera informazioni su un Corpus specifico.

Endpoint

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

Parametri del percorso

name string

Obbligatorio. Il nome del Corpus. Esempio: corpora/my-corpus-123 assume la forma corpora/{corpora}.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Corpus.

Metodo: corpora.patch

Aggiorna un Corpus.

Endpoint

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

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

Parametri del percorso

corpus.name string

Immutabile. Identificatore. Il nome della risorsa Corpus. L'ID (nome escluso il prefisso "corpora/") può contenere fino a 40 caratteri alfanumerici minuscoli o trattini (-). L'ID non può iniziare o terminare con un trattino. Se il nome è vuoto al momento della creazione, verrà derivato un nome univoco da displayName insieme a un suffisso casuale di 12 caratteri. Esempio: corpora/my-awesome-corpora-123a456b789c assume la forma corpora/{corpora}.

Parametri di query

updateMask string (FieldMask format)

Obbligatorio. L'elenco dei campi da aggiornare. Al momento, questa funzionalità supporta solo l'aggiornamento di displayName.

Si tratta di un elenco separato da virgole di nomi completi dei campi. Esempio: "user.displayName,photo".

Corpo della richiesta

Il corpo della richiesta contiene un'istanza di Corpus.

Campi
displayName string

(Facoltativo) Il nome visualizzato leggibile per Corpus. Il nome visualizzato non deve contenere più di 512 caratteri, inclusi gli spazi. Esempio: "Documenti su Semantic Retriever"

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Corpus.

Metodo: corpora.delete

Elimina un Corpus.

Endpoint

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

Parametri del percorso

name string

Obbligatorio. Il nome risorsa di Corpus. Esempio: corpora/my-corpus-123 assume la forma corpora/{corpora}.

Parametri di query

force boolean

(Facoltativo) Se è impostata su true, verranno eliminati anche tutti gli Document e gli oggetti correlati a questo Corpus.

Se è false (impostazione predefinita), verrà restituito un errore FAILED_PRECONDITION se Corpus contiene Document.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta è un oggetto JSON vuoto.

Risorsa REST: corpora.permissions

Risorsa: autorizzazione

La risorsa di autorizzazione concede all'utente, al gruppo o al resto del mondo l'accesso alla risorsa API PaLM (ad es. un modello ottimizzato, un corpus).

Un ruolo è un insieme di operazioni consentite che permette agli utenti di eseguire azioni specifiche sulle risorse dell'API PaLM. Per renderli disponibili a utenti, gruppi o service account, assegna i ruoli. Quando assegni un ruolo, concedi le autorizzazioni incluse nel ruolo.

Esistono tre ruoli concentrici. Ogni ruolo è un superset delle operazioni consentite del ruolo precedente:

  • il lettore può utilizzare la risorsa (ad es. modello ottimizzato, corpus) per l'inferenza
  • L'autore dispone delle autorizzazioni del lettore e può anche modificare e condividere
  • Il proprietario dispone delle autorizzazioni di scrittura e può anche eliminare
Campi
name string

Solo output. Identificatore. Il nome dell'autorizzazione. Al momento della creazione verrà generato un nome univoco. Esempi: tunedModels/{tunedModel}/permissions/{permission} corpora/{corpus}/permissions/{permission} Solo output.

granteeType enum (GranteeType)

(Facoltativo) Immutabile. Il tipo di beneficiario.

emailAddress string

(Facoltativo) Immutabile. L'indirizzo email dell'utente o del gruppo a cui fa riferimento questa autorizzazione. Il campo non è impostato quando il tipo di beneficiario dell'autorizzazione è EVERYONE.

role enum (Role)

Obbligatorio. Il ruolo concesso da questa autorizzazione.

Rappresentazione JSON
{
  "name": string,
  "granteeType": enum (GranteeType),
  "emailAddress": string,
  "role": enum (Role)
}

GranteeType

Definisce i tipi di beneficiario di questa autorizzazione.

Enum
GRANTEE_TYPE_UNSPECIFIED Il valore predefinito. Questo valore non viene utilizzato.
USER Rappresenta un utente. Se impostato, devi fornire l'indirizzo email dell'utente.
GROUP Rappresenta un gruppo. Se impostato, devi fornire emailAddress per il gruppo.
EVERYONE Rappresenta l'accesso per tutti. Non sono richieste informazioni aggiuntive.

Ruolo

Definisce il ruolo concesso da questa autorizzazione.

Enum
ROLE_UNSPECIFIED Il valore predefinito. Questo valore non viene utilizzato.
OWNER Il proprietario può utilizzare, aggiornare, condividere ed eliminare la risorsa.
WRITER L'autore può utilizzare, aggiornare e condividere la risorsa.
READER Il lettore può utilizzare la risorsa.

MetadataFilter

Filtro fornito dall'utente per limitare il recupero in base ai valori dei metadati a livello di Chunk o Document. Esempio (genere = drammatico OR genere = azione): key = "document.custom_metadata.genre" conditions = [{stringValue = "drama", operation = EQUAL}, {stringValue = "action", operation = EQUAL}]

Campi
key string

Obbligatorio. La chiave dei metadati su cui filtrare.

conditions[] object (Condition)

Obbligatorio. I Condition per la chiave specificata che attiveranno questo filtro. Più Condition vengono uniti da operatori OR logici.

Rappresentazione JSON
{
  "key": string,
  "conditions": [
    {
      object (Condition)
    }
  ]
}

Condizione

Condizione di filtro applicabile a una singola chiave.

Campi
operation enum (Operator)

Obbligatorio. Operatore applicato alla coppia chiave-valore specificata per attivare la condizione.

value Union type
Il tipo di valore deve essere coerente con il tipo di valore definito nel campo per la chiave corrispondente. Se i tipi di valori non sono coerenti, il risultato sarà un insieme vuoto. Quando CustomMetadata ha un tipo di valore StringList, la condizione di filtro deve utilizzare string_value in combinazione con un'operazione INCLUDES/EXCLUDES, altrimenti il risultato sarà anche un insieme vuoto. value può essere solo uno dei seguenti:
stringValue string

Il valore stringa in base al quale filtrare i metadati.

numericValue number

Il valore numerico in base al quale filtrare i metadati.

Rappresentazione JSON
{
  "operation": enum (Operator),

  // value
  "stringValue": string,
  "numericValue": number
  // Union type
}

Operatore

Definisce gli operatori validi che possono essere applicati a una coppia chiave-valore.

Enum
OPERATOR_UNSPECIFIED Il valore predefinito. Questo valore non viene utilizzato.
LESS Supportato da numerico.
LESS_EQUAL Supportato da numerico.
EQUAL Supportato da numeri e stringhe.
GREATER_EQUAL Supportato da numerico.
GREATER Supportato da numerico.
NOT_EQUAL Supportato da numeri e stringhe.
INCLUDES Supportato dalla stringa solo quando il tipo di valore CustomMetadata per la chiave specificata ha un valore stringListValue.
EXCLUDES Supportato dalla stringa solo quando il tipo di valore CustomMetadata per la chiave specificata ha un valore stringListValue.

RelevantChunk

Le informazioni per un blocco pertinente a una query.

Campi
chunkRelevanceScore number

pertinenza di Chunk rispetto alla query.

chunk object (Chunk)

Chunk associato alla query.

document object (Document)

Document associato al segmento.

Rappresentazione JSON
{
  "chunkRelevanceScore": number,
  "chunk": {
    object (Chunk)
  },
  "document": {
    object (Document)
  }
}

Risorsa REST: corpora

Risorsa: Corpus

Un Corpus è una raccolta di Document. Un progetto può creare fino a 5 corpus.

Campi
name string

Immutabile. Identificatore. Il nome della risorsa Corpus. L'ID (nome escluso il prefisso "corpora/") può contenere fino a 40 caratteri alfanumerici minuscoli o trattini (-). L'ID non può iniziare o terminare con un trattino. Se il nome è vuoto al momento della creazione, verrà derivato un nome univoco da displayName insieme a un suffisso casuale di 12 caratteri. Esempio: corpora/my-awesome-corpora-123a456b789c

displayName string

(Facoltativo) Il nome visualizzato leggibile per Corpus. Il nome visualizzato non deve contenere più di 512 caratteri, inclusi gli spazi. Esempio: "Documenti su Semantic Retriever"

createTime string (Timestamp format)

Solo output. Il timestamp della creazione di Corpus.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime string (Timestamp format)

Solo output. Il timestamp dell'ultimo aggiornamento di Corpus.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Rappresentazione JSON
{
  "name": string,
  "displayName": string,
  "createTime": string,
  "updateTime": string
}