in clients/client-bedrock/src/protocols/Aws_restJson1.ts [3489:3740]
retrieveAndGenerateConfig: se_RetrieveAndGenerateConfiguration(value, context),
}),
retrieveConfig: (value) => ({ retrieveConfig: se_RetrieveConfig(value, context) }),
_: (name, value) => ({ [name]: value } as any),
});
};
/**
* serializeAws_restJson1KnowledgeBaseRetrievalConfiguration
*/
const se_KnowledgeBaseRetrievalConfiguration = (
input: KnowledgeBaseRetrievalConfiguration,
context: __SerdeContext
): any => {
return take(input, {
vectorSearchConfiguration: (_) => se_KnowledgeBaseVectorSearchConfiguration(_, context),
});
};
/**
* serializeAws_restJson1KnowledgeBaseRetrieveAndGenerateConfiguration
*/
const se_KnowledgeBaseRetrieveAndGenerateConfiguration = (
input: KnowledgeBaseRetrieveAndGenerateConfiguration,
context: __SerdeContext
): any => {
return take(input, {
generationConfiguration: (_) => se_GenerationConfiguration(_, context),
knowledgeBaseId: [],
modelArn: [],
orchestrationConfiguration: _json,
retrievalConfiguration: (_) => se_KnowledgeBaseRetrievalConfiguration(_, context),
});
};
/**
* serializeAws_restJson1KnowledgeBaseVectorSearchConfiguration
*/
const se_KnowledgeBaseVectorSearchConfiguration = (
input: KnowledgeBaseVectorSearchConfiguration,
context: __SerdeContext
): any => {
return take(input, {
filter: (_) => se_RetrievalFilter(_, context),
numberOfResults: [],
overrideSearchType: [],
});
};
// se_LoggingConfig omitted.
// se_ModelCustomizationHyperParameters omitted.
// se_ModelDataSource omitted.
// se_ModelInvocationJobInputDataConfig omitted.
// se_ModelInvocationJobOutputDataConfig omitted.
// se_ModelInvocationJobS3InputDataConfig omitted.
// se_ModelInvocationJobS3OutputDataConfig omitted.
// se_OrchestrationConfiguration omitted.
// se_OutputDataConfig omitted.
// se_PerformanceConfiguration omitted.
// se_PromptRouterTargetModel omitted.
// se_PromptRouterTargetModels omitted.
// se_PromptTemplate omitted.
// se_QueryTransformationConfiguration omitted.
/**
* serializeAws_restJson1RAGConfig
*/
const se_RAGConfig = (input: RAGConfig, context: __SerdeContext): any => {
return RAGConfig.visit(input, {
knowledgeBaseConfig: (value) => ({ knowledgeBaseConfig: se_KnowledgeBaseConfig(value, context) }),
precomputedRagSourceConfig: (value) => ({ precomputedRagSourceConfig: _json(value) }),
_: (name, value) => ({ [name]: value } as any),
});
};
/**
* serializeAws_restJson1RagConfigs
*/
const se_RagConfigs = (input: RAGConfig[], context: __SerdeContext): any => {
return input
.filter((e: any) => e != null)
.map((entry) => {
return se_RAGConfig(entry, context);
});
};
// se_RAGStopSequences omitted.
/**
* serializeAws_restJson1RatingScale
*/
const se_RatingScale = (input: RatingScaleItem[], context: __SerdeContext): any => {
return input
.filter((e: any) => e != null)
.map((entry) => {
return se_RatingScaleItem(entry, context);
});
};
/**
* serializeAws_restJson1RatingScaleItem
*/
const se_RatingScaleItem = (input: RatingScaleItem, context: __SerdeContext): any => {
return take(input, {
definition: [],
value: (_) => se_RatingScaleItemValue(_, context),
});
};
/**
* serializeAws_restJson1RatingScaleItemValue
*/
const se_RatingScaleItemValue = (input: RatingScaleItemValue, context: __SerdeContext): any => {
return RatingScaleItemValue.visit(input, {
floatValue: (value) => ({ floatValue: __serializeFloat(value) }),
stringValue: (value) => ({ stringValue: value }),
_: (name, value) => ({ [name]: value } as any),
});
};
// se_RequestMetadataBaseFilters omitted.
// se_RequestMetadataFilters omitted.
// se_RequestMetadataFiltersList omitted.
// se_RequestMetadataMap omitted.
/**
* serializeAws_restJson1RetrievalFilter
*/
const se_RetrievalFilter = (input: RetrievalFilter, context: __SerdeContext): any => {
return RetrievalFilter.visit(input, {
andAll: (value) => ({ andAll: se_RetrievalFilterList(value, context) }),
equals: (value) => ({ equals: se_FilterAttribute(value, context) }),
greaterThan: (value) => ({ greaterThan: se_FilterAttribute(value, context) }),
greaterThanOrEquals: (value) => ({ greaterThanOrEquals: se_FilterAttribute(value, context) }),
in: (value) => ({ in: se_FilterAttribute(value, context) }),
lessThan: (value) => ({ lessThan: se_FilterAttribute(value, context) }),
lessThanOrEquals: (value) => ({ lessThanOrEquals: se_FilterAttribute(value, context) }),
listContains: (value) => ({ listContains: se_FilterAttribute(value, context) }),
notEquals: (value) => ({ notEquals: se_FilterAttribute(value, context) }),
notIn: (value) => ({ notIn: se_FilterAttribute(value, context) }),
orAll: (value) => ({ orAll: se_RetrievalFilterList(value, context) }),
startsWith: (value) => ({ startsWith: se_FilterAttribute(value, context) }),
stringContains: (value) => ({ stringContains: se_FilterAttribute(value, context) }),
_: (name, value) => ({ [name]: value } as any),
});
};
/**
* serializeAws_restJson1RetrievalFilterList
*/
const se_RetrievalFilterList = (input: RetrievalFilter[], context: __SerdeContext): any => {
return input
.filter((e: any) => e != null)
.map((entry) => {
return se_RetrievalFilter(entry, context);
});
};
/**
* serializeAws_restJson1RetrieveAndGenerateConfiguration
*/
const se_RetrieveAndGenerateConfiguration = (input: RetrieveAndGenerateConfiguration, context: __SerdeContext): any => {
return take(input, {
externalSourcesConfiguration: (_) => se_ExternalSourcesRetrieveAndGenerateConfiguration(_, context),
knowledgeBaseConfiguration: (_) => se_KnowledgeBaseRetrieveAndGenerateConfiguration(_, context),
type: [],
});
};
/**
* serializeAws_restJson1RetrieveConfig
*/
const se_RetrieveConfig = (input: RetrieveConfig, context: __SerdeContext): any => {
return take(input, {
knowledgeBaseId: [],
knowledgeBaseRetrievalConfiguration: (_) => se_KnowledgeBaseRetrievalConfiguration(_, context),
});
};
/**
* serializeAws_restJson1RoutingCriteria
*/
const se_RoutingCriteria = (input: RoutingCriteria, context: __SerdeContext): any => {
return take(input, {
responseQualityDifference: __serializeFloat,
});
};
// se_S3Config omitted.
// se_S3DataSource omitted.
// se_S3ObjectDoc omitted.
// se_SageMakerEndpoint omitted.
// se_SecurityGroupIds omitted.
// se_SubnetIds omitted.
// se_Tag omitted.
// se_TagKeyList omitted.
// se_TagList omitted.
// se_TeacherModelConfig omitted.
/**
* serializeAws_restJson1TextInferenceConfig
*/
const se_TextInferenceConfig = (input: TextInferenceConfig, context: __SerdeContext): any => {
return take(input, {
maxTokens: [],
stopSequences: _json,
temperature: __serializeFloat,
topP: __serializeFloat,
});
};
// se_TrainingDataConfig omitted.
// se_ValidationDataConfig omitted.
// se_Validator omitted.
// se_Validators omitted.
// se_VpcConfig omitted.
/**
* deserializeAws_restJson1AdditionalModelRequestFields
*/
const de_AdditionalModelRequestFields = (output: any, context: __SerdeContext): Record<string, __DocumentType> => {
return Object.entries(output).reduce((acc: Record<string, __DocumentType>, [key, value]: [string, any]) => {
if (value === null) {