Fix Google Gemini model integration with correct provider format and API key handling
This commit is contained in:
parent
6ff455358c
commit
82f081f731
|
@ -74,9 +74,9 @@ class Config:
|
|||
if provider.lower() == 'openrouter':
|
||||
env_var_name = "OPENROUTER_API_KEY"
|
||||
|
||||
# Special case for Google which might use GOOGLE_API_KEY
|
||||
# Special case for Google which might use GEMINI_API_KEY
|
||||
if provider.lower() == 'google':
|
||||
env_var_name = "GOOGLE_API_KEY"
|
||||
env_var_name = "GEMINI_API_KEY"
|
||||
|
||||
api_key = os.environ.get(env_var_name)
|
||||
|
||||
|
|
|
@ -46,7 +46,10 @@ class LLMInterface:
|
|||
api_key = self.config.get_api_key(provider)
|
||||
|
||||
# Set environment variable for the provider
|
||||
os.environ[f"{provider.upper()}_API_KEY"] = api_key
|
||||
if provider.lower() == 'google':
|
||||
os.environ["GEMINI_API_KEY"] = api_key
|
||||
else:
|
||||
os.environ[f"{provider.upper()}_API_KEY"] = api_key
|
||||
|
||||
print(f"LLM interface initialized with model: {self.model_name} (provider: {provider})")
|
||||
except ValueError as e:
|
||||
|
@ -101,7 +104,7 @@ class LLMInterface:
|
|||
}
|
||||
elif provider == 'google':
|
||||
# Special handling for Google Gemini models
|
||||
params['model'] = f"google/{self.model_config.get('model_name', self.model_name)}"
|
||||
params['model'] = f"gemini/{self.model_config.get('model_name', self.model_name)}"
|
||||
# Google Gemini uses a different API base
|
||||
params['api_base'] = self.model_config.get('endpoint', 'https://generativelanguage.googleapis.com/v1')
|
||||
else:
|
||||
|
|
|
@ -60,7 +60,10 @@ class ReportSynthesizer:
|
|||
api_key = self.config.get_api_key(provider)
|
||||
|
||||
# Set environment variable for the provider
|
||||
os.environ[f"{provider.upper()}_API_KEY"] = api_key
|
||||
if provider.lower() == 'google':
|
||||
os.environ["GEMINI_API_KEY"] = api_key
|
||||
else:
|
||||
os.environ[f"{provider.upper()}_API_KEY"] = api_key
|
||||
|
||||
logger.info(f"Report synthesizer initialized with model: {self.model_name} (provider: {provider})")
|
||||
except ValueError as e:
|
||||
|
@ -97,7 +100,7 @@ class ReportSynthesizer:
|
|||
}
|
||||
elif provider == 'google':
|
||||
# Special handling for Google Gemini models
|
||||
params['model'] = f"google/{self.model_config.get('model_name', self.model_name)}"
|
||||
params['model'] = f"gemini/{self.model_config.get('model_name', self.model_name)}"
|
||||
# Google Gemini uses a different API base
|
||||
params['api_base'] = self.model_config.get('endpoint', 'https://generativelanguage.googleapis.com/v1')
|
||||
else:
|
||||
|
|
Loading…
Reference in New Issue