code: from typing import Union, Optional, List
  
  from llama_index.chat_engine.types import BaseChatEngine, ChatMode
  from llama_index.embeddings.utils import EmbedType
  from llama_index.chat_engine import ContextChatEngine
  from llama_index.memory import ChatMemoryBuffer
  
  from lyzr.base.llm import LyzrLLMFactory
  from lyzr.base.service import LyzrService
  from lyzr.base.vector_store import LyzrVectorStoreIndex
  from lyzr.base.retrievers import LyzrRetriever
  
  from lyzr.utils.document_reading import (
      read_pdf_as_documents,
      read_docx_as_documents,
      read_txt_as_documents,
      read_website_as_documents,
      read_webpage_as_documents,
      read_youtube_as_documents,
  )
  
  
  def pdf_chat_(
      input_dir: Optional[str] = None,
      input_files: Optional[List] = None,
      exclude_hidden: bool = True,
      filename_as_id: bool = True,
      recursive: bool = True,
      required_exts: Optional[List[str]] = None,
      system_prompt: str = None,
      query_wrapper_prompt: str = None,
      embed_model: Union[str, EmbedType] = "default",
      llm_params: dict = None,
      vector_store_params: dict = None,
      service_context_params: dict = None,
      chat_engine_params: dict = None,
      retriever_params: dict = None,
  ) -> BaseChatEngine:
      documents = read_pdf_as_documents(
          input_dir=input_dir,
          input_files=input_files,
          exclude_hidden=exclude_hidden,
          filename_as_id=filename_as_id,
          recursive=recursive,
          required_exts=required_exts,
      )
  
      llm_params = (
          {
              "model": "gpt-4-0125-preview",
              "temperature": 0,
          }
          if llm_params is None
          else llm_params
      )
      vector_store_params = (
          {"vector_store_type": "WeaviateVectorStore"}
          if vector_store_params is None
          else vector_store_params
      )
      service_context_params = (
          {} if service_context_params is None else service_context_params
      )
      chat_engine_params = {} if chat_engine_params is None else chat_engine_params
  
      retriever_params = (
          {"retriever_type": "QueryFusionRetriever"}
          if retriever_params is None
          else retriever_params
      )
  
      llm = LyzrLLMFactory.from_defaults(**llm_params)
      service_context = LyzrService.from_defaults(
          llm=llm,
          embed_model=embed_model,
          system_prompt=system_prompt,
          query_wrapper_prompt=query_wrapper_prompt,
          **service_context_params,
      )
  
      vector_store_index = LyzrVectorStoreIndex.from_defaults(
          **vector_store_params, documents=documents, service_context=service_context
      )
  
      retriever = LyzrRetriever.from_defaults(
          **retriever_params, base_index=vector_store_index
      )
  
      memory = ChatMemoryBuffer.from_defaults(token_limit=4000)
  
      chat_engine = ContextChatEngine(
          llm=llm,
          memory=memory,
          retriever=retriever,
          prefix_messages=list(),
          **chat_engine_params,
      )
  
      return chat_engine
  
  
  def txt_chat_(
      input_dir: Optional[str] = None,
      input_files: Optional[List] = None,
      exclude_hidden: bool = True,
      filename_as_id: bool = True,
      recursive: bool = True,
      required_exts: Optional[List[str]] = None,
      system_prompt: str = None,
      query_wrapper_prompt: str = None,
      embed_model: Union[str, EmbedType] = "default",
      llm_params: dict = None,
      vector_store_params: dict = None,
      service_context_params: dict = None,
      chat_engine_params: dict = None,
      retriever_params: dict = None,
  ) -> BaseChatEngine:
      documents = read_txt_as_documents(
          input_dir=input_dir,
          input_files=input_files,
          exclude_hidden=exclude_hidden,
          filename_as_id=filename_as_id,
          recursive=recursive,
          required_exts=required_exts,
      )
  
      llm_params = (
          {
              "model": "gpt-4-0125-preview",
              "temperature": 0,
          }
          if llm_params is None
          else llm_params
      )
      vector_store_params = (
          {"vector_store_type": "WeaviateVectorStore"}
          if vector_store_params is None
          else vector_store_params
      )
      service_context_params = (
          {} if service_context_params is None else service_context_params
      )
      chat_engine_params = {} if chat_engine_params is None else chat_engine_params
  
      retriever_params = (
          {"retriever_type": "QueryFusionRetriever"}
          if retriever_params is None
          else retriever_params
      )
  
      llm = LyzrLLMFactory.from_defaults(**llm_params)
      service_context = LyzrService.from_defaults(
          llm=llm,
          embed_model=embed_model,
          system_prompt=system_prompt,
          query_wrapper_prompt=query_wrapper_prompt,
          **service_context_params,
      )
  
      vector_store_index = LyzrVectorStoreIndex.from_defaults(
          **vector_store_params, documents=documents, service_context=service_context
      )
  
      retriever = LyzrRetriever.from_defaults(
          **retriever_params, base_index=vector_store_index
      )
  
      memory = ChatMemoryBuffer.from_defaults(token_limit=4000)
  
      chat_engine = ContextChatEngine(
          llm=llm,
          memory=memory,
          retriever=retriever,
          prefix_messages=list(),
          **chat_engine_params,
      )
  
      return chat_engine
  
  
  def docx_chat_(
      input_dir: Optional[str] = None,
      input_files: Optional[List] = None,
      exclude_hidden: bool = True,
      filename_as_id: bool = True,
      recursive: bool = True,
      required_exts: Optional[List[str]] = None,
      system_prompt: str = None,
      query_wrapper_prompt: str = None,
      embed_model: Union[str, EmbedType] = "default",
      llm_params: dict = None,
      vector_store_params: dict = None,
      service_context_params: dict = None,
      chat_engine_params: dict = None,
      retriever_params: dict = None,
  ) -> BaseChatEngine:
      documents = read_docx_as_documents(
          input_dir=input_dir,
          input_files=input_files,
          exclude_hidden=exclude_hidden,
          filename_as_id=filename_as_id,
          recursive=recursive,
          required_exts=required_exts,
      )
  
      llm_params = (
          {
              "model": "gpt-4-0125-preview",
              "temperature": 0,
          }
          if llm_params is None
          else llm_params
      )
      vector_store_params = (
          {"vector_store_type": "WeaviateVectorStore"}
          if vector_store_params is None
          else vector_store_params
      )
      service_context_params = (
          {} if service_context_params is None else service_context_params
      )
      chat_engine_params = {} if chat_engine_params is None else chat_engine_params
  
      retriever_params = (
          {"retriever_type": "QueryFusionRetriever"}
          if retriever_params is None
          else retriever_params
      )
  
      llm = LyzrLLMFactory.from_defaults(**llm_params)
      service_context = LyzrService.from_defaults(
          llm=llm,
          embed_model=embed_model,
          system_prompt=system_prompt,
          query_wrapper_prompt=query_wrapper_prompt,
          **service_context_params,
      )
  
      vector_store_index = LyzrVectorStoreIndex.from_defaults(
          **vector_store_params, documents=documents, service_context=service_context
      )
  
      retriever = LyzrRetriever.from_defaults(
          **retriever_params, base_index=vector_store_index
      )
  
      memory = ChatMemoryBuffer.from_defaults(token_limit=4000)
  
      chat_engine = ContextChatEngine(
          llm=llm,
          memory=memory,
          retriever=retriever,
          prefix_messages=list(),
          **chat_engine_params,
      )
  
      return chat_engine
  
  
  def webpage_chat_(
      url: str = None,
      system_prompt: str = None,
      query_wrapper_prompt: str = None,
      embed_model: Union[str, EmbedType] = "default",
      llm_params: dict = None,
      vector_store_params: dict = None,
      service_context_params: dict = None,
      chat_engine_params: dict = None,
      retriever_params: dict = None,
  ) -> BaseChatEngine:
      documents = read_webpage_as_documents(
          url=url,
      )
  
      llm_params = (
          {
              "model": "gpt-4-0125-preview",
              "temperature": 0,
          }
          if llm_params is None
          else llm_params
      )
      vector_store_params = (
          {"vector_store_type": "WeaviateVectorStore"}
          if vector_store_params is None
          else vector_store_params
      )
      service_context_params = (
          {} if service_context_params is None else service_context_params
      )
      chat_engine_params = {} if chat_engine_params is None else chat_engine_params
  
      retriever_params = (
          {"retriever_type": "QueryFusionRetriever"}
          if retriever_params is None
          else retriever_params
      )
  
      llm = LyzrLLMFactory.from_defaults(**llm_params)
      service_context = LyzrService.from_defaults(
          llm=llm,
          embed_model=embed_model,
          system_prompt=system_prompt,
          query_wrapper_prompt=query_wrapper_prompt,
          **service_context_params,
      )
  
      vector_store_index = LyzrVectorStoreIndex.from_defaults(
          **vector_store_params, documents=documents, service_context=service_context
      )
  
      retriever = LyzrRetriever.from_defaults(
          **retriever_params, base_index=vector_store_index
      )
  
      memory = ChatMemoryBuffer.from_defaults(token_limit=4000)
  
      chat_engine = ContextChatEngine(
          llm=llm,
          memory=memory,
          retriever=retriever,
          prefix_messages=list(),
          **chat_engine_params,
      )
  
      return chat_engine
  
  
  def website_chat_(
      url: str = None,
      system_prompt: str = None,
      query_wrapper_prompt: str = None,
      embed_model: Union[str, EmbedType] = "default",
      llm_params: dict = None,
      vector_store_params: dict = None,
      service_context_params: dict = None,
      chat_engine_params: dict = None,
      retriever_params: dict = None,
  ) -> BaseChatEngine:
      documents = read_website_as_documents(
          url=url,
      )
  
      llm_params = (
          {
              "model": "gpt-4-0125-preview",
              "temperature": 0,
          }
          if llm_params is None
          else llm_params
      )
      vector_store_params = (
          {"vector_store_type": "WeaviateVectorStore"}
          if vector_store_params is None
          else vector_store_params
      )
      service_context_params = (
          {} if service_context_params is None else service_context_params
      )
      chat_engine_params = {} if chat_engine_params is None else chat_engine_params
  
      retriever_params = (
          {"retriever_type": "QueryFusionRetriever"}
          if retriever_params is None
          else retriever_params
      )
  
      llm = LyzrLLMFactory.from_defaults(**llm_params)
      service_context = LyzrService.from_defaults(
          llm=llm,
          embed_model=embed_model,
          system_prompt=system_prompt,
          query_wrapper_prompt=query_wrapper_prompt,
          **service_context_params,
      )
  
      vector_store_index = LyzrVectorStoreIndex.from_defaults(
          **vector_store_params, documents=documents, service_context=service_context
      )
  
      retriever = LyzrRetriever.from_defaults(
          **retriever_params, base_index=vector_store_index
      )
  
      memory = ChatMemoryBuffer.from_defaults(token_limit=4000)
  
      chat_engine = ContextChatEngine(
          llm=llm,
          memory=memory,
          retriever=retriever,
          prefix_messages=list(),
          **chat_engine_params,
      )
  
      return chat_engine
  
  
  def youtube_chat_(
      urls: List[str] = None,
      system_prompt: str = None,
      query_wrapper_prompt: str = None,
      embed_model: Union[str, EmbedType] = "default",
      llm_params: dict = None,
      vector_store_params: dict = None,
      service_context_params: dict = None,
      chat_engine_params: dict = None,
      retriever_params: dict = None,
  ) -> BaseChatEngine:
      documents = read_youtube_as_documents(
          urls=urls,
      )
  
      llm_params = (
          {
              "model": "gpt-4-0125-preview",
              "temperature": 0,
          }
          if llm_params is None
          else llm_params
      )
      vector_store_params = (
          {"vector_store_type": "WeaviateVectorStore"}
          if vector_store_params is None
          else vector_store_params
      )
      service_context_params = (
          {} if service_context_params is None else service_context_params
      )
      chat_engine_params = {} if chat_engine_params is None else chat_engine_params
  
      retriever_params = (
          {"retriever_type": "QueryFusionRetriever"}
          if retriever_params is None
          else retriever_params
      )
  
      llm = LyzrLLMFactory.from_defaults(**llm_params)
      service_context = LyzrService.from_defaults(
          llm=llm,
          embed_model=embed_model,
          system_prompt=system_prompt,
          query_wrapper_prompt=query_wrapper_prompt,
          **service_context_params,
      )
  
      vector_store_index = LyzrVectorStoreIndex.from_defaults(
          **vector_store_params, documents=documents, service_context=service_context
      )
  
      retriever = LyzrRetriever.from_defaults(
          **retriever_params, base_index=vector_store_index
      )
  
      memory = ChatMemoryBuffer.from_defaults(token_limit=4000)
  
      chat_engine = ContextChatEngine(
          llm=llm,
          memory=memory,
          retriever=retriever,
          prefix_messages=list(),
          **chat_engine_params,
      )
  
      return chat_engine
  
apis: llama_index.memory.ChatMemoryBuffer.from_defaults
extract_api: [((1242, 1430), 'lyzr.utils.document_reading.read_pdf_as_documents', 'read_pdf_as_documents', ([], {'input_dir': 'input_dir', 'input_files': 'input_files', 'exclude_hidden': 'exclude_hidden', 'filename_as_id': 'filename_as_id', 'recursive': 'recursive', 'required_exts': 'required_exts'}), '(input_dir=input_dir, input_files=input_files,\n    exclude_hidden=exclude_hidden, filename_as_id=filename_as_id, recursive\n    =recursive, required_exts=required_exts)\n', (1263, 1430), False, 'from lyzr.utils.document_reading import read_pdf_as_documents, read_docx_as_documents, read_txt_as_documents, read_website_as_documents, read_webpage_as_documents, read_youtube_as_documents\n'), ((2161, 2203), 'lyzr.base.llm.LyzrLLMFactory.from_defaults', 'LyzrLLMFactory.from_defaults', ([], {}), '(**llm_params)\n', (2189, 2203), False, 'from lyzr.base.llm import LyzrLLMFactory\n'), ((2226, 2393), 'lyzr.base.service.LyzrService.from_defaults', 'LyzrService.from_defaults', ([], {'llm': 'llm', 'embed_model': 'embed_model', 'system_prompt': 'system_prompt', 'query_wrapper_prompt': 'query_wrapper_prompt'}), '(llm=llm, embed_model=embed_model, system_prompt=\n    system_prompt, query_wrapper_prompt=query_wrapper_prompt, **\n    service_context_params)\n', (2251, 2393), False, 'from lyzr.base.service import LyzrService\n'), ((2457, 2573), 'lyzr.base.vector_store.LyzrVectorStoreIndex.from_defaults', 'LyzrVectorStoreIndex.from_defaults', ([], {'documents': 'documents', 'service_context': 'service_context'}), '(**vector_store_params, documents=\n    documents, service_context=service_context)\n', (2491, 2573), False, 'from lyzr.base.vector_store import LyzrVectorStoreIndex\n'), ((2600, 2678), 'lyzr.base.retrievers.LyzrRetriever.from_defaults', 'LyzrRetriever.from_defaults', ([], {'base_index': 'vector_store_index'}), '(**retriever_params, base_index=vector_store_index)\n', (2627, 2678), False, 'from lyzr.base.retrievers import LyzrRetriever\n'), ((2707, 2755), 'llama_index.memory.ChatMemoryBuffer.from_defaults', 'ChatMemoryBuffer.from_defaults', ([], {'token_limit': '(4000)'}), '(token_limit=4000)\n', (2737, 2755), False, 'from llama_index.memory import ChatMemoryBuffer\n'), ((3528, 3716), 'lyzr.utils.document_reading.read_txt_as_documents', 'read_txt_as_documents', ([], {'input_dir': 'input_dir', 'input_files': 'input_files', 'exclude_hidden': 'exclude_hidden', 'filename_as_id': 'filename_as_id', 'recursive': 'recursive', 'required_exts': 'required_exts'}), '(input_dir=input_dir, input_files=input_files,\n    exclude_hidden=exclude_hidden, filename_as_id=filename_as_id, recursive\n    =recursive, required_exts=required_exts)\n', (3549, 3716), False, 'from lyzr.utils.document_reading import read_pdf_as_documents, read_docx_as_documents, read_txt_as_documents, read_website_as_documents, read_webpage_as_documents, read_youtube_as_documents\n'), ((4447, 4489), 'lyzr.base.llm.LyzrLLMFactory.from_defaults', 'LyzrLLMFactory.from_defaults', ([], {}), '(**llm_params)\n', (4475, 4489), False, 'from lyzr.base.llm import LyzrLLMFactory\n'), ((4512, 4679), 'lyzr.base.service.LyzrService.from_defaults', 'LyzrService.from_defaults', ([], {'llm': 'llm', 'embed_model': 'embed_model', 'system_prompt': 'system_prompt', 'query_wrapper_prompt': 'query_wrapper_prompt'}), '(llm=llm, embed_model=embed_model, system_prompt=\n    system_prompt, query_wrapper_prompt=query_wrapper_prompt, **\n    service_context_params)\n', (4537, 4679), False, 'from lyzr.base.service import LyzrService\n'), ((4743, 4859), 'lyzr.base.vector_store.LyzrVectorStoreIndex.from_defaults', 'LyzrVectorStoreIndex.from_defaults', ([], {'documents': 'documents', 'service_context': 'service_context'}), '(**vector_store_params, documents=\n    documents, service_context=service_context)\n', (4777, 4859), False, 'from lyzr.base.vector_store import LyzrVectorStoreIndex\n'), ((4886, 4964), 'lyzr.base.retrievers.LyzrRetriever.from_defaults', 'LyzrRetriever.from_defaults', ([], {'base_index': 'vector_store_index'}), '(**retriever_params, base_index=vector_store_index)\n', (4913, 4964), False, 'from lyzr.base.retrievers import LyzrRetriever\n'), ((4993, 5041), 'llama_index.memory.ChatMemoryBuffer.from_defaults', 'ChatMemoryBuffer.from_defaults', ([], {'token_limit': '(4000)'}), '(token_limit=4000)\n', (5023, 5041), False, 'from llama_index.memory import ChatMemoryBuffer\n'), ((5815, 6004), 'lyzr.utils.document_reading.read_docx_as_documents', 'read_docx_as_documents', ([], {'input_dir': 'input_dir', 'input_files': 'input_files', 'exclude_hidden': 'exclude_hidden', 'filename_as_id': 'filename_as_id', 'recursive': 'recursive', 'required_exts': 'required_exts'}), '(input_dir=input_dir, input_files=input_files,\n    exclude_hidden=exclude_hidden, filename_as_id=filename_as_id, recursive\n    =recursive, required_exts=required_exts)\n', (5837, 6004), False, 'from lyzr.utils.document_reading import read_pdf_as_documents, read_docx_as_documents, read_txt_as_documents, read_website_as_documents, read_webpage_as_documents, read_youtube_as_documents\n'), ((6735, 6777), 'lyzr.base.llm.LyzrLLMFactory.from_defaults', 'LyzrLLMFactory.from_defaults', ([], {}), '(**llm_params)\n', (6763, 6777), False, 'from lyzr.base.llm import LyzrLLMFactory\n'), ((6800, 6967), 'lyzr.base.service.LyzrService.from_defaults', 'LyzrService.from_defaults', ([], {'llm': 'llm', 'embed_model': 'embed_model', 'system_prompt': 'system_prompt', 'query_wrapper_prompt': 'query_wrapper_prompt'}), '(llm=llm, embed_model=embed_model, system_prompt=\n    system_prompt, query_wrapper_prompt=query_wrapper_prompt, **\n    service_context_params)\n', (6825, 6967), False, 'from lyzr.base.service import LyzrService\n'), ((7031, 7147), 'lyzr.base.vector_store.LyzrVectorStoreIndex.from_defaults', 'LyzrVectorStoreIndex.from_defaults', ([], {'documents': 'documents', 'service_context': 'service_context'}), '(**vector_store_params, documents=\n    documents, service_context=service_context)\n', (7065, 7147), False, 'from lyzr.base.vector_store import LyzrVectorStoreIndex\n'), ((7174, 7252), 'lyzr.base.retrievers.LyzrRetriever.from_defaults', 'LyzrRetriever.from_defaults', ([], {'base_index': 'vector_store_index'}), '(**retriever_params, base_index=vector_store_index)\n', (7201, 7252), False, 'from lyzr.base.retrievers import LyzrRetriever\n'), ((7281, 7329), 'llama_index.memory.ChatMemoryBuffer.from_defaults', 'ChatMemoryBuffer.from_defaults', ([], {'token_limit': '(4000)'}), '(token_limit=4000)\n', (7311, 7329), False, 'from llama_index.memory import ChatMemoryBuffer\n'), ((7909, 7943), 'lyzr.utils.document_reading.read_webpage_as_documents', 'read_webpage_as_documents', ([], {'url': 'url'}), '(url=url)\n', (7934, 7943), False, 'from lyzr.utils.document_reading import read_pdf_as_documents, read_docx_as_documents, read_txt_as_documents, read_website_as_documents, read_webpage_as_documents, read_youtube_as_documents\n'), ((8643, 8685), 'lyzr.base.llm.LyzrLLMFactory.from_defaults', 'LyzrLLMFactory.from_defaults', ([], {}), '(**llm_params)\n', (8671, 8685), False, 'from lyzr.base.llm import LyzrLLMFactory\n'), ((8708, 8875), 'lyzr.base.service.LyzrService.from_defaults', 'LyzrService.from_defaults', ([], {'llm': 'llm', 'embed_model': 'embed_model', 'system_prompt': 'system_prompt', 'query_wrapper_prompt': 'query_wrapper_prompt'}), '(llm=llm, embed_model=embed_model, system_prompt=\n    system_prompt, query_wrapper_prompt=query_wrapper_prompt, **\n    service_context_params)\n', (8733, 8875), False, 'from lyzr.base.service import LyzrService\n'), ((8939, 9055), 'lyzr.base.vector_store.LyzrVectorStoreIndex.from_defaults', 'LyzrVectorStoreIndex.from_defaults', ([], {'documents': 'documents', 'service_context': 'service_context'}), '(**vector_store_params, documents=\n    documents, service_context=service_context)\n', (8973, 9055), False, 'from lyzr.base.vector_store import LyzrVectorStoreIndex\n'), ((9082, 9160), 'lyzr.base.retrievers.LyzrRetriever.from_defaults', 'LyzrRetriever.from_defaults', ([], {'base_index': 'vector_store_index'}), '(**retriever_params, base_index=vector_store_index)\n', (9109, 9160), False, 'from lyzr.base.retrievers import LyzrRetriever\n'), ((9189, 9237), 'llama_index.memory.ChatMemoryBuffer.from_defaults', 'ChatMemoryBuffer.from_defaults', ([], {'token_limit': '(4000)'}), '(token_limit=4000)\n', (9219, 9237), False, 'from llama_index.memory import ChatMemoryBuffer\n'), ((9817, 9851), 'lyzr.utils.document_reading.read_website_as_documents', 'read_website_as_documents', ([], {'url': 'url'}), '(url=url)\n', (9842, 9851), False, 'from lyzr.utils.document_reading import read_pdf_as_documents, read_docx_as_documents, read_txt_as_documents, read_website_as_documents, read_webpage_as_documents, read_youtube_as_documents\n'), ((10551, 10593), 'lyzr.base.llm.LyzrLLMFactory.from_defaults', 'LyzrLLMFactory.from_defaults', ([], {}), '(**llm_params)\n', (10579, 10593), False, 'from lyzr.base.llm import LyzrLLMFactory\n'), ((10616, 10783), 'lyzr.base.service.LyzrService.from_defaults', 'LyzrService.from_defaults', ([], {'llm': 'llm', 'embed_model': 'embed_model', 'system_prompt': 'system_prompt', 'query_wrapper_prompt': 'query_wrapper_prompt'}), '(llm=llm, embed_model=embed_model, system_prompt=\n    system_prompt, query_wrapper_prompt=query_wrapper_prompt, **\n    service_context_params)\n', (10641, 10783), False, 'from lyzr.base.service import LyzrService\n'), ((10847, 10963), 'lyzr.base.vector_store.LyzrVectorStoreIndex.from_defaults', 'LyzrVectorStoreIndex.from_defaults', ([], {'documents': 'documents', 'service_context': 'service_context'}), '(**vector_store_params, documents=\n    documents, service_context=service_context)\n', (10881, 10963), False, 'from lyzr.base.vector_store import LyzrVectorStoreIndex\n'), ((10990, 11068), 'lyzr.base.retrievers.LyzrRetriever.from_defaults', 'LyzrRetriever.from_defaults', ([], {'base_index': 'vector_store_index'}), '(**retriever_params, base_index=vector_store_index)\n', (11017, 11068), False, 'from lyzr.base.retrievers import LyzrRetriever\n'), ((11097, 11145), 'llama_index.memory.ChatMemoryBuffer.from_defaults', 'ChatMemoryBuffer.from_defaults', ([], {'token_limit': '(4000)'}), '(token_limit=4000)\n', (11127, 11145), False, 'from llama_index.memory import ChatMemoryBuffer\n'), ((11732, 11768), 'lyzr.utils.document_reading.read_youtube_as_documents', 'read_youtube_as_documents', ([], {'urls': 'urls'}), '(urls=urls)\n', (11757, 11768), False, 'from lyzr.utils.document_reading import read_pdf_as_documents, read_docx_as_documents, read_txt_as_documents, read_website_as_documents, read_webpage_as_documents, read_youtube_as_documents\n'), ((12468, 12510), 'lyzr.base.llm.LyzrLLMFactory.from_defaults', 'LyzrLLMFactory.from_defaults', ([], {}), '(**llm_params)\n', (12496, 12510), False, 'from lyzr.base.llm import LyzrLLMFactory\n'), ((12533, 12700), 'lyzr.base.service.LyzrService.from_defaults', 'LyzrService.from_defaults', ([], {'llm': 'llm', 'embed_model': 'embed_model', 'system_prompt': 'system_prompt', 'query_wrapper_prompt': 'query_wrapper_prompt'}), '(llm=llm, embed_model=embed_model, system_prompt=\n    system_prompt, query_wrapper_prompt=query_wrapper_prompt, **\n    service_context_params)\n', (12558, 12700), False, 'from lyzr.base.service import LyzrService\n'), ((12764, 12880), 'lyzr.base.vector_store.LyzrVectorStoreIndex.from_defaults', 'LyzrVectorStoreIndex.from_defaults', ([], {'documents': 'documents', 'service_context': 'service_context'}), '(**vector_store_params, documents=\n    documents, service_context=service_context)\n', (12798, 12880), False, 'from lyzr.base.vector_store import LyzrVectorStoreIndex\n'), ((12907, 12985), 'lyzr.base.retrievers.LyzrRetriever.from_defaults', 'LyzrRetriever.from_defaults', ([], {'base_index': 'vector_store_index'}), '(**retriever_params, base_index=vector_store_index)\n', (12934, 12985), False, 'from lyzr.base.retrievers import LyzrRetriever\n'), ((13014, 13062), 'llama_index.memory.ChatMemoryBuffer.from_defaults', 'ChatMemoryBuffer.from_defaults', ([], {'token_limit': '(4000)'}), '(token_limit=4000)\n', (13044, 13062), False, 'from llama_index.memory import ChatMemoryBuffer\n')]