Skip to content

Commit

Permalink
Support distinct model for planner in deployment templates (microsoft…
Browse files Browse the repository at this point in the history
…#778)

### Motivation and Context
We can now have a distinct completion model for the planner. This aligns
the deployment templates to that fact.

### Description
Add a new plannerModel parameter in the deployment templates and scripts
  • Loading branch information
glahaye authored and codebrain committed May 16, 2023
1 parent 9b22fc9 commit 869e8d5
Show file tree
Hide file tree
Showing 5 changed files with 48 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@ param(
# Model to use for text embeddings
$EmbeddingModel = "text-embedding-ada-002",

[string]
# Completion model the task planner should use
$PlannerModel = "gpt-35-turbo",

[Parameter(Mandatory)]
[string]
# Subscription to which to make the deployment
Expand Down Expand Up @@ -78,15 +82,15 @@ if ($LASTEXITCODE -ne 0) {
}

Write-Host "Validating template file..."
az deployment group validate --name $DeploymentName --resource-group $ResourceGroup --template-file $templateFile --parameters name=$DeploymentName packageUri=$PackageUri aiService=$AIService completionModel=$CompletionModel embeddingModel=$EmbeddingModel endpoint=$Endpoint apiKey=$ApiKey appServiceSku=$AppServiceSku
az deployment group validate --name $DeploymentName --resource-group $ResourceGroup --template-file $templateFile --parameters name=$DeploymentName packageUri=$PackageUri aiService=$AIService completionModel=$CompletionModel embeddingModel=$EmbeddingModel plannerModel=$PlannerModel endpoint=$Endpoint apiKey=$ApiKey appServiceSku=$AppServiceSku
if ($LASTEXITCODE -ne 0) {
exit $LASTEXITCODE
}

Write-Host "Deploying..."
if ($DebugDeployment) {
az deployment group create --name $DeploymentName --resource-group $ResourceGroup --template-file $templateFile --debug --parameters name=$DeploymentName packageUri=$PackageUri aiService=$AIService completionModel=$CompletionModel embeddingModel=$EmbeddingModel endpoint=$Endpoint apiKey=$ApiKey appServiceSku=$AppServiceSku
az deployment group create --name $DeploymentName --resource-group $ResourceGroup --template-file $templateFile --debug --parameters name=$DeploymentName packageUri=$PackageUri aiService=$AIService completionModel=$CompletionModel embeddingModel=$EmbeddingModel plannerModel=$PlannerModel endpoint=$Endpoint apiKey=$ApiKey appServiceSku=$AppServiceSku
}
else {
az deployment group create --name $DeploymentName --resource-group $ResourceGroup --template-file $templateFile --parameters name=$DeploymentName packageUri=$PackageUri aiService=$AIService completionModel=$CompletionModel embeddingModel=$EmbeddingModel endpoint=$Endpoint apiKey=$ApiKey appServiceSku=$AppServiceSku
az deployment group create --name $DeploymentName --resource-group $ResourceGroup --template-file $templateFile --parameters name=$DeploymentName packageUri=$PackageUri aiService=$AIService completionModel=$CompletionModel embeddingModel=$EmbeddingModel plannerModel=$PlannerModel endpoint=$Endpoint apiKey=$ApiKey appServiceSku=$AppServiceSku
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,12 @@ Endpoint="${4:-}"
AIService="${5:-AzureOpenAI}"
CompletionModel="${6:-gpt-35-turbo}"
EmbeddingModel="${7:-text-embedding-ada-002}"
ResourceGroup="${8:-}"
Region="${9:-South Central US}"
PackageUri="${10:-https://skaasdeploy.blob.core.windows.net/api/skaas.zip}"
AppServiceSku="${11:-B1}"
DebugDeployment="${12:-false}"
PlannerModel="${8:-gpt-35-turbo}"
ResourceGroup="${9:-}"
Region="${10:-South Central US}"
PackageUri="${11:-https://skaasdeploy.blob.core.windows.net/api/skaas.zip}"
AppServiceSku="${12:-B1}"
DebugDeployment="${13:-false}"

if [ -z "$ResourceGroup" ]; then
ResourceGroup="${DeploymentName}-rg"
Expand All @@ -32,11 +33,11 @@ echo "Creating resource group $ResourceGroup if it doesn't exist..."
az group create --location "$Region" --name "$ResourceGroup" --tags Creator="$USER"

echo "Validating template file..."
az deployment group validate --name "$DeploymentName" --resource-group "$ResourceGroup" --template-file "$templateFile" --parameters name="$DeploymentName" packageUri="$PackageUri" aiService="$AIService" completionModel="$CompletionModel" embeddingModel="$EmbeddingModel" endpoint="$Endpoint" apiKey="$ApiKey" appServiceSku="$AppServiceSku"
az deployment group validate --name "$DeploymentName" --resource-group "$ResourceGroup" --template-file "$templateFile" --parameters name="$DeploymentName" packageUri="$PackageUri" aiService="$AIService" completionModel="$CompletionModel" embeddingModel="$EmbeddingModel" plannerModel="$PlannerModel" endpoint="$Endpoint" apiKey="$ApiKey" appServiceSku="$AppServiceSku"

echo "Deploying..."
if [ "$DebugDeployment" = "true" ]; then
az deployment group create --name "$DeploymentName" --resource-group "$ResourceGroup" --template-file "$templateFile" --debug --parameters name="$DeploymentName" packageUri="$PackageUri" aiService="$AIService" completionModel="$CompletionModel" embeddingModel="$EmbeddingModel" endpoint="$Endpoint" apiKey="$ApiKey" appServiceSku="$AppServiceSku"
az deployment group create --name "$DeploymentName" --resource-group "$ResourceGroup" --template-file "$templateFile" --debug --parameters name="$DeploymentName" packageUri="$PackageUri" aiService="$AIService" completionModel="$CompletionModel" embeddingModel="$EmbeddingModel" plannerModel="$PlannerModel" endpoint="$Endpoint" apiKey="$ApiKey" appServiceSku="$AppServiceSku"
else
az deployment group create --name "$DeploymentName" --resource-group "$ResourceGroup" --template-file "$templateFile" --parameters name="$DeploymentName" packageUri="$PackageUri" aiService="$AIService" completionModel="$CompletionModel" embeddingModel="$EmbeddingModel" endpoint="$Endpoint" apiKey="$ApiKey" appServiceSku="$AppServiceSku"
az deployment group create --name "$DeploymentName" --resource-group "$ResourceGroup" --template-file "$templateFile" --parameters name="$DeploymentName" packageUri="$PackageUri" aiService="$AIService" completionModel="$CompletionModel" embeddingModel="$EmbeddingModel" plannerModel="$PlannerModel" endpoint="$Endpoint" apiKey="$ApiKey" appServiceSku="$AppServiceSku"
fi
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Use the [DeploySK-Existing-AI.ps1](DeploySK-Existing-AI.ps1) file found in this

After entering the command above, you will be prompted to enter your OpenAI or Azure OpenAI API key. (You can also pass in the API key using the -ApiKey parameter followed by a SecureString)

### bash
### Bash

After ensuring DeploySK-Existing-AI.sh file found in this folder is executable, enter the following command:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ param completionModel string = 'gpt-35-turbo'
@description('Model to use for text embeddings')
param embeddingModel string = 'text-embedding-ada-002'

@description('Completion model the task planner should use')
param plannerModel string = 'gpt-35-turbo'

@description('Azure OpenAI endpoint to use (ignored when AI service is not AzureOpenAI)')
param endpoint string = ''

Expand Down Expand Up @@ -107,6 +110,22 @@ resource appServiceWeb 'Microsoft.Web/sites@2022-03-01' = {
name: 'Embedding:Key'
value: apiKey
}
{
name: 'Planner:AIService'
value: aiService
}
{
name: 'Planner:DeploymentOrModelId'
value: plannerModel
}
{
name: 'Planner:Endpoint'
value: endpoint
}
{
name: 'Planner:Key'
value: apiKey
}
{
name: 'ChatStore:Type'
value: 'volatile'
Expand Down
12 changes: 12 additions & 0 deletions samples/apps/copilot-chat-app/webapi/DeploymentTemplates/sk.bicep
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,18 @@ resource appServiceWeb 'Microsoft.Web/sites@2022-03-01' = {
name: 'Embedding:Key'
value: openAI.listKeys().key1
}
{
name: 'Planner:AIService'
value: 'AzureOpenAI'
}
{
name: 'Planner:Endpoint'
value: openAI.properties.endpoint
}
{
name: 'Planner:Key'
value: openAI.listKeys().key1
}
{
name: 'ChatStore:Type'
value: 'volatile'
Expand Down

0 comments on commit 869e8d5

Please sign in to comment.