Ruby/model/reweaver.py

22 lines
604 B
Python

import random
import asyncio
from context.context import load_context
from model.trainer import train_on_message
from model.dynamic_expand import expand_model_if_needed
async def memory_reweaver_loop():
while True:
await asyncio.sleep(600) # every 10 minutes
expand_model_if_needed()
context = load_context()
if not context:
return
selected = random.sample(context, min(len(context), 10))
combined_text = " ".join([s["text"] for s in selected])
if combined_text:
train_on_message(combined_text, source="reweaver")