from typing import List, Literal # Settings for LLMs DEFAULT_MAX_INPUT_TOKENS: int = 5800 # The LLM will truncate the input messages if they exceed this limit # Settings for agents MAX_LLM_CALL_PER_RUN: int = 8 # Settings for tools DEFAULT_WORKSPACE: str = 'workspace' # Settings for RAG DEFAULT_MAX_REF_TOKEN: int = 4000 # The window size reserved for RAG materials DEFAULT_PARSER_PAGE_SIZE: int = 500 # Max tokens per chunk when doing RAG DEFAULT_RAG_KEYGEN_STRATEGY: Literal['None', 'GenKeyword', 'SplitQueryThenGenKeyword', 'GenKeywordWithKnowledge', 'SplitQueryThenGenKeywordWithKnowledge'] = 'SplitQueryThenGenKeyword' DEFAULT_RAG_SEARCHERS: List[str] = ['keyword_search', 'front_page_search'] # Sub-searchers for hybrid retrieval