Add Google Gemini as AI provider

- Add gemini.py provider using google-genai SDK
- Update config.py with gemini provider and GEMINI_API_KEY
- Update ai_service.py factory to support gemini
- Add google-genai to requirements.txt
- Update .env.example, README.md, and CLAUDE.md documentation
This commit is contained in:
2026-01-11 20:23:03 +01:00
parent b05fa034a6
commit 5761529c7f
8 changed files with 89 additions and 7 deletions

View File

@@ -19,7 +19,7 @@ class Settings(BaseSettings):
discord_token: str = Field(..., description="Discord bot token")
# AI Provider Configuration
ai_provider: Literal["openai", "openrouter", "anthropic"] = Field(
ai_provider: Literal["openai", "openrouter", "anthropic", "gemini"] = Field(
"openai", description="Which AI provider to use"
)
ai_model: str = Field("gpt-4o", description="AI model to use")
@@ -30,6 +30,7 @@ class Settings(BaseSettings):
openai_api_key: str | None = Field(None, description="OpenAI API key")
openrouter_api_key: str | None = Field(None, description="OpenRouter API key")
anthropic_api_key: str | None = Field(None, description="Anthropic API key")
gemini_api_key: str | None = Field(None, description="Google Gemini API key")
# Logging
log_level: str = Field("INFO", description="Logging level")
@@ -66,6 +67,7 @@ class Settings(BaseSettings):
"openai": self.openai_api_key,
"openrouter": self.openrouter_api_key,
"anthropic": self.anthropic_api_key,
"gemini": self.gemini_api_key,
}
key = key_map.get(self.ai_provider)
if not key: