File Search Stores

Die File Search API bietet einen gehosteten Question Answering-Dienst zum Erstellen von RAG-Systemen (Retrieval Augmented Generation) mit der Infrastruktur von Google.

Methode: media.uploadToFileSearchStore

Lädt Daten in einen FileSearchStore hoch, verarbeitet sie vor und teilt sie in Chunks auf, bevor sie in einem FileSearchStore-Dokument gespeichert werden.

Endpunkt

  • Upload-URI für Media-Uploadanfragen:
post > https://generativelanguage.googleapis.com/upload/v1beta/{fileSearchStoreName=fileSearchStores/*}:uploadToFileSearchStore >
  • Metadaten-URI für reine Metadatenanfragen:
post https://generativelanguage.googleapis.com/v1beta/{fileSearchStoreName=fileSearchStores/*}:uploadToFileSearchStore >
>

Pfadparameter

fileSearchStoreName string

Erforderlich. Nicht veränderbar. Der Name des FileSearchStore, in den die Datei hochgeladen werden soll. Beispiel: fileSearchStores/my-file-search-store-123 Sie nimmt die Form fileSearchStores/{filesearchstore} an.

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

Felder
displayName string

Optional. Der Anzeigename des erstellten Dokuments.

customMetadata[] object (CustomMetadata)

Benutzerdefinierte Metadaten, die den Daten zugeordnet werden sollen.

chunkingConfig object (ChunkingConfig)

Optional. Konfiguration, die dem Dienst mitteilt, wie die Daten in Chunks aufgeteilt werden sollen. Wenn nicht angegeben, verwendet der Dienst Standardparameter.

mimeType string

Optional. MIME-Typ der Daten. Wenn sie nicht angegeben wird, wird sie aus den hochgeladenen Inhalten abgeleitet.

Antworttext

Dies ist eine Kopie von google.longrunning.Operation. Wir müssen es kopieren, da wir für die Interaktion mit Scotty ein Scotty-spezifisches Feld hinzufügen müssen, das nicht im Operation-Proto auf oberster Ebene hinzugefügt werden kann.

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

Felder
name string

Der vom Server zugewiesene Name, der nur innerhalb des Dienstes eindeutig ist, der ihn ursprünglich zurückgibt. Wenn Sie die Standard-HTTP-Zuordnung verwenden, sollte name ein Ressourcenname sein, der auf operations/{unique_id} endet.

metadata object

Dienstspezifische Metadaten, die mit dem Vorgang verknüpft sind. Typischerweise enthalten sie Informationen zum Verlauf und gemeinsame Metadaten wie den Erstellungszeitpunkt. Solche Metadaten werden nicht von allen Diensten bereitgestellt. Jede Methode, die einen Vorgang mit langer Ausführungszeit zurückgibt, muss gegebenenfalls den Metadatentyp dokumentieren.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

done boolean

Ist der Wert false, bedeutet das, dass der Vorgang noch läuft. Ist der Wert hingegen true, ist der Vorgang abgeschlossen und entweder error oder response ist verfügbar.

result Union type
Das Ergebnis des Vorgangs kann entweder ein error oder eine gültige response sein. Wenn done = false ist, wird weder error noch response festgelegt. Wenn done = true ist, kann genau ein error oder eine response festgelegt werden. Einige Dienste stellen das Ergebnis möglicherweise nicht bereit. Für result ist nur einer der folgenden Werte zulässig:
error object (Status)

Das Fehlerergebnis des Vorgangs im Fall eines Fehlers oder Abbruchs.

response object

Die normale, erfolgreiche Antwort des Vorgangs. Wenn die ursprüngliche Methode im Erfolgsfall keine Daten zurückgibt, wie bei Delete, lautet die Antwort google.protobuf.Empty. Ist die ursprüngliche Methode standardmäßig Get/Create/Update, sollte die Antwort die Ressource sein. Bei anderen Methoden sollte die Antwort vom Typ XxxResponse sein, wobei Xxx der Name der ursprünglichen Methode ist. Wenn zum Beispiel der Name der ursprünglichen Methode TakeSnapshot() ist, ist der gefolgerte Antworttyp TakeSnapshotResponse.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }

JSON-Darstellung
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // result
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // Union type
}

Methode: fileSearchStores.create

Erstellt ein leeres FileSearchStore.

Endpunkt

post https://generativelanguage.googleapis.com/v1beta/fileSearchStores > >
>
>

Anfragetext

Der Anfragetext enthält eine Instanz von FileSearchStore.

Felder
displayName string

Optional. Der für Menschen lesbare Anzeigename für FileSearchStore. Der Anzeigename darf maximal 512 Zeichen lang sein, einschließlich Leerzeichen. Beispiel: „Docs on Semantic Retriever“

Antworttext

Bei Erfolg enthält der Antworttext eine neu erstellte Instanz von FileSearchStore.

Methode: fileSearchStores.delete

Löscht eine FileSearchStore.

Endpunkt

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

Pfadparameter

name string

Erforderlich. Der Ressourcenname der FileSearchStore. Beispiel: fileSearchStores/my-file-search-store-123 Sie nimmt die Form fileSearchStores/{filesearchstore} an.

Anfrageparameter

force boolean

Optional. Wenn auf „true“ gesetzt, werden auch alle Documents und Objekte, die mit diesem FileSearchStore verknüpft sind, gelöscht.

Wenn „false“ (Standardeinstellung), wird ein FAILED_PRECONDITION-Fehler zurückgegeben, wenn FileSearchStore Document enthält.

Anfragetext

Der Anfragetext muss leer sein.

Antworttext

Wenn der Vorgang erfolgreich abgeschlossen wurde, ist der Antworttext ein leeres JSON-Objekt.

Methode: fileSearchStores.get

Ruft Informationen zu einer bestimmten FileSearchStore ab.

Endpunkt

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

Pfadparameter

name string

Erforderlich. Der Name der FileSearchStore. Beispiel: fileSearchStores/my-file-search-store-123 Sie nimmt die Form fileSearchStores/{filesearchstore} an.

Anfragetext

Der Anfragetext muss leer sein.

Antworttext

Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von FileSearchStore.

Methode: fileSearchStores.list

Listet alle FileSearchStores auf, die dem Nutzer gehören.

Endpunkt

get https://generativelanguage.googleapis.com/v1beta/fileSearchStores >
>

Anfrageparameter

pageSize integer

Optional. Die maximale Anzahl von FileSearchStores, die (pro Seite) zurückgegeben werden sollen. Der Dienst gibt möglicherweise weniger FileSearchStores zurück.

Wenn nicht angegeben, werden maximal 10 FileSearchStores zurückgegeben. Die maximale Größe beträgt 20 FileSearchStores pro Seite.

pageToken string

Optional. Ein Seitentoken, das von einem vorherigen fileSearchStores.list-Aufruf empfangen wurde.

Geben Sie das in der Antwort zurückgegebene nextPageToken als Argument für die nächste Anfrage an, um die nächste Seite abzurufen.

Beim Paginieren müssen alle anderen für fileSearchStores.list bereitgestellten Parameter mit dem Aufruf übereinstimmen, der das Seitentoken bereitgestellt hat.

Anfragetext

Der Anfragetext muss leer sein.

Antworttext

Antwort von fileSearchStores.list mit einer paginierten Liste von FileSearchStores. Die Ergebnisse werden nach aufsteigendem fileSearchStore.create_time sortiert.

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

Felder
fileSearchStores[] object (FileSearchStore)

Die zurückgegebenen ragStores.

nextPageToken string

Ein Token, das als pageToken gesendet werden kann, um die nächste Seite abzurufen. Wenn dieses Feld weggelassen wird, gibt es keine weiteren Seiten.

JSON-Darstellung
{
  "fileSearchStores": [
    {
      object (FileSearchStore)
    }
  ],
  "nextPageToken": string
}

Methode: fileSearchStores.importFile

Importiert eine File aus dem Dateidienst in eine FileSearchStore.

Endpunkt

post https://generativelanguage.googleapis.com/v1beta/{fileSearchStoreName=fileSearchStores/*}:importFile > >
>
>

Pfadparameter

fileSearchStoreName string

Erforderlich. Nicht veränderbar. Der Name des FileSearchStore, in das die Datei importiert werden soll. Beispiel: fileSearchStores/my-file-search-store-123 Sie nimmt die Form fileSearchStores/{filesearchstore} an.

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

Felder
fileName string

Erforderlich. Der Name des zu importierenden File. Beispiel: files/abc-123

customMetadata[] object (CustomMetadata)

Benutzerdefinierte Metadaten, die der Datei zugeordnet werden sollen.

chunkingConfig object (ChunkingConfig)

Optional. Konfiguration, die dem Dienst mitteilt, wie die Datei in Chunks aufgeteilt werden soll. Wenn nicht angegeben, verwendet der Dienst Standardparameter.

Antworttext

Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.

REST-Ressource: fileSearchStores.operations

Ressource: Vorgang

Diese Ressource steht für einen Vorgang mit langer Ausführungszeit, der das Ergebnis eines Netzwerk-API-Aufrufs ist.

Felder
name string

Der vom Server zugewiesene Name, der nur innerhalb des Dienstes eindeutig ist, der ihn ursprünglich zurückgibt. Wenn Sie die Standard-HTTP-Zuordnung verwenden, sollte name ein Ressourcenname sein, der auf operations/{unique_id} endet.

metadata object

Dienstspezifische Metadaten, die mit dem Vorgang verknüpft sind. Typischerweise enthalten sie Informationen zum Verlauf und gemeinsame Metadaten wie den Erstellungszeitpunkt. Solche Metadaten werden nicht von allen Diensten bereitgestellt. Jede Methode, die einen Vorgang mit langer Ausführungszeit zurückgibt, muss gegebenenfalls den Metadatentyp dokumentieren.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

done boolean

Ist der Wert false, bedeutet das, dass der Vorgang noch läuft. Ist der Wert hingegen true, ist der Vorgang abgeschlossen und entweder error oder response ist verfügbar.

result Union type
Das Ergebnis des Vorgangs kann entweder ein error oder eine gültige response sein. Wenn done = false ist, wird weder error noch response festgelegt. Wenn done = true ist, kann genau ein error oder eine response festgelegt werden. Einige Dienste stellen das Ergebnis möglicherweise nicht bereit. Für result ist nur einer der folgenden Werte zulässig:
error object (Status)

Das Fehlerergebnis des Vorgangs im Fall eines Fehlers oder Abbruchs.

response object

Die normale, erfolgreiche Antwort des Vorgangs. Wenn die ursprüngliche Methode im Erfolgsfall keine Daten zurückgibt, wie bei Delete, lautet die Antwort google.protobuf.Empty. Ist die ursprüngliche Methode standardmäßig Get/Create/Update, sollte die Antwort die Ressource sein. Bei anderen Methoden sollte die Antwort vom Typ XxxResponse sein, wobei Xxx der Name der ursprünglichen Methode ist. Wenn zum Beispiel der Name der ursprünglichen Methode TakeSnapshot() ist, ist der gefolgerte Antworttyp TakeSnapshotResponse.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }

JSON-Darstellung
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // result
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // Union type
}

Methode: fileSearchStores.operations.get

Ruft den letzten Status eines lange laufenden Vorgangs ab. Clients können diese Methode nutzen, um die Ergebnisse eines Vorgangs nach gewissen Zeitabständen zu testen, wie vom API-Dienst empfohlen.

Endpunkt

get https://generativelanguage.googleapis.com/v1beta/{name=fileSearchStores/*/operations/*} >
>

Pfadparameter

name string

Der Name der Vorgangsressource. Sie nimmt die Form fileSearchStores/{filesearchstore}/operations/{operation} an.

Anfragetext

Der Anfragetext muss leer sein.

Antworttext

Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.

REST-Ressource: fileSearchStores.upload.operations

Ressource: Vorgang

Diese Ressource steht für einen Vorgang mit langer Ausführungszeit, der das Ergebnis eines Netzwerk-API-Aufrufs ist.

Felder
name string

Der vom Server zugewiesene Name, der nur innerhalb des Dienstes eindeutig ist, der ihn ursprünglich zurückgibt. Wenn Sie die Standard-HTTP-Zuordnung verwenden, sollte name ein Ressourcenname sein, der auf operations/{unique_id} endet.

metadata object

Dienstspezifische Metadaten, die mit dem Vorgang verknüpft sind. Typischerweise enthalten sie Informationen zum Verlauf und gemeinsame Metadaten wie den Erstellungszeitpunkt. Solche Metadaten werden nicht von allen Diensten bereitgestellt. Jede Methode, die einen Vorgang mit langer Ausführungszeit zurückgibt, muss gegebenenfalls den Metadatentyp dokumentieren.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

done boolean

Ist der Wert false, bedeutet das, dass der Vorgang noch läuft. Ist der Wert hingegen true, ist der Vorgang abgeschlossen und entweder error oder response ist verfügbar.

result Union type
Das Ergebnis des Vorgangs kann entweder ein error oder eine gültige response sein. Wenn done = false ist, wird weder error noch response festgelegt. Wenn done = true ist, kann genau ein error oder eine response festgelegt werden. Einige Dienste stellen das Ergebnis möglicherweise nicht bereit. Für result ist nur einer der folgenden Werte zulässig:
error object (Status)

Das Fehlerergebnis des Vorgangs im Fall eines Fehlers oder Abbruchs.

response object

Die normale, erfolgreiche Antwort des Vorgangs. Wenn die ursprüngliche Methode im Erfolgsfall keine Daten zurückgibt, wie bei Delete, lautet die Antwort google.protobuf.Empty. Ist die ursprüngliche Methode standardmäßig Get/Create/Update, sollte die Antwort die Ressource sein. Bei anderen Methoden sollte die Antwort vom Typ XxxResponse sein, wobei Xxx der Name der ursprünglichen Methode ist. Wenn zum Beispiel der Name der ursprünglichen Methode TakeSnapshot() ist, ist der gefolgerte Antworttyp TakeSnapshotResponse.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }

JSON-Darstellung
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // result
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // Union type
}

Methode: fileSearchStores.upload.operations.get

Ruft den letzten Status eines lange laufenden Vorgangs ab. Clients können diese Methode nutzen, um die Ergebnisse eines Vorgangs nach gewissen Zeitabständen zu testen, wie vom API-Dienst empfohlen.

Endpunkt

get https://generativelanguage.googleapis.com/v1beta/{name=fileSearchStores/*/upload/operations/*} >
>

Pfadparameter

name string

Der Name der Vorgangsressource. Sie nimmt die Form fileSearchStores/{filesearchstore}/upload/operations/{operation} an.

Anfragetext

Der Anfragetext muss leer sein.

Antworttext

Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.

REST-Ressource: fileSearchStores

Ressource: FileSearchStore

Eine FileSearchStore ist eine Sammlung von Documents.

Felder
name string

Nur Ausgabe. Nicht veränderbar. ID. Der Name der FileSearchStore-Ressource. Es handelt sich um eine ID (Name ohne das Präfix „fileSearchStores/“), die bis zu 40 Zeichen enthalten kann, die alphanumerisch in Kleinbuchstaben oder Bindestriche (-) sind. Sie wird nur ausgegeben. Der eindeutige Name wird aus displayName und einem zufälligen Suffix mit 12 Zeichen abgeleitet. Beispiel: fileSearchStores/my-awesome-file-search-store-123a456b789c Wenn displayName nicht angegeben ist, wird der Name zufällig generiert.

displayName string

Optional. Der für Menschen lesbare Anzeigename für FileSearchStore. Der Anzeigename darf maximal 512 Zeichen lang sein, einschließlich Leerzeichen. Beispiel: „Docs on Semantic Retriever“

createTime string (Timestamp format)

Nur Ausgabe. Der Zeitstempel für die Erstellung von FileSearchStore.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

updateTime string (Timestamp format)

Nur Ausgabe. Der Zeitstempel der letzten Aktualisierung von FileSearchStore.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

activeDocumentsCount string (int64 format)

Nur Ausgabe. Die Anzahl der Dokumente in FileSearchStore, die aktiv sind und abgerufen werden können.

pendingDocumentsCount string (int64 format)

Nur Ausgabe. Die Anzahl der Dokumente in FileSearchStore, die verarbeitet werden.

failedDocumentsCount string (int64 format)

Nur Ausgabe. Die Anzahl der Dokumente in FileSearchStore, die nicht verarbeitet werden konnten.

sizeBytes string (int64 format)

Nur Ausgabe. Die Größe der Rohbytes, die in die FileSearchStore aufgenommen wurden. Dies ist die Gesamtgröße aller Dokumente in FileSearchStore.

JSON-Darstellung
{
  "name": string,
  "displayName": string,
  "createTime": string,
  "updateTime": string,
  "activeDocumentsCount": string,
  "pendingDocumentsCount": string,
  "failedDocumentsCount": string,
  "sizeBytes": string
}