Source code for retrieval.content_retrieval

"""
import json, datetime, logging
from django_core.config import Config
from common.utils import send_request

"""

#logger = logging.getLogger(__name__)


[docs]def content_retrieval( original_query, email, #domain_url=Config.CONTENT_DOMAIN_URL, api_endpoint=Config.CONTENT_RETRIEVAL_ENDPOINT ): """ Retrieve content chunks relevant to the user query from content retrieval site. Note : The original definition is below. For the documentation purpose two parameters are not included due to a documentation defect def content_retrieval( original_query, email, domain_url=Config.CONTENT_DOMAIN_URL, api_endpoint=Config.CONTENT_RETRIEVAL_ENDPOINT ): """ response_map = {} retrieval_start = None retrieval_end = None response_map.update( { "retrieval_start": retrieval_start, "retrieval_end": retrieval_end, } ) retrieval_start = datetime.datetime.now() content_retrieval_url = f"{domain_url}{api_endpoint}" retrieved_content = None try: response = send_request( content_retrieval_url, data={"email": email, "query": original_query}, content_type="JSON", request_type="POST", total_retry=3, ) retrieved_content = json.loads(response.text) if response and response.status_code == 200 else None except Exception as error: logger.error(error, exc_info=True) retrieval_end = datetime.datetime.now() response_map.update( { "retrieved_chunks": retrieved_content, "retrieval_start": retrieval_start, "retrieval_end": retrieval_end, } ) return response_map