24 lines
966 B
Python
24 lines
966 B
Python
from datetime import datetime
|
|
import json
|
|
import os
|
|
from openai.types.chat import ChatCompletionMessageParam
|
|
|
|
|
|
def write_logs(prompt_messages: list[ChatCompletionMessageParam], completion: str):
|
|
# Get the logs path from environment, default to the current working directory
|
|
logs_path = os.environ.get("LOGS_PATH", os.getcwd())
|
|
|
|
# Create run_logs directory if it doesn't exist within the specified logs path
|
|
logs_directory = os.path.join(logs_path, "run_logs")
|
|
if not os.path.exists(logs_directory):
|
|
os.makedirs(logs_directory)
|
|
|
|
print("Writing to logs directory:", logs_directory)
|
|
|
|
# Generate a unique filename using the current timestamp within the logs directory
|
|
filename = datetime.now().strftime(f"{logs_directory}/messages_%Y%m%d_%H%M%S.json")
|
|
|
|
# Write the messages dict into a new file for each run
|
|
with open(filename, "w") as f:
|
|
f.write(json.dumps({"prompt": prompt_messages, "completion": completion}))
|