Update slop_with_models.py

This commit is contained in:
Russell Ballestrini 2025-03-20 04:11:45 +00:00
parent 2999b83177
commit 20977e0967

View file

@ -8,10 +8,12 @@ import logging
from flask_swagger_ui import get_swaggerui_blueprint
# Configure logging
DATA_DIR = "data"
LOG_FILE = os.path.join(DATA_DIR, "slop_with_models.log")
logging.basicConfig(
level=logging.DEBUG,
format="%(asctime)s - %(levelname)s - %(message)s",
handlers=[logging.FileHandler("slop_with_models.log"), logging.StreamHandler()]
handlers=[logging.FileHandler(LOG_FILE), logging.StreamHandler()]
)
logger = logging.getLogger(__name__)
@ -29,11 +31,6 @@ app.register_blueprint(swaggerui_blueprint, url_prefix=SWAGGER_URL)
MODEL_CLIENT_MAP = {}
# Memory setup
DATA_DIR = "data"
# Memory endpoints with lock and timeout
# Seconds to wait for lock acquisition
LOCK_TIMEOUT = 2
MEMORY_FILE = os.path.join(DATA_DIR, "memory.json")
memory_lock = Lock()
@ -50,7 +47,7 @@ def load_memory_from_file():
data = json.load(f)
logger.debug(f"Loaded memory from {MEMORY_FILE}: {data}")
return data
logger.info(f"No memory file found at {MEMORY_FILE}, starting with empty memory")
logger.debug(f"No memory file found at {MEMORY_FILE}, returning empty dict")
return {}
except Exception as e:
logger.error(f"Error loading memory from {MEMORY_FILE}: {str(e)}", exc_info=True)
@ -64,10 +61,6 @@ def save_memory_to_file(memory_data):
except Exception as e:
logger.error(f"Error saving memory to {MEMORY_FILE}: {str(e)}", exc_info=True)
# Initialize memory from file
memory = load_memory_from_file()
logger.info("Memory initialized from file")
# Load endpoints
ENDPOINTS = []
for i in range(1000):
@ -132,6 +125,9 @@ tools = {
}
resources = {"hello": {"id": "hello", "content": "Hello, SLOP!"}}
# Memory endpoints with lock and timeout
LOCK_TIMEOUT = 2 # Seconds to wait for lock acquisition
@app.route("/memory", methods=["POST"])
def store_memory():
logger.info("Received /memory POST request")
@ -143,6 +139,7 @@ def store_memory():
key, value = data["key"], data["value"]
if memory_lock.acquire(timeout=LOCK_TIMEOUT):
try:
memory = load_memory_from_file() # Always load fresh state
memory[key] = value
save_memory_to_file(memory)
logger.info(f"Stored in memory: {key} = {value}")
@ -159,6 +156,7 @@ def get_memory(key):
logger.info(f"Received /memory/{key} GET request")
if memory_lock.acquire(timeout=LOCK_TIMEOUT):
try:
memory = load_memory_from_file() # Always load fresh state
value = memory.get(key)
logger.debug(f"Retrieved memory for {key}: {value}")
if value is None:
@ -175,6 +173,7 @@ def list_memory():
logger.info("Received /memory GET request")
if memory_lock.acquire(timeout=LOCK_TIMEOUT):
try:
memory = load_memory_from_file() # Always load fresh state
keys = list(memory.keys())
memory_state = memory.copy()
logger.debug(f"Memory keys: {keys}")
@ -191,6 +190,7 @@ def delete_memory(key):
logger.info(f"Received /memory/{key} DELETE request")
if memory_lock.acquire(timeout=LOCK_TIMEOUT):
try:
memory = load_memory_from_file() # Always load fresh state
if key not in memory:
logger.warning(f"Key not found for deletion: {key}")
return jsonify({"error": "Key not found"}), 404