File size: 691 Bytes
5dbe83d 752e673 5dbe83d 752e673 5dbe83d 752e673 5dbe83d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
import os
import pathlib
from typing import NewType
import pydantic
import message
import player
from pydantic import BaseModel
Model = NewType("Model", BaseModel)
data_dir = pathlib.Path(__file__).parent.parent / "data"
def save(log_object: Model):
log_file = get_log_file(log_object)
with open(log_file, "a+") as f:
f.write(log_object.model_dump_json() + "\n")
def get_log_file(log_object: Model) -> str:
match type(log_object):
case message.AgentMessage:
log_file = "messages.jsonl"
# ...
case _:
raise ValueError(f"Unknown log object type: {type(log_object)}")
return os.path.join(data_dir, log_file)
|