Añadir documentos de tipo hoja de cálculo (archivo)
Carga por lotes documentos de tipo hoja de cálculo, que se procesan secuencialmente mediante fragmentación/segmentación, generación de embeddings (vectorización) y almacenamiento, para obtener nuevos ID de documento.
Nota:
Puede especificar el modelo de embedding mediante
embedding_model_version_id; si se omite, se utiliza el modelo de embedding predeterminado del sistema.Solo se devuelven los resultados de la carga, no los resultados finales de embeddings. Los resultados finales se pueden obtener mediante la API «Consultar el estado del documento» («Query Document Status»).
Método de la solicitud
POST
URL de la solicitud
https://api-${endpoint}.gptbots.ai/v1/bot/doc/spreadsheet/add
Autenticación de la solicitud
Consulte la sección «Visión general» para obtener información detallada sobre la autenticación de la solicitud.
Solicitud
Ejemplo de solicitud
curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/bot/doc/spreadsheet/add' \
-H 'Authorization: Bearer ${API Key}' \
-H 'Content-Type: application/json' \
-d '{
"knowledge_base_id": "67457fea6f658672d6482542",
"embedding_model_version_id": "6620f06262390a0be1411c5d",
"chunk_token": 700,
"header_row": 5,
"files": [
{
"file_url": "https://www.gptbots.ai/doc/spreadsheet_1.xlsx",
"file_base64": "SGVsbG8sIEJhc2U2NCBFbmNvZGluZyE=",
"source_url": "https://www.gptbots.ai/doc/spreadsheet_1.xlsx",
"file_name": "spreadsheet_1.xlsx"
}
]
}'
Cabecera de la solicitud
| Campo | Tipo | Descripción |
|---|---|---|
| Authorization | Bearer ${API Key} | Se utiliza Authorization: Bearer ${API Key} para la autenticación. La clave de API se obtiene en la página «API Key». |
| Content-Type | application/json | Tipo de datos; se establece en application/json. |
Parámetros de la solicitud
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| knowledge_base_id | String | No | Base de conocimiento de destino a la que se añade el documento. Si no se rellena, se utiliza la base de conocimientos «Default». |
| files | Array | Sí | Lista de documentos que se van a añadir. Permite añadir hasta 20 documentos simultáneamente. |
| file_url | String | No | URL del documento que se va a añadir (propiedad del objeto en "files"). Formatos compatibles: csv/xls/xlsx. El tamaño máximo por documento es de 10 MB. Nota: Se debe proporcionar la URL o el valor en base64. Si se proporcionan ambos, base64 tiene prioridad. |
| file_base64 | String | No | Valor en base64 del documento que se va a añadir (propiedad del objeto en "files"). Formatos compatibles: csv/xls/xlsx. El tamaño máximo por documento es de 10 MB. Nota: Se debe proporcionar la URL o el valor en base64. Si se proporcionan ambos, base64 tiene prioridad. |
| file_name | String | Sí | Nombre del documento que se va a añadir (propiedad del objeto en "files"). De 1 a 200 caracteres. |
| source_url | String | No | URL de origen del documento que se va a añadir (propiedad del objeto en "files"). Debe cumplir las especificaciones de formato de URL. |
| embedding_model_version_id | String | No | ID de la versión del modelo de embedding con el que se vectoriza este lote de documentos. Si se omite, se utiliza el modelo de embedding predeterminado del sistema. Obtenga un valor válido del campo modelId del grupo EMBEDDING que devuelve la API Obtener lista de modelos. |
| chunk_token | Integer | No | Número máximo de tokens por fragmento de conocimiento durante la fragmentación. El valor predeterminado es 600. El rango es de 1 a 1000. |
| header_row | Integer | No | Número máximo de filas de encabezado. Los documentos de tabla se fragmentan en función de «encabezado + filas de datos». El valor predeterminado es 1. Rango: 1-5. |
Respuesta
Ejemplo de respuesta
{
"doc": [
{
"doc_id": "xxxxxx",
"doc_name": "test_1.csv"
},
{
"doc_id": "xxxxxx",
"doc_name": "test_2.xlsx"
}
],
"failed": [
"file_1",
"file_2"
]
}
Respuesta de éxito
| Campo | Tipo | Descripción |
|---|---|---|
| doc | Array | Lista de documentos añadidos. |
| doc_id | String | ID del documento añadido. |
| doc_name | String | Nombre del documento añadido. |
| failed | Array | Lista de nombres de documentos cuya incorporación ha fallado. |
Respuesta de error
| Campo | Tipo | Descripción |
|---|---|---|
| code | Int | Código de error. |
| message | String | Detalles del error. |
Códigos de error
| Code | Message |
|---|---|
| 40000 | Parámetro no válido |
| 40000 | The embedding_model_version_id does not exist: el ID de versión del modelo indicado no existe en el catálogo de modelos de la plataforma |
| 40000 | The embedding_model_version_id is not an embedding model: el ID indicado corresponde a un modelo que no es de embedding (por ejemplo, el modelId de un modelo de chat) |
| 40000 | The embedding_model_version_id is not an available embedding model: el proveedor de este modelo de embedding aún no admite su especificación mediante la API |
| 40127 | Error de autenticación del desarrollador |
| 20059 | El agente ha sido eliminado |
Nota: Si la validación de
embedding_model_version_idfalla, no se crea ningún documento del lote y ninguno aparece en la listafailed; se devuelve directamente la respuesta de error anterior.
