Skip to content

Commit cc22d15

Browse files
factor out embeddings.py
1 parent c57e34a commit cc22d15

File tree

3 files changed

+20
-2
lines changed

3 files changed

+20
-2
lines changed

app/Dockerfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,10 @@ RUN pip install --no-cache-dir -r requirements.txt
3636
# Set the environment variable for the sentence transformers model
3737
ENV SENTENCE_TRANSFORMERS_HOME="/root/.cache/sentence_transformers"
3838

39+
COPY ./embeddings.py /app/embeddings.py
40+
3941
# Preload the sentence transformer model to cache
40-
RUN python -c "from sentence_transformers import SentenceTransformer; SentenceTransformer('all-MiniLM-L6-v2')"
42+
RUN python embeddings.py
4143

4244
# Copy the application source code into the container
4345
COPY . /app

app/embeddings.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import os
2+
from sentence_transformers import SentenceTransformer
3+
4+
def load_model():
5+
"""
6+
Load the SentenceTransformer model from the specified path.
7+
The model path is determined by the SENTENCE_TRANSFORMERS_HOME environment variable.
8+
"""
9+
# model_path = os.getenv("SENTENCE_TRANSFORMERS_HOME", "./models/sentence-transformers")
10+
# model = SentenceTransformer(f"{model_path}/models--sentence-transformers--all-MiniLM-L6-v2")
11+
model = SentenceTransformer("all-MiniLM-L6-v2")
12+
return model
13+
14+
if __name__ == "__main__":
15+
load_model()

app/rag_system.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from sentence_transformers import SentenceTransformer
77
import numpy as np
88
from sklearn.metrics.pairwise import cosine_similarity
9+
from embeddings import load_model
910
import traceback
1011

1112
openai.api_base = os.getenv("OPENAI_BASE_URL")
@@ -15,7 +16,7 @@ class RAGSystem:
1516
def __init__(self, knowledge_base_path='./data/knowledge_base.json'):
1617
self.knowledge_base_path = knowledge_base_path
1718
self.knowledge_base = self.load_knowledge_base()
18-
self.model = SentenceTransformer('all-MiniLM-L6-v2')
19+
self.model = load_model()
1920
self.doc_embeddings = self.embed_knowledge_base()
2021
self.conversation_history = []
2122

0 commit comments

Comments
 (0)