Rivalcoder commited on
Commit
a2b02a5
·
1 Parent(s): 8e453ef
Files changed (2) hide show
  1. Dockerfile +5 -1
  2. process_aware_rag.py +10 -3
Dockerfile CHANGED
@@ -3,7 +3,8 @@ FROM python:3.10-slim
3
 
4
  ENV PYTHONDONTWRITEBYTECODE=1 \
5
  PYTHONUNBUFFERED=1 \
6
- PIP_NO_CACHE_DIR=1
 
7
 
8
  # System deps
9
  RUN apt-get update && apt-get install -y --no-install-recommends \
@@ -13,6 +14,9 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
13
 
14
  WORKDIR /app
15
 
 
 
 
16
  # Copy requirements first for better caching
17
  COPY requirements.txt ./
18
  RUN pip install --upgrade pip && pip install -r requirements.txt
 
3
 
4
  ENV PYTHONDONTWRITEBYTECODE=1 \
5
  PYTHONUNBUFFERED=1 \
6
+ PIP_NO_CACHE_DIR=1 \
7
+ CHROMA_DB_PATH=/data/chroma
8
 
9
  # System deps
10
  RUN apt-get update && apt-get install -y --no-install-recommends \
 
14
 
15
  WORKDIR /app
16
 
17
+ # Ensure writable path for Chroma
18
+ RUN mkdir -p "$CHROMA_DB_PATH" && chmod -R 777 "$CHROMA_DB_PATH"
19
+
20
  # Copy requirements first for better caching
21
  COPY requirements.txt ./
22
  RUN pip install --upgrade pip && pip install -r requirements.txt
process_aware_rag.py CHANGED
@@ -13,9 +13,16 @@ class ProcessAwareRAG:
13
  self.legal_graph = LegalProcessGraph()
14
  self.legal_graph.load_graph('legal_processes.pkl')
15
 
16
- # Initialize vector store
17
- client = chromadb.PersistentClient(path="./legal_vector_db")
18
- self.vector_collection = client.get_collection("legal_context")
 
 
 
 
 
 
 
19
 
20
  # Initialize LLM
21
  genai.configure(api_key=os.getenv('GOOGLE_API_KEY'))
 
13
  self.legal_graph = LegalProcessGraph()
14
  self.legal_graph.load_graph('legal_processes.pkl')
15
 
16
+ # Initialize vector store (use writable path by default)
17
+ chroma_path = os.getenv('CHROMA_DB_PATH', '/tmp/legal_vector_db')
18
+ os.makedirs(chroma_path, exist_ok=True)
19
+ client = chromadb.PersistentClient(path=chroma_path)
20
+
21
+ # Ensure collection exists
22
+ try:
23
+ self.vector_collection = client.get_collection("legal_context")
24
+ except Exception:
25
+ self.vector_collection = client.create_collection("legal_context")
26
 
27
  # Initialize LLM
28
  genai.configure(api_key=os.getenv('GOOGLE_API_KEY'))