diff --git a/libs/langchain/langchain/retrievers/kendra.py b/libs/langchain/langchain/retrievers/kendra.py index 344a2bf1214..c1656a3a6cb 100644 --- a/libs/langchain/langchain/retrievers/kendra.py +++ b/libs/langchain/langchain/retrievers/kendra.py @@ -304,6 +304,9 @@ class AmazonKendraRetriever(BaseRetriever): client: boto3 client for Kendra + user_context: Provides information about the user context + See: https://docs.aws.amazon.com/kendra/latest/APIReference + Example: .. code-block:: python @@ -320,6 +323,7 @@ class AmazonKendraRetriever(BaseRetriever): attribute_filter: Optional[Dict] = None page_content_formatter: Callable[[ResultItem], str] = combined_text client: Any + user_context: Optional[Dict] = None @validator("top_k") def validate_top_k(cls, value: int) -> int: @@ -368,6 +372,8 @@ class AmazonKendraRetriever(BaseRetriever): } if self.attribute_filter is not None: kendra_kwargs["AttributeFilter"] = self.attribute_filter + if self.user_context is not None: + kendra_kwargs["UserContext"] = self.user_context response = self.client.retrieve(**kendra_kwargs) r_result = RetrieveResult.parse_obj(response)