import os MEMGPT_DIR = os.path.join(os.path.expanduser("~"), ".memgpt") DEFAULT_MEMGPT_MODEL = "gpt-4" DEFAULT_PERSONA = "sam_pov" DEFAULT_HUMAN = "basic" FIRST_MESSAGE_ATTEMPTS = 10 INITIAL_BOOT_MESSAGE = "Boot sequence complete. Persona activated." INITIAL_BOOT_MESSAGE_SEND_MESSAGE_THOUGHT = "Bootup sequence complete. Persona activated. Testing messaging functionality." STARTUP_QUOTES = [ "I think, therefore I am.", "All those moments will be lost in time, like tears in rain.", "More human than human is our motto.", ] INITIAL_BOOT_MESSAGE_SEND_MESSAGE_FIRST_MSG = STARTUP_QUOTES[2] # Constants to do with summarization / conversation length window # The max amount of tokens supported by the underlying model (eg 8k for gpt-4 and Mistral 7B) LLM_MAX_TOKENS = { "DEFAULT": 8192, ## OpenAI models: https://platform.openai.com/docs/models/overview # gpt-4 "gpt-4-1106-preview": 128000, "gpt-4": 8192, "gpt-4-32k": 32768, "gpt-4-0613": 8192, "gpt-4-32k-0613": 32768, "gpt-4-0314": 8192, # legacy "gpt-4-32k-0314": 32768, # legacy # gpt-3.5 "gpt-3.5-turbo-1106": 16385, "gpt-3.5-turbo": 4096, "gpt-3.5-turbo-16k": 16385, "gpt-3.5-turbo-0613": 4096, # legacy "gpt-3.5-turbo-16k-0613": 16385, # legacy "gpt-3.5-turbo-0301": 4096, # legacy } # The amount of tokens before a sytem warning about upcoming truncation is sent to MemGPT MESSAGE_SUMMARY_WARNING_FRAC = 0.75 # The error message that MemGPT will receive MESSAGE_SUMMARY_WARNING_STR = f"Warning: the conversation history will soon reach its maximum length and be trimmed. Make sure to save any important information from the conversation to your memory before it is removed." # The fraction of tokens we truncate down to MESSAGE_SUMMARY_TRUNC_TOKEN_FRAC = 0.75 # Even when summarizing, we want to keep a handful of recent messages # These serve as in-context examples of how to use functions / what user messages look like MESSAGE_SUMMARY_TRUNC_KEEP_N_LAST = 3 # Default memory limits CORE_MEMORY_PERSONA_CHAR_LIMIT = 2000 CORE_MEMORY_HUMAN_CHAR_LIMIT = 2000 MAX_PAUSE_HEARTBEATS = 360 # in min MESSAGE_CHATGPT_FUNCTION_MODEL = "gpt-3.5-turbo" MESSAGE_CHATGPT_FUNCTION_SYSTEM_MESSAGE = "You are a helpful assistant. Keep your responses short and concise." #### Functions related REQ_HEARTBEAT_MESSAGE = "request_heartbeat == true" FUNC_FAILED_HEARTBEAT_MESSAGE = "Function call failed" FUNCTION_PARAM_NAME_REQ_HEARTBEAT = "request_heartbeat" FUNCTION_PARAM_TYPE_REQ_HEARTBEAT = "boolean" FUNCTION_PARAM_DESCRIPTION_REQ_HEARTBEAT = "Request an immediate heartbeat after function execution. Set to 'true' if you want to send a follow-up message or run a follow-up function." RETRIEVAL_QUERY_DEFAULT_PAGE_SIZE = 5