

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Importare documenti direttamente in una knowledge base
<a name="kb-direct-ingestion-add"></a>

Questo argomento illustra come importare documenti direttamente in una knowledge base. In base all’origine dati, si applicano restrizioni ai tipi di documenti che è possibile importare direttamente. Per le restrizioni sui metodi che si possono utilizzare per specificare i documenti da importare, consulta la tabella seguente:


****  

| Tipo di origine dati | Documento definito in linea | Documento nella posizione di Amazon S3 | 
| --- | --- | --- | 
| Simple Storage Service (Amazon S3) | ![\[Red circular icon with an X symbol, indicating cancellation or denial.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/icons/icon-no.png)No | ![\[Green circular icon with a white checkmark symbol inside.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/icons/icon-yes.png)Sì | 
| Personalizzato | ![\[Green circular icon with a white checkmark symbol inside.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/icons/icon-yes.png)Sì | ![\[Green circular icon with a white checkmark symbol inside.\]](http://docs.aws.amazon.com/it_it/bedrock/latest/userguide/images/icons/icon-yes.png)Sì | 

Espandi la sezione corrispondente al caso d’uso specifico:

**Nota**  
Quando usi la console, puoi importare fino a 10 documenti direttamente nella knowledge base. Se invece utilizzi l’API `IngestKnowledgeBaseDocuments`, nella knowledge base puoi importare fino a 25 documenti. Per ulteriori informazioni sulla quota, consulta [Quote di servizio di Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#limits_bedrock) nella guida *Riferimenti generali di AWS *.

## Eliminare con la console
<a name="kb-direct-ingestion-add-console"></a>

Per aggiungere o modificare documenti direttamente in Console di gestione AWS, procedi come segue:

1. Accedi a Console di gestione AWS con un'identità IAM che dispone delle autorizzazioni per utilizzare la console Amazon Bedrock. Quindi, apri la console Amazon Bedrock in [https://console.aws.amazon.com/bedrock.](https://console.aws.amazon.com/bedrock)

1. Nel riquadro di navigazione a sinistra, scegli **Knowledge base**.

1. Nella sezione **Knowledge base**, seleziona la knowledge base in cui importare i documenti.

1. Nella sezione **Origine dati**, seleziona l’origine dati per cui desideri aggiungere, modificare o eliminare documenti.

1. Nella sezione **Documenti**, scegli **Aggiungi documenti**. Effettua quindi una delle seguenti operazioni:
   + Per aggiungere o modificare direttamente un documento, seleziona **Aggiungi documenti direttamente**. Successivamente, esegui queste operazioni:

     1. Nel campo **Identificatore del documento**, specifica un nome univoco per il documento. Se si specifica un nome già esistente nell’origine dati, il documento viene sostituito.

     1. Per caricare un documento, seleziona **Carica**. Per definire un documento in linea, seleziona **Aggiungi documento in linea**, scegli un formato e inserisci il testo del documento nella casella.

     1. (Facoltativo) Per associare i metadati al documento, seleziona **Aggiungi metadati** e immetti una chiave, un tipo e un valore.
   + Per aggiungere o modificare un documento specificandone la posizione S3, seleziona **Aggiungi documenti S3**. Successivamente, esegui queste operazioni:

     1. Nel campo **Identificatore del documento**, specifica un nome univoco per il documento. Se si specifica un nome già esistente nell’origine dati, il documento viene sostituito.

     1. Specificate se la **posizione S3** del documento si trova nel vostro AWS account corrente o in un altro. Successivamente, specifica l’URI S3 del documento.

     1. (Facoltativo) Per associare i metadati al documento, scegli un valore nel campo **Origine dei metadati**. Specifica l’URI S3 dei metadati o seleziona **Aggiungi metadati** e immetti una chiave, un tipo e un valore.

1. Per importare il documento e i metadati associati, scegli **Aggiungi**.

## Eliminare con l’API
<a name="kb-direct-ingestion-add-api"></a>

Per importare documenti direttamente in una knowledge base utilizzando l'API Amazon Bedrock, invia una [IngestKnowledgeBaseDocuments](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_IngestKnowledgeBaseDocuments.html)richiesta a un [endpoint di build Agents for Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt) e specifica l'ID della knowledge base e della fonte di dati a cui è collegata.

**Nota**  
Se si specifica un identificatore del documento o una posizione S3 già esistente nella knowledge base, il documento viene sovrascritto con il nuovo contenuto.

Il corpo della richiesta contiene un campo che corrisponde a una serie di [KnowledgeBaseDocument](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_KnowledgeBaseDocument.html)oggetti, ognuno dei quali rappresenta il contenuto e i metadati opzionali di un documento da aggiungere alla fonte di dati e da inserire nella knowledge base. `documents` Un oggetto [KnowledgeBaseDocument](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_KnowledgeBaseDocument.html) contiene i campi seguenti:
+ contenuto: esegue il mapping su un [DocumentContent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DocumentContent.html)oggetto contenente informazioni sul contenuto del documento da aggiungere.
+ metadati: (Facoltativo) esegue il mapping su un [DocumentMetadata](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DocumentMetadata.html)oggetto contenente informazioni sui metadati del documento da aggiungere. Per ulteriori informazioni sull’utilizzo dei metadati durante il recupero, consulta la sezione **Metadati e filtri** in [Configurare e personalizzare la generazione di query e risposte](kb-test-config.md).

Seleziona un argomento per scoprire come importare documenti per diversi tipi di origini dati o per visualizzare esempi:

**Topics**
+ [Importare un documento in una knowledge base connessa a un’origine dati personalizzata](#kb-direct-ingestion-add-custom)
+ [Importare un documento in una knowledge base connessa a un’origine dati Amazon S3](#kb-direct-ingestion-add-s3)
+ [Esempio di corpi della richiesta](#w2aac28c10c23c19c17c11b3c19)

### Importare un documento in una knowledge base connessa a un’origine dati personalizzata
<a name="kb-direct-ingestion-add-custom"></a>

`dataSourceId`Se l'oggetto specificato appartiene a un'origine dati personalizzata, è possibile aggiungere contenuto e metadati per ogni [KnowledgeBaseDocument](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_KnowledgeBaseDocument.html)oggetto dell'array. `documents`

Il contenuto di un documento aggiunto a un’origine dati personalizzata può essere definito nei modi seguenti:

#### Definire il documento in linea
<a name="kb-direct-ingestion-add-custom-inline"></a>

È possibile definire i seguenti tipi di documenti in linea:

------
#### [ Text ]

Se il documento è testo, l'[DocumentContent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DocumentContent.html)oggetto deve avere il seguente formato:

```
{ 
    "custom": { 
        "customDocumentIdentifier": { 
            "id": "string"
        },
        "inlineContent": { 
            "textContent": { 
                "data": "string"
            },
            "type": "TEXT"
        },
        "sourceType": "IN_LINE"
    },
    "dataSourceType": "CUSTOM"
}
```

Includi un ID per il documento nel campo `id` e il testo del documento nel campo `data`.

------
#### [ Bytes ]

Se il documento contiene altri elementi oltre al testo, convertilo in una stringa Base64. L'[DocumentContent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DocumentContent.html)oggetto dovrebbe quindi avere il seguente formato:

```
{ 
    "custom": { 
        "customDocumentIdentifier": { 
            "id": "string"
        },
        "inlineContent": { 
            "byteContent": { 
                "data": blob,
                "mimeType": "string"
            },
            "type": "BYTE"
        },
        "sourceType": "IN_LINE"
    },
    "dataSourceType": "CUSTOM"
}
```

Includi un ID per il documento nel campo `id`, il documento con codifica Base64 nel `data` e il tipo MIME nel campo `mimeType`.

------

#### Importare il documento da S3
<a name="w2aac28c10c23c19c17c11b3c15b7b3"></a>

Se state importando un documento da una posizione S3, l'[DocumentContent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DocumentContent.html)oggetto nel `content` campo deve avere il seguente formato:

```
{ 
    "custom": { 
        "customDocumentIdentifier": { 
            "id": "string"
        },
        "s3Location": { 
            "bucketOwnerAccountId": "string",
            "uri": "string"
        },
        "sourceType": "S3"
    },
    "dataSourceType": "CUSTOM"
}
```

Includi un ID per il documento nel campo `id`, il proprietario del bucket S3 che contiene il documento nel campo `bucketOwnerAccountId` e l’URI S3 del documento nel campo `uri`.

I metadati di un documento possono essere definiti nei modi seguenti:

#### Definire i metadati in linea
<a name="w2aac28c10c23c19c17c11b3c15c11b1"></a>

Se definisci i metadati in linea, l'[DocumentMetadata](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DocumentMetadata.html)oggetto nel `metadata` campo deve avere il seguente formato:

```
{ 
    "inlineAttributes": [ 
        { 
            "key": "string",
            "value": { 
                "stringValue": "string",
                "booleanValue": boolean,
                "numberValue": number,
                "stringListValue": [ "string" ],
                "type": "STRING" | "BOOLEAN" | "NUMBER" | "STRING_LIST"
            }
        }
    ],
    "type": "IN_LINE_ATTRIBUTE"
}
```

Per ogni attributo aggiunto, definisci la chiave nel campo `key`. Specifica il tipo di dati del valore nel campo `type` e includi il campo che corrisponde al tipo di dati. Ad esempio, se includi una stringa, l’attributo avrà il seguente formato:

```
{ 
    "key": "string",
    "value": { 
        "stringValue": "string",
        "type": "STRING"
    }
}
```

#### Importare i metadati da S3
<a name="w2aac28c10c23c19c17c11b3c15c11b3"></a>

Puoi anche importare i metadati da un file con estensione `.metadata.json` in una posizione S3. Per ulteriori informazioni sul formato di un file di metadati, consulta la sezione **Campi di metadati del documento** in [Connettersi ad Amazon S3 per una knowledge base](s3-data-source-connector.md).

Se i metadati provengono da un file S3, l'[DocumentMetadata](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DocumentMetadata.html)oggetto nel `metadata` campo deve avere il seguente formato:

```
{
    "s3Location": { 
        "bucketOwnerAccountId": "string",
        "uri": "string"
    },
        "type": "S3_LOCATION"
    }
 }
```

Includi il proprietario del bucket S3 che contiene il file di metadati nel campo `bucketOwnerAccountId` e l’URI S3 del file di metadati nel campo `uri`.

**avvertimento**  
Se hai definito il contenuto in linea, anche i metadati devono essere definiti in linea.

### Importare un documento in una knowledge base connessa a un’origine dati Amazon S3
<a name="kb-direct-ingestion-add-s3"></a>

`dataSourceId`Se l'oggetto specificato appartiene a un'origine dati S3, puoi aggiungere contenuti e metadati per ogni [KnowledgeBaseDocument](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_KnowledgeBaseDocument.html)oggetto dell'array. `documents`

**Nota**  
Per le origini dati S3, puoi aggiungere contenuti e metadati solo da una posizione S3.

Il contenuto di un documento S3 da aggiungere a S3 deve essere aggiunto a un [DocumentContent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_DocumentContent.html)oggetto nel seguente formato:

```
{ 
    "dataSourceType": "string",
    "s3": { 
        "s3Location": { 
            "uri": "string"
        }
    }
}
```

Includi il proprietario del bucket S3 che contiene il documento nel campo `bucketOwnerAccountId` e l’URI S3 del documento nel campo `uri`.

I metadati di un documento aggiunto a un’origine dati personalizzata può essere definito nel seguente formato:

```
{
    "s3Location": { 
        "bucketOwnerAccountId": "string",
        "uri": "string"
    },
        "type": "S3_LOCATION"
    }
 }
```

**avvertimento**  
I documenti che importi direttamente in una knowledge base connessa a un’origine dati S3 non vengono aggiunti al bucket S3. Si consiglia di aggiungere questi documenti anche all’origine dati S3 in modo che non vengano rimossi né sovrascritti se si sincronizza l’origine dati.

### Esempio di corpi della richiesta
<a name="w2aac28c10c23c19c17c11b3c19"></a>

Espandi le seguenti sezioni per visualizzare i corpi delle richieste per diversi casi d’uso con `IngestKnowledgeBaseDocuments`:

#### Aggiungere un documento di testo personalizzato a un’origine dati personalizzata e importarlo
<a name="w2aac28c10c23c19c17c11b3c19b5b1"></a>

L’esempio seguente mostra l’aggiunta di un documento di testo a un’origine dati personalizzata:

```
PUT /knowledgebases/KB12345678/datasources/DS12345678/documents HTTP/1.1
Content-type: application/json

{
   "documents": [ 
      { 
         "content": { 
            "dataSourceType": "CUSTOM",
            "custom": { 
               "customDocumentIdentifier": { 
                  "id": "MyDocument"
               },
               "inlineContent": { 
                  "textContent": { 
                     "data": "Hello world!"
                  },
                  "type": "TEXT"
               },
               "sourceType": "IN_LINE"
            }
         }
     }
   ]
}
```

#### Aggiungere un documento con codifica Base64 a un’origine dati personalizzata e importarlo
<a name="w2aac28c10c23c19c17c11b3c19b5b3"></a>

L’esempio seguente mostra l’aggiunta di un documento PDF a un’origine dati personalizzata:

```
PUT /knowledgebases/KB12345678/datasources/DS12345678/documents HTTP/1.1
Content-type: application/json

{
   "documents": [ 
      { 
         "content": { 
            "dataSourceType": "CUSTOM",
            "custom": { 
               "customDocumentIdentifier": { 
                  "id": "MyDocument"
               },
               "inlineContent": { 
                  "byteContent": { 
                     "data": "<Base64-encoded string>",
                     "mimeType": "application/pdf"
                  },
                  "type": "BYTE"
               },
               "sourceType": "IN_LINE"
            }
         }
     }
   ]
}
```

#### Aggiungere un documento da una posizione S3 a una knowledge base connessa a un’origine dati personalizzata e importarlo
<a name="w2aac28c10c23c19c17c11b3c19b5b5"></a>

L’esempio seguente mostra l’aggiunta di un documento di testo a un’origine dati personalizzata da una posizione S3:

```
PUT /knowledgebases/KB12345678/datasources/DS12345678/documents HTTP/1.1
Content-type: application/json

{
   "documents": [ 
      { 
         "content": { 
            "dataSourceType": "CUSTOM",
            "custom": { 
               "customDocumentIdentifier": { 
                  "id": "MyDocument"
               },
               "s3": {
                "s3Location": {
                    "uri": "amzn-s3-demo-bucket"
                }
               },
               "sourceType": "S3"
            }
         }
     }
   ]
}
```

#### Aggiungere un documento in linea a una knowledge base connessa a un’origine dati personalizzata e includere i metadati in linea
<a name="w2aac28c10c23c19c17c11b3c19b5b7"></a>

L’esempio seguente mostra l’aggiunta in linea a un’origine dati personalizzata di un documento e di metadati contenenti due attributi:

```
PUT /knowledgebases/KB12345678/datasources/DS12345678/documents HTTP/1.1
Content-type: application/json

{
   "documents": [ 
      { 
         "content": { 
            "dataSourceType": "CUSTOM",
            "custom": { 
               "customDocumentIdentifier": { 
                  "id": "MyDocument"
               },
               "inlineContent": { 
                  "textContent": { 
                     "data": "Hello world!"
                  },
                  "type": "TEXT"
               },
               "sourceType": "IN_LINE"
            }
         },
         "metadata": {
            "inlineAttributes": [ 
               { 
                  "key": "genre",
                  "value": {
                     "stringValue": "pop",
                     "type": "STRING"
                  }
               },
               { 
                  "key": "year",
                  "value": { 
                     "numberValue": 1988,
                     "type": "NUMBER"
                  }
               }
            ],
            "type": "IN_LINE_ATTRIBUTE"
         }
     }
   ]
}
```

#### Aggiungere un documento in linea a una knowledge base connessa a un’origine dati S3 e includerne i metadati
<a name="w2aac28c10c23c19c17c11b3c19b5b9"></a>

L’esempio seguente mostra l’aggiunta di un documento e dei metadati a un’origine dati S3. Puoi includere i metadati solo tramite S3:

```
PUT /knowledgebases/KB12345678/datasources/DS12345678/documents HTTP/1.1
Content-type: application/json

{
    "documents": [ 
        { 
            "content": { 
                "dataSourceType": "S3",
                "s3": { 
                "s3Location": {
                    "uri": "amzn-s3-demo-bucket"
                }
            }
        },
        "metadata": {
            "s3Location": {
                "bucketOwnerId": "111122223333",
                "uri": "amzn-s3-demo-bucket"
            },
                "type": "S3_LOCATION"
            }
        }
    ]
}
```