this didnt fucking commit i fucking hate you git

This commit is contained in:
WhatDidYouExpect 2025-07-22 20:06:59 +02:00
parent d300a3c812
commit b01bd5b80b

View file

@ -7,41 +7,46 @@ from modules.volta.main import _
import logging import logging
logger = logging.getLogger("goober") logger = logging.getLogger("goober")
def get_file_info(file_path): def get_file_info(file_path: str) -> dict:
try: try:
file_size = os.path.getsize(file_path) file_size = os.path.getsize(file_path)
with open(file_path, "r") as f: with open(file_path, "r") as f:
lines = f.readlines() lines = f.readlines()
return {"file_size_bytes": file_size, "line_count": len(lines)} return {
"file_size_bytes": file_size,
"line_count": len(lines)
}
except Exception as e: except Exception as e:
return {"error": str(e)} return {"error": str(e)}
def load_memory():
data = [] def load_memory() -> list:
try: try:
with open(MEMORY_FILE, "r") as f: with open(MEMORY_FILE, "r") as f:
data = json.load(f) return json.load(f)
except FileNotFoundError: except FileNotFoundError:
pass return []
return data def save_memory(memory: list) -> None:
def save_memory(memory):
with open(MEMORY_FILE, "w") as f: with open(MEMORY_FILE, "w") as f:
json.dump(memory, f, indent=4) json.dump(memory, f, indent=4)
def train_markov_model(memory, additional_data=None):
if not memory: def train_markov_model(memory: list, additional_data: list = None):
return None lines = [line for line in (memory or []) if isinstance(line, str)]
filtered_memory = [line for line in memory if isinstance(line, str)]
if additional_data: if additional_data:
filtered_memory.extend(line for line in additional_data if isinstance(line, str)) lines.extend(line for line in additional_data if isinstance(line, str))
if not filtered_memory:
if not lines:
return None return None
text = "\n".join(filtered_memory)
model = markovify.NewlineText(text, state_size=2) text = "\n".join(lines)
return model return markovify.NewlineText(text, state_size=2)
def save_markov_model(model, filename='markov_model.pkl'):
def save_markov_model(model, filename: str = 'markov_model.pkl') -> None:
with open(filename, 'wb') as f: with open(filename, 'wb') as f:
pickle.dump(model, f) pickle.dump(model, f)
def load_markov_model(filename='markov_model.pkl'):
def load_markov_model(filename: str = 'markov_model.pkl'):
try: try:
with open(filename, 'rb') as f: with open(filename, 'rb') as f:
model = pickle.load(f) model = pickle.load(f)