import os | |
import json | |
import time | |
from lightrag import LightRAG | |
def insert_text(rag, file_path): | |
with open(file_path, mode="r") as f: | |
unique_contexts = json.load(f) | |
retries = 0 | |
max_retries = 3 | |
while retries < max_retries: | |
try: | |
rag.insert(unique_contexts) | |
break | |
except Exception as e: | |
retries += 1 | |
print(f"Insertion failed, retrying ({retries}/{max_retries}), error: {e}") | |
time.sleep(10) | |
if retries == max_retries: | |
print("Insertion failed after exceeding the maximum number of retries") | |
cls = "agriculture" | |
WORKING_DIR = f"../{cls}" | |
if not os.path.exists(WORKING_DIR): | |
os.mkdir(WORKING_DIR) | |
rag = LightRAG(working_dir=WORKING_DIR) | |
insert_text(rag, f"../datasets/unique_contexts/{cls}_unique_contexts.json") | |