Files
letta-server/memgpt/prompts/gpt_system.py
2024-07-04 14:45:35 -07:00

27 lines
1019 B
Python

import os
from memgpt.constants import MEMGPT_DIR
def get_system_text(key):
filename = f"{key}.txt"
file_path = os.path.join(os.path.dirname(__file__), "system", filename)
# first look in prompts/system/*.txt
if os.path.exists(file_path):
with open(file_path, "r", encoding="utf-8") as file:
return file.read().strip()
else:
# try looking in ~/.memgpt/system_prompts/*.txt
user_system_prompts_dir = os.path.join(MEMGPT_DIR, "system_prompts")
# create directory if it doesn't exist
if not os.path.exists(user_system_prompts_dir):
os.makedirs(user_system_prompts_dir)
# look inside for a matching system prompt
file_path = os.path.join(user_system_prompts_dir, filename)
if os.path.exists(file_path):
with open(file_path, "r", encoding="utf-8") as file:
return file.read().strip()
else:
raise FileNotFoundError(f"No file found for key {key}, path={file_path}")