Files
DevGen/devgen/providers/gemini.py
sankalp 2edbf95ed5 feat(provider): refactor Gemini provider to use struct schema
Improves validation and aligns with latest API changes.
2026-07-03 18:24:48 +05:45

26 lines
817 B
Python

from google import genai
from google.genai import types
from devgen.providers.base import BaseProvider
class GeminiProvider(BaseProvider):
"""Generates content using Google's Gemini models."""
DISPLAY_NAME = "Gemini"
DEFAULT_MODEL = "gemini-2.5-flash"
def _generate(self, prompt, api_key, model, **kwargs):
client = genai.Client(api_key=api_key)
response = client.models.generate_content(
model=model,
contents=prompt,
config=types.GenerateContentConfig(
temperature=kwargs.get("temperature", 0.7),
top_p=kwargs.get("top_p", 0.95),
top_k=kwargs.get("top_k", 40),
max_output_tokens=kwargs.get("max_output_tokens", 2048),
),
)
return response.text or ""