Skip to content

Commit

Permalink
updated the env vars;
Browse files Browse the repository at this point in the history
  • Loading branch information
ranjan-stha committed Sep 12, 2024
1 parent 81bccee commit ee1383a
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 19 deletions.
28 changes: 9 additions & 19 deletions chatbot-core/llm.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,17 +14,7 @@
from langchain_qdrant import QdrantVectorStore
from qdrant_client import QdrantClient

from main.settings import (
EMBEDDING_MODEL_NAME,
EMBEDDING_MODEL_TYPE,
EMBEDDING_MODEL_URL,
LLM_MODEL_NAME,
LLM_OLLAMA_BASE_URL,
OLLAMA_EMBEDDING_MODEL_BASE_URL,
QDRANT_DB_COLLECTION_NAME,
QDRANT_DB_HOST,
QDRANT_DB_PORT,
)
from django.conf import settings

logger = logging.getLogger(__name__)

Expand All @@ -45,16 +35,16 @@ def __post_init__(self, mem_key: str = "chat_history", conversation_max_window:
self.memory = None

try:
self.qdrant_client = QdrantClient(host=QDRANT_DB_HOST, port=QDRANT_DB_PORT)
self.qdrant_client = QdrantClient(host=settings.QDRANT_DB_HOST, port=settings.QDRANT_DB_PORT)
except Exception as e:
raise Exception(f"Qdrant client is not properly setup. {str(e)}")
self.memory = ConversationBufferWindowMemory(k=conversation_max_window, memory_key=mem_key, return_messages=True)

self.embedding_model = CustomEmbeddingsWrapper(
url=EMBEDDING_MODEL_URL,
model_name=EMBEDDING_MODEL_NAME,
model_type=EMBEDDING_MODEL_TYPE,
base_url=OLLAMA_EMBEDDING_MODEL_BASE_URL,
url=settings.EMBEDDING_MODEL_URL,
model_name=settings.EMBEDDING_MODEL_NAME,
model_type=settings.EMBEDDING_MODEL_TYPE,
base_url=settings.OLLAMA_EMBEDDING_MODEL_BASE_URL,
)

def _system_prompt_for_retrieval(self):
Expand Down Expand Up @@ -124,7 +114,7 @@ def create_chain(self, db_collection_name: str):
rag_chain = create_retrieval_chain(history_aware_retriever, chat_response_chain)
return rag_chain

def execute_chain(self, query: str, db_collection_name: str = QDRANT_DB_COLLECTION_NAME):
def execute_chain(self, query: str, db_collection_name: str = settings.QDRANT_DB_COLLECTION_NAME):
"""
Executes the chain
"""
Expand Down Expand Up @@ -152,7 +142,7 @@ class OpenAIHandler(LLMBase):
def __post_init__(self):
super().__post_init__()
try:
self.llm_model = ChatOpenAI(model=LLM_MODEL_NAME, temperature=self.temperature)
self.llm_model = ChatOpenAI(model=settings.LLM_MODEL_NAME, temperature=self.temperature)
except Exception as e:
raise Exception(f"OpenAI LLM model is not successfully loaded. {str(e)}")

Expand All @@ -166,6 +156,6 @@ class OllamaHandler(LLMBase):
def __post_init__(self):
super().__post_init__()
try:
self.llm_model = Ollama(model=LLM_MODEL_NAME, base_url=LLM_OLLAMA_BASE_URL, temperature=self.temperature)
self.llm_model = Ollama(model=settings.LLM_MODEL_NAME, base_url=settings.LLM_OLLAMA_BASE_URL, temperature=self.temperature)
except Exception as e:
raise Exception(f"Ollama LLM model is not successfully loaded. {str(e)}")
8 changes: 8 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,14 @@ services:
DATABASE_HOST: ${DATABASE_HOST:-db}
QDRANT_DB_HOST: ${QDRANT_DB_HOST:-0.0.0.0}
QDRANT_DB_PORT: ${QDRANT_DB_PORT:-6333}
QDRANT_DB_COLLECTION_NAME: ${QDRANT_DB_COLLECTION_NAME:-test}
EMBEDDING_MODEL_URL: ${EMBEDDING_MODEL_URL:-localhost}
EMBEDDING_MODEL_NAME: ${EMBEDDING_MODEL_NAME:-embedding_model}
EMBEDDING_MODEL_TYPE: ${EMBEDDING_MODEL_TYPE:-1}
LLM_TYPE: ${LLM_TYPE:-1}
LLM_MODEL_NAME: ${LLM_MODEL_NAME:-"mistral:latest"}
LLM_OLLAMA_BASE_URL: ${LLM_OLLAMA_BASE_URL:-localhost}
OPENAI_API_KEY: ${OPENAI_API_KEY:-test_key}
command: bash -c 'python manage.py runserver 0.0.0.0:8001'
volumes:
- .:/code
Expand Down
5 changes: 5 additions & 0 deletions main/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@
LLM_TYPE=int,
LLM_MODEL_NAME=str,
LLM_OLLAMA_BASE_URL=str,
# OpenAI API key
OPENAI_API_KEY=str,
)
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/5.1/howto/deployment/checklist/
Expand All @@ -80,6 +82,9 @@
QDRANT_DB_HOST = env("QDRANT_DB_HOST")
QDRANT_DB_PORT = env("QDRANT_DB_PORT")
QDRANT_DB_COLLECTION_NAME = env("QDRANT_DB_COLLECTION_NAME")
# OPENAI API KEY
OPENAI_API_KEY = env("OPENAI_API_KEY")


# Application definition

Expand Down

0 comments on commit ee1383a

Please sign in to comment.