40 lines
994 B
Python
40 lines
994 B
Python
from typing import Optional
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class UserConfig(BaseModel):
|
|
LLM: Optional[str] = None
|
|
|
|
# OpenAI
|
|
OPENAI_API_KEY: Optional[str] = None
|
|
OPENAI_MODEL: Optional[str] = None
|
|
|
|
# Google
|
|
GOOGLE_API_KEY: Optional[str] = None
|
|
GOOGLE_MODEL: Optional[str] = None
|
|
|
|
# Anthropic
|
|
ANTHROPIC_API_KEY: Optional[str] = None
|
|
ANTHROPIC_MODEL: Optional[str] = None
|
|
|
|
# Ollama
|
|
OLLAMA_URL: Optional[str] = None
|
|
OLLAMA_MODEL: Optional[str] = None
|
|
|
|
# Custom LLM
|
|
CUSTOM_LLM_URL: Optional[str] = None
|
|
CUSTOM_LLM_API_KEY: Optional[str] = None
|
|
CUSTOM_MODEL: Optional[str] = None
|
|
|
|
# Image Provider
|
|
IMAGE_PROVIDER: Optional[str] = None
|
|
PEXELS_API_KEY: Optional[str] = None
|
|
PIXABAY_API_KEY: Optional[str] = None
|
|
|
|
# Reasoning
|
|
TOOL_CALLS: Optional[bool] = None
|
|
DISABLE_THINKING: Optional[bool] = None
|
|
EXTENDED_REASONING: Optional[bool] = None
|
|
|
|
# Web Search
|
|
WEB_GROUNDING: Optional[bool] = None
|