Spaces:
Sleeping
Sleeping
chips
commited on
Commit
·
80c6e40
1
Parent(s):
4a370c7
gemini 2.5 flash
Browse files- app/config.py +12 -1
- app/request_handler/follow_handler.py +2 -0
app/config.py
CHANGED
|
@@ -8,6 +8,7 @@ from pydantic_settings import BaseSettings
|
|
| 8 |
os.environ["WEAVE_CAPTURE_CODE"] = "false"
|
| 9 |
if os.getenv("HUGGINGFACE_DEMO"):
|
| 10 |
OPENAI_API_KEY = os.getenv("OPENAI_API_KEY")
|
|
|
|
| 11 |
ANTHROPIC_API_KEY = os.getenv("ANTHROPIC_API_KEY")
|
| 12 |
REDIS_PASSWORD = ""
|
| 13 |
REDIS_USE_SSL = False
|
|
@@ -20,6 +21,7 @@ else:
|
|
| 20 |
print("not WB")
|
| 21 |
#os.environ["WANDB_API_KEY"] = secrets["WANDB_API_KEY"]
|
| 22 |
OPENAI_API_KEY = secrets["OPENAI_API_KEY"]
|
|
|
|
| 23 |
ANTHROPIC_API_KEY = secrets["ANTHROPIC_API_KEY"]
|
| 24 |
REDIS_PASSWORD = secrets["REDIS_PASSWORD"] if ENV == "PROD" else ""
|
| 25 |
REDIS_USE_SSL = True if ENV == "PROD" or ENV == "UAT" else False
|
|
@@ -41,12 +43,18 @@ class Settings(BaseSettings):
|
|
| 41 |
"claude-3-5-sonnet-latest" # first model is the default of the vendor
|
| 42 |
]
|
| 43 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
# Supprted AI Services
|
| 45 |
-
SUPPORTED_MODELS: list = OPENAI_MODELS + ANTHROPIC_MODELS
|
| 46 |
|
| 47 |
# API Keys
|
| 48 |
OPENAI_API_KEY: str
|
| 49 |
ANTHROPIC_API_KEY: str
|
|
|
|
| 50 |
|
| 51 |
DEFAULT_MAX_ATTEMPTS: int = 1
|
| 52 |
|
|
@@ -78,6 +86,7 @@ class Settings(BaseSettings):
|
|
| 78 |
# API Keys
|
| 79 |
OPENAI_API_KEY: str = OPENAI_API_KEY
|
| 80 |
ANTHROPIC_API_KEY: str = ANTHROPIC_API_KEY
|
|
|
|
| 81 |
|
| 82 |
#
|
| 83 |
MAX_DOWNLOAD_RETRY: int = 10 # times
|
|
@@ -88,6 +97,8 @@ class Settings(BaseSettings):
|
|
| 88 |
raise ValueError("OPENAI_API_KEY is required")
|
| 89 |
if not self.ANTHROPIC_API_KEY:
|
| 90 |
raise ValueError("ANTHROPIC_API_KEY is required")
|
|
|
|
|
|
|
| 91 |
|
| 92 |
|
| 93 |
# Create a cached instance of settings
|
|
|
|
| 8 |
os.environ["WEAVE_CAPTURE_CODE"] = "false"
|
| 9 |
if os.getenv("HUGGINGFACE_DEMO"):
|
| 10 |
OPENAI_API_KEY = os.getenv("OPENAI_API_KEY")
|
| 11 |
+
GEMINI_API_KEY = os.getenv("GEMINI_API_KEY")
|
| 12 |
ANTHROPIC_API_KEY = os.getenv("ANTHROPIC_API_KEY")
|
| 13 |
REDIS_PASSWORD = ""
|
| 14 |
REDIS_USE_SSL = False
|
|
|
|
| 21 |
print("not WB")
|
| 22 |
#os.environ["WANDB_API_KEY"] = secrets["WANDB_API_KEY"]
|
| 23 |
OPENAI_API_KEY = secrets["OPENAI_API_KEY"]
|
| 24 |
+
GEMINI_API_KEY = os.getenv("GEMINI_API_KEY")
|
| 25 |
ANTHROPIC_API_KEY = secrets["ANTHROPIC_API_KEY"]
|
| 26 |
REDIS_PASSWORD = secrets["REDIS_PASSWORD"] if ENV == "PROD" else ""
|
| 27 |
REDIS_USE_SSL = True if ENV == "PROD" or ENV == "UAT" else False
|
|
|
|
| 43 |
"claude-3-5-sonnet-latest" # first model is the default of the vendor
|
| 44 |
]
|
| 45 |
|
| 46 |
+
# Supported anthropic models
|
| 47 |
+
GEMINI_MODELS: list = [
|
| 48 |
+
"gemini-2.5-flash-preview-04-17" , # first model is the default of the vendor
|
| 49 |
+
"gemini-1.5-flash"
|
| 50 |
+
]
|
| 51 |
# Supprted AI Services
|
| 52 |
+
SUPPORTED_MODELS: list = OPENAI_MODELS + ANTHROPIC_MODELS + GEMINI_MODELS
|
| 53 |
|
| 54 |
# API Keys
|
| 55 |
OPENAI_API_KEY: str
|
| 56 |
ANTHROPIC_API_KEY: str
|
| 57 |
+
GEMINI_API_KEY: str
|
| 58 |
|
| 59 |
DEFAULT_MAX_ATTEMPTS: int = 1
|
| 60 |
|
|
|
|
| 86 |
# API Keys
|
| 87 |
OPENAI_API_KEY: str = OPENAI_API_KEY
|
| 88 |
ANTHROPIC_API_KEY: str = ANTHROPIC_API_KEY
|
| 89 |
+
GEMINI_API_KEY: str = GEMINI_API_KEY
|
| 90 |
|
| 91 |
#
|
| 92 |
MAX_DOWNLOAD_RETRY: int = 10 # times
|
|
|
|
| 97 |
raise ValueError("OPENAI_API_KEY is required")
|
| 98 |
if not self.ANTHROPIC_API_KEY:
|
| 99 |
raise ValueError("ANTHROPIC_API_KEY is required")
|
| 100 |
+
if not self.GEMINI_API_KEY:
|
| 101 |
+
raise ValueError("GEMINI_API_KEY is required")
|
| 102 |
|
| 103 |
|
| 104 |
# Create a cached instance of settings
|
app/request_handler/follow_handler.py
CHANGED
|
@@ -22,6 +22,8 @@ async def handle_follow(request: FollowSchemaRequest):
|
|
| 22 |
ai_vendor = "openai"
|
| 23 |
elif request.ai_model in settings.ANTHROPIC_MODELS:
|
| 24 |
ai_vendor = "anthropic"
|
|
|
|
|
|
|
| 25 |
else:
|
| 26 |
raise ValueError(
|
| 27 |
f"Invalid AI model: {request.ai_model}, only support {settings.SUPPORTED_MODELS}"
|
|
|
|
| 22 |
ai_vendor = "openai"
|
| 23 |
elif request.ai_model in settings.ANTHROPIC_MODELS:
|
| 24 |
ai_vendor = "anthropic"
|
| 25 |
+
elif request.ai_model in settings.GEMINI_MODELS:
|
| 26 |
+
ai_vendor = "gemini"
|
| 27 |
else:
|
| 28 |
raise ValueError(
|
| 29 |
f"Invalid AI model: {request.ai_model}, only support {settings.SUPPORTED_MODELS}"
|