jan-contract / core_utils /core_model_loaders.py
Amodit's picture
Fix NameError import
e756a74
# D:\jan-contract\core_utils\core_model_loaders.py
import os
from langchain_google_genai import GoogleGenerativeAIEmbeddings, ChatGoogleGenerativeAI
from langchain_groq import ChatGroq
def load_embedding_model():
"""Loads the embedding model without any Streamlit dependencies or heavy local models."""
api_key = os.getenv("GOOGLE_API_KEY")
if not api_key:
print("CRITICAL WARNING: GOOGLE_API_KEY is missing. Embeddings will fail.")
from langchain_core.runnables import RunnableLambda
def fail_on_invoke(input):
raise ValueError("GOOGLE_API_KEY is missing. Please check your environment variables.")
return RunnableLambda(fail_on_invoke)
return GoogleGenerativeAIEmbeddings(model="models/embedding-001", google_api_key=api_key)
def load_groq_llm():
"""Loads the Groq LLM without any Streamlit dependencies."""
api_key = os.getenv("GROQ_API_KEY")
if not api_key:
print("CRITICAL WARNING: GROQ_API_KEY is missing. Scheme finder will fail.")
from langchain_core.runnables import RunnableLambda
def fail_on_invoke(input):
raise ValueError("GROQ_API_KEY is missing. Please check your environment variables.")
return RunnableLambda(fail_on_invoke)
return ChatGroq(
temperature=0,
model="meta-llama/llama-3.3-70b-versatile", # Switched to a standard stable model
api_key=api_key
)
def load_gemini_llm():
"""Loads the Gemini LLM without any Streamlit dependencies."""
api_key = os.getenv("GOOGLE_API_KEY")
if not api_key:
print("CRITICAL WARNING: GOOGLE_API_KEY is missing. AI features will fail.")
from langchain_core.runnables import RunnableLambda
def fail_on_invoke(input):
raise ValueError("GOOGLE_API_KEY is missing. Please check your environment variables.")
return RunnableLambda(fail_on_invoke)
return ChatGoogleGenerativeAI(
model="gemini-2.5-flash",
temperature=0,
max_retries=5,
google_api_key=api_key
)