Deploy from GitHub Actions
Browse files- src/rag.py +14 -4
src/rag.py
CHANGED
|
@@ -10,7 +10,7 @@ from typing import List, Dict, Any, Optional, Tuple
|
|
| 10 |
from datetime import datetime
|
| 11 |
import logging
|
| 12 |
|
| 13 |
-
PROJECT_ROOT = Path(__file__).parent.parent
|
| 14 |
sys.path.insert(0, str(PROJECT_ROOT))
|
| 15 |
|
| 16 |
try:
|
|
@@ -51,9 +51,19 @@ class MultiCollectionRetriever:
|
|
| 51 |
COLLECTIONS = ["Roger_feeds"]
|
| 52 |
|
| 53 |
def __init__(self, persist_directory: str = None):
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 57 |
self.client = None
|
| 58 |
self.collections: Dict[str, Any] = {}
|
| 59 |
|
|
|
|
| 10 |
from datetime import datetime
|
| 11 |
import logging
|
| 12 |
|
| 13 |
+
PROJECT_ROOT = Path(__file__).resolve().parent.parent
|
| 14 |
sys.path.insert(0, str(PROJECT_ROOT))
|
| 15 |
|
| 16 |
try:
|
|
|
|
| 51 |
COLLECTIONS = ["Roger_feeds"]
|
| 52 |
|
| 53 |
def __init__(self, persist_directory: str = None):
|
| 54 |
+
# Always use absolute path - resolve relative paths against PROJECT_ROOT
|
| 55 |
+
env_path = os.getenv("CHROMADB_PATH")
|
| 56 |
+
if persist_directory:
|
| 57 |
+
self.persist_directory = persist_directory
|
| 58 |
+
elif env_path:
|
| 59 |
+
# If env path is relative, resolve it against PROJECT_ROOT
|
| 60 |
+
env_path_obj = Path(env_path)
|
| 61 |
+
if not env_path_obj.is_absolute():
|
| 62 |
+
self.persist_directory = str(PROJECT_ROOT / env_path)
|
| 63 |
+
else:
|
| 64 |
+
self.persist_directory = env_path
|
| 65 |
+
else:
|
| 66 |
+
self.persist_directory = str(PROJECT_ROOT / "data" / "chromadb")
|
| 67 |
self.client = None
|
| 68 |
self.collections: Dict[str, Any] = {}
|
| 69 |
|