|
|
|
|
|
import os |
|
|
from dotenv import load_dotenv |
|
|
import torch |
|
|
|
|
|
import warnings |
|
|
warnings.filterwarnings("ignore", message="torchaudio._backend.list_audio_backends has been deprecated") |
|
|
|
|
|
warnings.filterwarnings("ignore", message="std(): degrees of freedom is <= 0") |
|
|
|
|
|
load_dotenv() |
|
|
|
|
|
class Config: |
|
|
|
|
|
HUGGINGFACE_TOKEN = os.getenv("HUGGINGFACE_TOKEN") |
|
|
PINECONE_API_KEY = os.getenv("PINECONE_API_KEY") |
|
|
|
|
|
OPENAI_API_KEY = os.getenv("OPENAI_API_KEY") |
|
|
MODEL_NAME = "gpt-3.5-turbo" |
|
|
METADATA_MODEL = "gpt-4o-mini" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PINECONE_INDEX = "meeting-transcripts-1-dev" |
|
|
PINECONE_ENVIRONMENT = "us-west1-gcp" |
|
|
PINECONE_NAMESPACE = "development" |
|
|
|
|
|
|
|
|
LANGCHAIN_TRACING_V2 = os.getenv("LANGCHAIN_TRACING_V2", "false") |
|
|
LANGCHAIN_API_KEY = os.getenv("LANGCHAIN_API_KEY", "") |
|
|
LANGCHAIN_PROJECT = os.getenv("LANGCHAIN_PROJECT", "meeting-agent") |
|
|
|
|
|
|
|
|
DEVICE = "cuda" if torch.cuda.is_available() else "cpu" |
|
|
COMPUTE_TYPE = "float16" if DEVICE == "cuda" else "int8" |
|
|
|
|
|
|
|
|
WHISPER_MODEL = "small" |
|
|
|
|
|
|
|
|
ENABLE_MCP = os.getenv("ENABLE_MCP", "false").lower() == "true" |
|
|
|
|
|
NOTION_TOKEN = os.getenv("NOTION_TOKEN", "") |
|
|
|
|
|
|
|
|
@staticmethod |
|
|
def get_mcp_servers(): |
|
|
"""Get MCP server configurations.""" |
|
|
if not Config.ENABLE_MCP: |
|
|
return {} |
|
|
|
|
|
servers = {} |
|
|
|
|
|
|
|
|
if Config.NOTION_TOKEN: |
|
|
servers["notion"] = { |
|
|
"command": "npx", |
|
|
"args": ["-y", "@notionhq/notion-mcp-server"], |
|
|
"transport": "stdio", |
|
|
"env": { |
|
|
"NOTION_TOKEN": Config.NOTION_TOKEN |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
servers["world_time"] = { |
|
|
"url": "https://gfiamon-date-time-mpc-server-tool.hf.space/gradio_api/mcp/sse", |
|
|
"transport": "sse" |
|
|
} |
|
|
|
|
|
return servers |
|
|
|
|
|
|
|
|
|
|
|
if Config.LANGCHAIN_TRACING_V2 == "true" and Config.LANGCHAIN_API_KEY: |
|
|
os.environ["LANGCHAIN_TRACING_V2"] = "true" |
|
|
os.environ["LANGCHAIN_API_KEY"] = Config.LANGCHAIN_API_KEY |
|
|
os.environ["LANGCHAIN_PROJECT"] = Config.LANGCHAIN_PROJECT |
|
|
print(f"✅ LangSmith tracing enabled for project: {Config.LANGCHAIN_PROJECT}") |
|
|
|