Autonomous-AI / knowledge_base.py
Leonydis137's picture
Upload knowledge_base.py
0b89aa2 verified
raw
history blame contribute delete
929 Bytes
import json
from pathlib import Path
class KnowledgeBase:
def __init__(self, storage_path="kb.json"):
self.storage_path = Path(storage_path)
if not self.storage_path.exists():
self._save({})
self.data = self._load()
def _load(self):
with self.storage_path.open("r") as f:
return json.load(f)
def _save(self, data):
with self.storage_path.open("w") as f:
json.dump(data, f, indent=2)
def get(self, topic):
return self.data.get(topic.lower(), "❓ No entry found.")
def set(self, topic, content):
self.data[topic.lower()] = content
self._save(self.data)
return f"βœ… Knowledge added for topic: '{topic}'"
def search(self, query):
return {k: v for k, v in self.data.items() if query.lower() in k or query.lower() in v}
def list_topics(self):
return list(self.data.keys())