diff --git a/pr_agent/algo/ai_handler.py b/pr_agent/algo/ai_handler.py index a774e105..6987d0b1 100644 --- a/pr_agent/algo/ai_handler.py +++ b/pr_agent/algo/ai_handler.py @@ -14,6 +14,13 @@ class AiHandler: openai.api_key = settings.openai.key if settings.get("OPENAI.ORG", None): openai.organization = settings.openai.org + self.deployment_id = settings.get("OPENAI.DEPLOYMENT_ID", None) + if settings.get("OPENAI.API_TYPE", None): + openai.api_type = settings.openai.api_type + if settings.get("OPENAI.API_VERSION", None): + openai.engine = settings.openai.api_version + if settings.get("OPENAI.API_BASE", None): + openai.api_base = settings.openai.api_base except AttributeError as e: raise ValueError("OpenAI key is required") from e @@ -23,6 +30,7 @@ class AiHandler: try: response = await openai.ChatCompletion.acreate( model=model, + deployment_id=self.deployment_id, messages=[ {"role": "system", "content": system}, {"role": "user", "content": user} diff --git a/pr_agent/settings/.secrets_template.toml b/pr_agent/settings/.secrets_template.toml index eb2f9b76..458d5dba 100644 --- a/pr_agent/settings/.secrets_template.toml +++ b/pr_agent/settings/.secrets_template.toml @@ -9,6 +9,11 @@ [openai] key = "" # Acquire through https://platform.openai.com org = "" # Optional, may be commented out. +# Uncomment the following for Azure OpenAI +#api_type = "azure" +#api_version = '2023-05-15' # Check Azure documentation for the current API version +#api_base = "" # The base URL for your Azure OpenAI resource. e.g. "https://.openai.azure.com" +#deployment_id = "" # The deployment name you chose when you deployed the engine [github] # ---- Set the following only for deployment type == "user"