Connects a knowledge base to a data source¶
Description¶
Connects a knowledge base to a data source. You specify the configuration for the specific data source service in the dataSourceConfiguration field.
You can't change the chunkingConfiguration after you create the data source connector.
Usage¶
bedrockagent_create_data_source(knowledgeBaseId, clientToken, name,
description, dataSourceConfiguration, dataDeletionPolicy,
serverSideEncryptionConfiguration, vectorIngestionConfiguration)
Arguments¶
-
knowledgeBaseId[required] The unique identifier of the knowledge base to which to add the data source.
-
clientTokenA unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.
-
name[required] The name of the data source.
-
descriptionA description of the data source.
-
dataSourceConfiguration[required] The connection configuration for the data source.
-
dataDeletionPolicyThe data deletion policy for the data source.
You can set the data deletion policy to:
- DELETE: Deletes all data from your data source that’s converted into vector embeddings upon deletion of a knowledge base or data source resource. Note that the vector store itself is not deleted, only the data. This flag is ignored if an Amazon Web Services account is deleted.
- RETAIN: Retains all data from your data source that’s converted into vector embeddings upon deletion of a knowledge base or data source resource. Note that the vector store itself is not deleted if you delete a knowledge base or data source resource.
For managed knowledge bases, the only supported option is
DELETE, which is also the default. -
serverSideEncryptionConfigurationContains details about the server-side encryption for the data source.
-
vectorIngestionConfigurationContains details about how to ingest the documents in the data source.
Value¶
A list with the following syntax:
list(
dataSource = list(
knowledgeBaseId = "string",
dataSourceId = "string",
name = "string",
status = "AVAILABLE"|"DELETING"|"DELETE_UNSUCCESSFUL"|"CREATING"|"UPDATING"|"FAILED",
description = "string",
dataSourceConfiguration = list(
type = "S3"|"WEB"|"CONFLUENCE"|"SALESFORCE"|"SHAREPOINT"|"CUSTOM"|"REDSHIFT_METADATA"|"MANAGED_KNOWLEDGE_BASE_CONNECTOR",
managedKnowledgeBaseConnectorConfiguration = list(
deletionProtectionConfiguration = list(
deletionProtectionStatus = "ENABLED"|"DISABLED",
deletionProtectionThreshold = 123
),
mediaExtractionConfiguration = list(
imageExtractionConfiguration = list(
imageExtractionStatus = "ENABLED"|"DISABLED"
),
audioExtractionConfiguration = list(
audioExtractionStatus = "ENABLED"|"DISABLED"
),
videoExtractionConfiguration = list(
videoExtractionStatus = "ENABLED"|"DISABLED"
)
),
connectorParameters = list(),
syncSchedule = list(
daily = list(),
weekly = list(
dayOfWeek = "SUNDAY"|"MONDAY"|"TUESDAY"|"WEDNESDAY"|"THURSDAY"|"FRIDAY"|"SATURDAY"
),
monthly = list(
dayOfMonth = list(
dayNumber = 123,
lastDayOfMonth = list()
)
)
)
),
s3Configuration = list(
bucketArn = "string",
inclusionPrefixes = list(
"string"
),
bucketOwnerAccountId = "string"
),
webConfiguration = list(
sourceConfiguration = list(
urlConfiguration = list(
seedUrls = list(
list(
url = "string"
)
)
)
),
crawlerConfiguration = list(
crawlerLimits = list(
rateLimit = 123,
maxPages = 123
),
inclusionFilters = list(
"string"
),
exclusionFilters = list(
"string"
),
scope = "HOST_ONLY"|"SUBDOMAINS",
userAgent = "string",
userAgentHeader = "string"
)
),
confluenceConfiguration = list(
sourceConfiguration = list(
hostUrl = "string",
hostType = "SAAS",
authType = "BASIC"|"OAUTH2_CLIENT_CREDENTIALS",
credentialsSecretArn = "string"
),
crawlerConfiguration = list(
filterConfiguration = list(
type = "PATTERN",
patternObjectFilter = list(
filters = list(
list(
objectType = "string",
inclusionFilters = list(
"string"
),
exclusionFilters = list(
"string"
)
)
)
)
)
)
),
salesforceConfiguration = list(
sourceConfiguration = list(
hostUrl = "string",
authType = "OAUTH2_CLIENT_CREDENTIALS",
credentialsSecretArn = "string"
),
crawlerConfiguration = list(
filterConfiguration = list(
type = "PATTERN",
patternObjectFilter = list(
filters = list(
list(
objectType = "string",
inclusionFilters = list(
"string"
),
exclusionFilters = list(
"string"
)
)
)
)
)
)
),
sharePointConfiguration = list(
sourceConfiguration = list(
tenantId = "string",
domain = "string",
siteUrls = list(
"string"
),
hostType = "ONLINE",
authType = "OAUTH2_CLIENT_CREDENTIALS"|"OAUTH2_SHAREPOINT_APP_ONLY_CLIENT_CREDENTIALS",
credentialsSecretArn = "string"
),
crawlerConfiguration = list(
filterConfiguration = list(
type = "PATTERN",
patternObjectFilter = list(
filters = list(
list(
objectType = "string",
inclusionFilters = list(
"string"
),
exclusionFilters = list(
"string"
)
)
)
)
)
)
)
),
serverSideEncryptionConfiguration = list(
kmsKeyArn = "string"
),
vectorIngestionConfiguration = list(
chunkingConfiguration = list(
chunkingStrategy = "FIXED_SIZE"|"NONE"|"HIERARCHICAL"|"SEMANTIC",
fixedSizeChunkingConfiguration = list(
maxTokens = 123,
overlapPercentage = 123
),
hierarchicalChunkingConfiguration = list(
levelConfigurations = list(
list(
maxTokens = 123
)
),
overlapTokens = 123
),
semanticChunkingConfiguration = list(
maxTokens = 123,
bufferSize = 123,
breakpointPercentileThreshold = 123
)
),
customTransformationConfiguration = list(
intermediateStorage = list(
s3Location = list(
uri = "string"
)
),
transformations = list(
list(
transformationFunction = list(
transformationLambdaConfiguration = list(
lambdaArn = "string"
)
),
stepToApply = "POST_CHUNKING"
)
)
),
parsingConfiguration = list(
parsingStrategy = "BEDROCK_FOUNDATION_MODEL"|"BEDROCK_DATA_AUTOMATION"|"SMART_PARSING"|"MULTI_MODAL_EMBEDDINGS",
bedrockFoundationModelConfiguration = list(
modelArn = "string",
parsingPrompt = list(
parsingPromptText = "string"
),
parsingModality = "MULTIMODAL"
),
bedrockDataAutomationConfiguration = list(
parsingModality = "MULTIMODAL"
)
),
contextEnrichmentConfiguration = list(
type = "BEDROCK_FOUNDATION_MODEL",
bedrockFoundationModelConfiguration = list(
enrichmentStrategyConfiguration = list(
method = "CHUNK_ENTITY_EXTRACTION"
),
modelArn = "string"
)
)
),
dataDeletionPolicy = "RETAIN"|"DELETE",
createdAt = as.POSIXct(
"2015-01-01"
),
updatedAt = as.POSIXct(
"2015-01-01"
),
failureReasons = list(
"string"
)
)
)
Request syntax¶
svc$create_data_source(
knowledgeBaseId = "string",
clientToken = "string",
name = "string",
description = "string",
dataSourceConfiguration = list(
type = "S3"|"WEB"|"CONFLUENCE"|"SALESFORCE"|"SHAREPOINT"|"CUSTOM"|"REDSHIFT_METADATA"|"MANAGED_KNOWLEDGE_BASE_CONNECTOR",
managedKnowledgeBaseConnectorConfiguration = list(
deletionProtectionConfiguration = list(
deletionProtectionStatus = "ENABLED"|"DISABLED",
deletionProtectionThreshold = 123
),
mediaExtractionConfiguration = list(
imageExtractionConfiguration = list(
imageExtractionStatus = "ENABLED"|"DISABLED"
),
audioExtractionConfiguration = list(
audioExtractionStatus = "ENABLED"|"DISABLED"
),
videoExtractionConfiguration = list(
videoExtractionStatus = "ENABLED"|"DISABLED"
)
),
connectorParameters = list(),
syncSchedule = list(
daily = list(),
weekly = list(
dayOfWeek = "SUNDAY"|"MONDAY"|"TUESDAY"|"WEDNESDAY"|"THURSDAY"|"FRIDAY"|"SATURDAY"
),
monthly = list(
dayOfMonth = list(
dayNumber = 123,
lastDayOfMonth = list()
)
)
)
),
s3Configuration = list(
bucketArn = "string",
inclusionPrefixes = list(
"string"
),
bucketOwnerAccountId = "string"
),
webConfiguration = list(
sourceConfiguration = list(
urlConfiguration = list(
seedUrls = list(
list(
url = "string"
)
)
)
),
crawlerConfiguration = list(
crawlerLimits = list(
rateLimit = 123,
maxPages = 123
),
inclusionFilters = list(
"string"
),
exclusionFilters = list(
"string"
),
scope = "HOST_ONLY"|"SUBDOMAINS",
userAgent = "string",
userAgentHeader = "string"
)
),
confluenceConfiguration = list(
sourceConfiguration = list(
hostUrl = "string",
hostType = "SAAS",
authType = "BASIC"|"OAUTH2_CLIENT_CREDENTIALS",
credentialsSecretArn = "string"
),
crawlerConfiguration = list(
filterConfiguration = list(
type = "PATTERN",
patternObjectFilter = list(
filters = list(
list(
objectType = "string",
inclusionFilters = list(
"string"
),
exclusionFilters = list(
"string"
)
)
)
)
)
)
),
salesforceConfiguration = list(
sourceConfiguration = list(
hostUrl = "string",
authType = "OAUTH2_CLIENT_CREDENTIALS",
credentialsSecretArn = "string"
),
crawlerConfiguration = list(
filterConfiguration = list(
type = "PATTERN",
patternObjectFilter = list(
filters = list(
list(
objectType = "string",
inclusionFilters = list(
"string"
),
exclusionFilters = list(
"string"
)
)
)
)
)
)
),
sharePointConfiguration = list(
sourceConfiguration = list(
tenantId = "string",
domain = "string",
siteUrls = list(
"string"
),
hostType = "ONLINE",
authType = "OAUTH2_CLIENT_CREDENTIALS"|"OAUTH2_SHAREPOINT_APP_ONLY_CLIENT_CREDENTIALS",
credentialsSecretArn = "string"
),
crawlerConfiguration = list(
filterConfiguration = list(
type = "PATTERN",
patternObjectFilter = list(
filters = list(
list(
objectType = "string",
inclusionFilters = list(
"string"
),
exclusionFilters = list(
"string"
)
)
)
)
)
)
)
),
dataDeletionPolicy = "RETAIN"|"DELETE",
serverSideEncryptionConfiguration = list(
kmsKeyArn = "string"
),
vectorIngestionConfiguration = list(
chunkingConfiguration = list(
chunkingStrategy = "FIXED_SIZE"|"NONE"|"HIERARCHICAL"|"SEMANTIC",
fixedSizeChunkingConfiguration = list(
maxTokens = 123,
overlapPercentage = 123
),
hierarchicalChunkingConfiguration = list(
levelConfigurations = list(
list(
maxTokens = 123
)
),
overlapTokens = 123
),
semanticChunkingConfiguration = list(
maxTokens = 123,
bufferSize = 123,
breakpointPercentileThreshold = 123
)
),
customTransformationConfiguration = list(
intermediateStorage = list(
s3Location = list(
uri = "string"
)
),
transformations = list(
list(
transformationFunction = list(
transformationLambdaConfiguration = list(
lambdaArn = "string"
)
),
stepToApply = "POST_CHUNKING"
)
)
),
parsingConfiguration = list(
parsingStrategy = "BEDROCK_FOUNDATION_MODEL"|"BEDROCK_DATA_AUTOMATION"|"SMART_PARSING"|"MULTI_MODAL_EMBEDDINGS",
bedrockFoundationModelConfiguration = list(
modelArn = "string",
parsingPrompt = list(
parsingPromptText = "string"
),
parsingModality = "MULTIMODAL"
),
bedrockDataAutomationConfiguration = list(
parsingModality = "MULTIMODAL"
)
),
contextEnrichmentConfiguration = list(
type = "BEDROCK_FOUNDATION_MODEL",
bedrockFoundationModelConfiguration = list(
enrichmentStrategyConfiguration = list(
method = "CHUNK_ENTITY_EXTRACTION"
),
modelArn = "string"
)
)
)
)