File Search Stores

La API de File Search proporciona un servicio de búsqueda de respuestas alojado para compilar sistemas de generación mejorada por recuperación (RAG) con la infraestructura de Google.

Método: media.uploadToFileSearchStore

Sube datos a un FileSearchStore, los preprocesa y los divide en fragmentos antes de almacenarlos en un documento de FileSearchStore.

Extremo

  • URI de carga para las solicitudes de carga de medios:
post https://generativelanguage.googleapis.com/upload/v1beta/{fileSearchStoreName=fileSearchStores/*}:uploadToFileSearchStore
  • URI de metadatos para las solicitudes de metadatos únicamente:
post https://generativelanguage.googleapis.com/v1beta/{fileSearchStoreName=fileSearchStores/*}:uploadToFileSearchStore

Parámetros de ruta

fileSearchStoreName string

Obligatorio. Inmutable. Nombre del FileSearchStore en el que se subirá el archivo. Ejemplo: fileSearchStores/my-file-search-store-123 Toma la forma fileSearchStores/{filesearchstore}.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Campos
displayName string

Opcional. Es el nombre visible del documento creado.

customMetadata[] object (CustomMetadata)

Son los metadatos personalizados que se asociarán con los datos.

chunkingConfig object (ChunkingConfig)

Opcional. Es la configuración para indicarle al servicio cómo dividir los datos en fragmentos. Si no se proporcionan, el servicio usará parámetros predeterminados.

mimeType string

Opcional. Tipo de MIME de los datos. Si no se proporciona, se inferirá del contenido subido.

Cuerpo de la respuesta

Es una copia de google.longrunning.Operation. Debemos copiarlo porque, para interactuar con Scotty, necesitamos agregar un campo específico de Scotty que no se puede agregar en el proto de Operation de nivel superior.

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

Campos
name string

El nombre asignado por el servidor, que solo es único dentro del mismo servicio que originalmente lo muestra. Si usas la asignación HTTP predeterminada, el name debe ser un nombre de recurso que termine con operations/{unique_id}.

metadata object

Metadatos específicos del servicio asociados con la operación. Por lo general, contiene información de progreso y metadatos comunes, como la fecha de creación. Puede que algunos servicios no proporcionen estos metadatos. Cualquier método que muestra una operación de larga duración debe documentar el tipo de metadatos, si corresponde.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

done boolean

Si el valor es false, significa que la operación aún está en progreso. Si es true, la operación está completa, y error o response están disponibles.

result Union type
El resultado de la operación, que puede ser un error o una response válida. Si done == false, no se establecen error ni response. Si done == true, se puede establecer error o response. Es posible que algunos servicios no proporcionen el resultado. result puede ser solo una de las siguientes opciones:
error object (Status)

El resultado de error de la operación en caso de falla o cancelación.

response object

La respuesta normal y correcta de la operación. Si el método original no muestra datos en caso de éxito, como Delete, la respuesta es google.protobuf.Empty. Si el método original es Get, Create o Update estándar, la respuesta debe ser el recurso. Para otros métodos, la respuesta debe tener el tipo XxxResponse, en la que Xxx es el nombre del método original. Por ejemplo, si el nombre del método original es TakeSnapshot(), el tipo de respuesta inferido es TakeSnapshotResponse.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Representación JSON
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

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

Método: fileSearchStores.create

Crea un FileSearchStore vacío.

Extremo

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

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de FileSearchStore.

Campos
displayName string

Opcional. Es el nombre visible legible por humanos para FileSearchStore. El nombre visible no debe tener más de 512 caracteres, incluidos los espacios. Ejemplo: "Documentos sobre Semantic Retriever"

Cuerpo de la respuesta

Si el proceso se realiza de forma correcta, el cuerpo de la respuesta contiene una instancia recién creada de FileSearchStore.

Método: fileSearchStores.delete

Borra un FileSearchStore.

Extremo

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

Parámetros de ruta

name string

Obligatorio. Es el nombre del recurso FileSearchStore. Ejemplo: fileSearchStores/my-file-search-store-123 Toma la forma fileSearchStores/{filesearchstore}.

Parámetros de consulta

force boolean

Opcional. Si se establece como verdadero, también se borrarán los Document y los objetos relacionados con este FileSearchStore.

Si es falso (valor predeterminado), se mostrará un error FAILED_PRECONDITION si FileSearchStore contiene algún Document.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta es un objeto JSON vacío.

Método: fileSearchStores.get

Obtiene información sobre un FileSearchStore específico.

Extremo

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

Parámetros de ruta

name string

Obligatorio. El nombre de FileSearchStore. Ejemplo: fileSearchStores/my-file-search-store-123 Toma la forma fileSearchStores/{filesearchstore}.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta incluye una instancia de FileSearchStore.

Método: fileSearchStores.list

Enumera todos los FileSearchStores que posee el usuario.

Extremo

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

Parámetros de consulta

pageSize integer

Opcional. Es la cantidad máxima de FileSearchStores que se devolverán (por página). El servicio puede devolver menos FileSearchStores.

Si no se especifica, se devolverán, como máximo, 10 FileSearchStores. El límite de tamaño máximo es de 20 FileSearchStores por página.

pageToken string

Opcional. Un token de página, recibido desde una llamada fileSearchStores.list anterior.

Proporciona el nextPageToken que se devolvió en la respuesta como argumento para la siguiente solicitud y, así, recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a fileSearchStores.list deben coincidir con la llamada que proporcionó el token de la página.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Respuesta de fileSearchStores.list que contiene una lista paginada de FileSearchStores. Los resultados se ordenan por fileSearchStore.create_time ascendente.

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

Campos
fileSearchStores[] object (FileSearchStore)

Son los ragStores que se muestran.

nextPageToken string

Un token, que se puede enviar como pageToken para recuperar la página siguiente. Si se omite este campo, no habrá más páginas.

Representación JSON
{
  "fileSearchStores": [
    {
      object (FileSearchStore)
    }
  ],
  "nextPageToken": string
}

Método: fileSearchStores.importFile

Importa un File desde File Service a un FileSearchStore.

Extremo

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

Parámetros de ruta

fileSearchStoreName string

Obligatorio. Inmutable. Nombre del FileSearchStore en el que se importará el archivo. Ejemplo: fileSearchStores/my-file-search-store-123 Toma la forma fileSearchStores/{filesearchstore}.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Campos
fileName string

Obligatorio. Nombre del File que se importará. Ejemplo: files/abc-123

customMetadata[] object (CustomMetadata)

Son los metadatos personalizados que se asociarán con el archivo.

chunkingConfig object (ChunkingConfig)

Opcional. Es la configuración para indicarle al servicio cómo dividir el archivo en fragmentos. Si no se proporcionan, el servicio usará parámetros predeterminados.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta incluye una instancia de Operation.

Recurso de REST: fileSearchStores.operations

Recurso: Operation

Este recurso representa una operación de larga duración que es el resultado de una llamada a la API de la red.

Campos
name string

El nombre asignado por el servidor, que solo es único dentro del mismo servicio que originalmente lo muestra. Si usas la asignación HTTP predeterminada, el name debe ser un nombre de recurso que termine con operations/{unique_id}.

metadata object

Metadatos específicos del servicio asociados con la operación. Por lo general, contiene información de progreso y metadatos comunes, como la fecha de creación. Puede que algunos servicios no proporcionen estos metadatos. Cualquier método que muestra una operación de larga duración debe documentar el tipo de metadatos, si corresponde.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

done boolean

Si el valor es false, significa que la operación aún está en progreso. Si es true, la operación está completa, y error o response están disponibles.

result Union type
El resultado de la operación, que puede ser un error o una response válida. Si done == false, no se establecen error ni response. Si done == true, se puede establecer error o response. Es posible que algunos servicios no proporcionen el resultado. result puede ser solo una de las siguientes opciones:
error object (Status)

El resultado de error de la operación en caso de falla o cancelación.

response object

La respuesta normal y correcta de la operación. Si el método original no muestra datos en caso de éxito, como Delete, la respuesta es google.protobuf.Empty. Si el método original es Get, Create o Update estándar, la respuesta debe ser el recurso. Para otros métodos, la respuesta debe tener el tipo XxxResponse, en la que Xxx es el nombre del método original. Por ejemplo, si el nombre del método original es TakeSnapshot(), el tipo de respuesta inferido es TakeSnapshotResponse.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Representación JSON
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

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

Método: fileSearchStores.operations.get

Obtiene el último estado de una operación de larga duración. Los clientes pueden usar este método para sondear el resultado de la operación por intervalos según la recomendación del servicio de la API.

Extremo

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

Parámetros de ruta

name string

El nombre del recurso de operación. Toma la forma fileSearchStores/{filesearchstore}/operations/{operation}.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta incluye una instancia de Operation.

Recurso de REST: fileSearchStores.upload.operations

Recurso: Operation

Este recurso representa una operación de larga duración que es el resultado de una llamada a la API de la red.

Campos
name string

El nombre asignado por el servidor, que solo es único dentro del mismo servicio que originalmente lo muestra. Si usas la asignación HTTP predeterminada, el name debe ser un nombre de recurso que termine con operations/{unique_id}.

metadata object

Metadatos específicos del servicio asociados con la operación. Por lo general, contiene información de progreso y metadatos comunes, como la fecha de creación. Puede que algunos servicios no proporcionen estos metadatos. Cualquier método que muestra una operación de larga duración debe documentar el tipo de metadatos, si corresponde.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

done boolean

Si el valor es false, significa que la operación aún está en progreso. Si es true, la operación está completa, y error o response están disponibles.

result Union type
El resultado de la operación, que puede ser un error o una response válida. Si done == false, no se establecen error ni response. Si done == true, se puede establecer error o response. Es posible que algunos servicios no proporcionen el resultado. result puede ser solo una de las siguientes opciones:
error object (Status)

El resultado de error de la operación en caso de falla o cancelación.

response object

La respuesta normal y correcta de la operación. Si el método original no muestra datos en caso de éxito, como Delete, la respuesta es google.protobuf.Empty. Si el método original es Get, Create o Update estándar, la respuesta debe ser el recurso. Para otros métodos, la respuesta debe tener el tipo XxxResponse, en la que Xxx es el nombre del método original. Por ejemplo, si el nombre del método original es TakeSnapshot(), el tipo de respuesta inferido es TakeSnapshotResponse.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Representación JSON
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

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

Método: fileSearchStores.upload.operations.get

Obtiene el último estado de una operación de larga duración. Los clientes pueden usar este método para sondear el resultado de la operación por intervalos según la recomendación del servicio de la API.

Extremo

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

Parámetros de ruta

name string

El nombre del recurso de operación. Toma la forma fileSearchStores/{filesearchstore}/upload/operations/{operation}.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta incluye una instancia de Operation.

Recurso de REST: fileSearchStores

Recurso: FileSearchStore

Una FileSearchStore es una colección de elementos Document.

Campos
name string

Solo salida. Inmutable. Es el identificador. Nombre del recurso de FileSearchStore. Es un ID (nombre sin el prefijo "fileSearchStores/") que puede contener hasta 40 caracteres alfanuméricos en minúscula o guiones (-). Es solo de salida. El nombre único se derivará de displayName junto con un sufijo aleatorio de 12 caracteres. Ejemplo: fileSearchStores/my-awesome-file-search-store-123a456b789c Si no se proporciona displayName, el nombre se generará de forma aleatoria.

displayName string

Opcional. Es el nombre visible legible por humanos para FileSearchStore. El nombre visible no debe tener más de 512 caracteres, incluidos los espacios. Ejemplo: "Documentos sobre Semantic Retriever"

createTime string (Timestamp format)

Solo salida. Es la marca de tiempo de cuándo se creó el FileSearchStore.

Usa el formato RFC 3339, en el que el resultado generado siempre estará normalizada a Z y usa 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime string (Timestamp format)

Solo salida. Es la marca de tiempo de la última actualización del FileSearchStore.

Usa el formato RFC 3339, en el que el resultado generado siempre estará normalizada a Z y usa 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

activeDocumentsCount string (int64 format)

Solo salida. Es la cantidad de documentos en el FileSearchStore que están activos y listos para recuperarse.

pendingDocumentsCount string (int64 format)

Solo salida. Es la cantidad de documentos en el FileSearchStore que se están procesando.

failedDocumentsCount string (int64 format)

Solo salida. Es la cantidad de documentos en el FileSearchStore que no se pudieron procesar.

sizeBytes string (int64 format)

Solo salida. Es el tamaño de los bytes sin procesar que se transfirieron al FileSearchStore. Este es el tamaño total de todos los documentos en FileSearchStore.

Representación JSON
{
  "name": string,
  "displayName": string,
  "createTime": string,
  "updateTime": string,
  "activeDocumentsCount": string,
  "pendingDocumentsCount": string,
  "failedDocumentsCount": string,
  "sizeBytes": string
}