wdrdZddlmZddlmZmZmZmZddlm Z m Z ddl m Z m Z ddlZGdd e ZdS) z7Chain for question-answering against a vector database.) annotations)AnyDictListOptional) BaseRetrieverDocument) kendra_query kendra_clientNcreZdZUdZded< ded< ded< ded< d ed < dd ZddZdfd ZxZS)KendraIndexRetrieverzRetriever to retrieve documents from Amazon Kendra index. Example: .. code-block:: python kendraIndexRetriever = KendraIndexRetriever() str kendraindex awsregionintkboolreturn_source_documentsrkclientFc|||_||_||_||_t |j|j|_dSN)rrrrr r)selfrrrrs `/Users/tsaris/Documents/GitHub/genai-id-lab4-prep/lab-4/rag_app/kendra/kendra_index_retriever.py__init__zKendraIndexRetriever.__init__ s:&"'>$$T%5t~FF queryreturnList[Document]cHt|j||j|j}|S)zvRun search on Kendra index and get top k documents docs = get_relevant_documents('This is my query') )r rrr)rrdocss rget_relevant_documentsz+KendraIndexRetriever.get_relevant_documents's# DL%9IJJ rcVKt|d{VSr)superaget_relevant_documents)rr __class__s rr&z,KendraIndexRetriever.aget_relevant_documents/s1WW44U;;;;;;;;;r)rF)rrrr ) __name__ __module__ __qualname____doc____annotations__rr#r& __classcell__)r's@rrr sNNN( FFF+!!!!2LLL$GGGG<<<<<<<<<r4s=="""""",,,,,,,,,,,,4444444477777777 %<%<%<%<%<=%<%<%<%<%