Spaces:
Sleeping
Sleeping
| import os | |
| from dotenv import load_dotenv | |
| load_dotenv(override=True) | |
| GEMINI_API_KEY = os.getenv("GEMINI_API_KEY", "") | |
| OPENROUTER_API_KEY = os.getenv("OPENROUTER_API_KEY", "") | |
| OPENAI_API_KEY = os.getenv("OPENAI_API_KEY", "") | |
| DEFAULT_MODEL = "gemini-2.5-flash" | |
| # Redis | |
| REDIS_URL = os.getenv("REDIS_URL", "") | |
| REDIS_HOST = os.getenv("REDIS_HOST", "localhost") | |
| REDIS_PORT = int(os.getenv("REDIS_PORT", "6379")) | |
| REDIS_DB = int(os.getenv("REDIS_DB", "0")) | |
| REDIS_PASSWORD = os.getenv("REDIS_PASSWORD", None) | |
| REDIS_KEY_PREFIX = os.getenv("REDIS_KEY_PREFIX", "ai_agent") | |
| if REDIS_URL: | |
| import urllib.parse as urlparse | |
| url = urlparse.urlparse(REDIS_URL) | |
| REDIS_HOST = url.hostname or REDIS_HOST | |
| REDIS_PORT = url.port or REDIS_PORT | |
| REDIS_PASSWORD = url.password or REDIS_PASSWORD | |
| if url.path: | |
| REDIS_DB = int(url.path[1:]) | |
| # Qdrant | |
| QDRANT_URL = os.getenv("QDRANT_URL", "") | |
| QDRANT_API_KEY = os.getenv("QDRANT_API_KEY", "") | |
| # Supabase | |
| SUPABASE_URL = os.getenv("SUPABASE_URL", "") | |
| SUPABASE_SERVICE_ROLE_KEY = os.getenv("SUPABASE_SERVICE_ROLE_KEY", "") | |
| # Logging | |
| LOG_LEVEL = os.getenv("LOG_LEVEL", "INFO") | |
| # LangSmith tracing | |
| # load_dotenv(override=True) đã set os.environ từ .env; block này đảm bảo project name | |
| # có giá trị mặc định và tracing được kích hoạt đúng thứ tự trước khi | |
| # bất kỳ LangChain chain nào được khởi tạo. | |
| LANGCHAIN_TRACING_V2 = os.getenv("LANGCHAIN_TRACING_V2", "false") | |
| LANGCHAIN_API_KEY = os.getenv("LANGCHAIN_API_KEY", os.getenv("LANGSMITH_API_KEY", "")) | |
| LANGCHAIN_PROJECT = os.getenv("LANGCHAIN_PROJECT", "a20-study-group-assistant") | |
| if LANGCHAIN_TRACING_V2.lower() == "true" and LANGCHAIN_API_KEY: | |
| os.environ["LANGCHAIN_TRACING_V2"] = "true" | |
| os.environ["LANGCHAIN_API_KEY"] = LANGCHAIN_API_KEY | |
| os.environ["LANGCHAIN_PROJECT"] = LANGCHAIN_PROJECT | |