Skip to content

Commit ab670cb

Browse files
zihuq-msftross-p-smithadamdougal
authored
fix: Add gpt-4o support #967 and embedding model version as variable (#1090)
Co-authored-by: Ross Smith <[email protected]> Co-authored-by: Adam Dougal <[email protected]>
1 parent 4ec067e commit ab670cb

File tree

5 files changed

+337
-196
lines changed

5 files changed

+337
-196
lines changed

docs/LOCAL_DEPLOYMENT.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,8 +192,11 @@ Execute the above [shell command](#L81) to run the function locally. You may nee
192192
|AZURE_OPENAI_RESOURCE||the name of your Azure OpenAI resource|
193193
|AZURE_OPENAI_MODEL||The name of your model deployment|
194194
|AZURE_OPENAI_MODEL_NAME|gpt-35-turbo|The name of the model|
195+
|AZURE_OPENAI_MODEL_VERSION|0613|The version of the model to use|
195196
|AZURE_OPENAI_API_KEY||One of the API keys of your Azure OpenAI resource|
196-
|AZURE_OPENAI_EMBEDDING_MODEL|text-embedding-ada-002|The name of you Azure OpenAI embeddings model deployment|
197+
|AZURE_OPENAI_EMBEDDING_MODEL|text-embedding-ada-002|The name of your Azure OpenAI embeddings model deployment|
198+
|AZURE_OPENAI_EMBEDDING_MODEL_NAME|text-embedding-ada-002|The name of the embeddings model (can be found in Azure AI Studio)|
199+
|AZURE_OPENAI_EMBEDDING_MODEL_VERSION|2|The version of the embeddings model to use (can be found in Azure AI Studio)|
197200
|AZURE_OPENAI_TEMPERATURE|0|What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. A value of 0 is recommended when using your data.|
198201
|AZURE_OPENAI_TOP_P|1.0|An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. We recommend setting this to 1.0 when using your data.|
199202
|AZURE_OPENAI_MAX_TOKENS|1000|The maximum number of tokens allowed for the generated answer.|

docs/model_configuration.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
[Back to *Chat with your data* README](../README.md)
2+
3+
# Overview
4+
5+
This document outlines the necessary steps and configurations required for setting up and using models within the solution. It serves as a guide for developers to configure and customize model settings according to the project's needs.
6+
7+
# Model Selection
8+
9+
## Available Models
10+
11+
- For a list of available models, see the [Microsoft Azure AI Services - OpenAI Models documentation](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models).
12+
13+
## Environment Variables (as listed in Azure AI Studio)
14+
- You can access the Environment Variables section of the `LOCAL_DEPLOYMENT.md` file by clicking on this link: [Environment Variables section in LOCAL_DEPLOYMENT.md](docs/LOCAL_DEPLOYMENT.md#environment-variables).
15+
16+
### LLM
17+
- `AZURE_OPENAI_MODEL`: The Azure OpenAI Model Deployment Name
18+
- example: `my-gpt-35-turbo-16k`
19+
- `AZURE_OPENAI_MODEL_NAME`: The Azure OpenAI Model Name
20+
- example: `gpt-35-turbo-16k`
21+
- `AZURE_OPENAI_MODEL_VERSION`: The Azure OpenAI Model Version
22+
- example: `0613`
23+
- `AZURE_OPENAI_MODEL_CAPACITY`: The Tokens per Minute Rate Limit (thousands)
24+
- example: `30`
25+
26+
### VISION
27+
- `AZURE_OPENAI_VISION_MODEL`: The Azure OpenAI Model Deployment Name
28+
- example: `my-gpt-4`
29+
- `AZURE_OPENAI_VISION_MODEL_NAME`: The Azure OpenAI Model Name
30+
- example: `gpt-4`
31+
- `AZURE_OPENAI_VISION_MODEL_VERSION`: The Azure OpenAI Model Version
32+
- example: `vision-preview`
33+
- `AZURE_OPENAI_VISION_MODEL_CAPACITY`: The Tokens per Minute Rate Limit (thousands)
34+
- example: `10`
35+
36+
### EMBEDDINGS
37+
- `AZURE_OPENAI_EMBEDDING_MODEL`: The Azure OpenAI Model Deployment Name
38+
- example: `my-text-embedding-ada-002`
39+
- `AZURE_OPENAI_EMBEDDING_MODEL_NAME`: The Azure OpenAI Model Name
40+
- example: `text-embedding-ada-002`
41+
- `AZURE_OPENAI_EMBEDDING_MODEL_VERSION`: The Azure OpenAI Model Version
42+
- example: `2`
43+
- `AZURE_OPENAI_EMBEDDING_MODEL_CAPACITY`: The Tokens per Minute Rate Limit (thousands)
44+
- example: `30`
45+
- `AZURE_SEARCH_DIMENSIONS`: Azure OpenAI Embeddings dimensions. A full list of dimensions can be found [here](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#embeddings-models).
46+
- example: `1536`
47+
48+
### OPENAI API Configuration
49+
- `AZURE_OPENAI_API_VERSION`: The Azure OpenAI API Version
50+
- example: `2024-02-01`
51+
- `AZURE_OPENAI_MAX_TOKENS`: The Maximum Tokens per Request
52+
- example: `1000`
53+
- `AZURE_OPENAI_TEMPERATURE`: The Sampling Temperature (from 0 to 1)
54+
- example: `0`
55+
- `AZURE_OPENAI_TOP_P`: The Top P Sampling Probability
56+
- example: `1`
57+
58+
# Model Configuration
59+
- To set an environment variable, you can use the following command:
60+
- `azd env set <ENVIRONMENT_VARIABLE_NAME> <ENVIRONMENT_VARIABLE_VALUE>`
61+
62+
- To get the value of an environment variable, you can use the following command:
63+
- `azd env get <ENVIRONMENT_VARIABLE_NAME>`
64+
65+
## GPT-4o & Text-Embeddings-3-Large
66+
- The following environment variables are set for the GPT-4o and Text-Embeddings-3-Large models:
67+
- `AZURE_OPENAI_API_VERSION`: `2024-05-01-preview`
68+
- `AZURE_OPENAI_MODEL`: `my-gpt-4o`
69+
- `AZURE_OPENAI_MODEL_NAME`: `gpt-4o`
70+
- `AZURE_OPENAI_MODEL_VERSION`: `2024-05-13`
71+
- `AZURE_OPENAI_EMBEDDING_MODEL`: `my-text-embedding-3-large`
72+
- `AZURE_OPENAI_EMBEDDING_MODEL_NAME`: `text-embedding-3-large`
73+
- `AZURE_OPENAI_EMBEDDING_MODEL_VERSION`: `1`
74+
- `AZURE_SEARCH_DIMENSIONS`: `3072`
75+
- `AZURE_MAX_TOKENS`: `4096`
76+
77+
---

infra/main.bicep

Lines changed: 56 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ param azureOpenAIModel string = 'gpt-35-turbo-16k'
102102
@description('Azure OpenAI Model Name')
103103
param azureOpenAIModelName string = 'gpt-35-turbo-16k'
104104

105+
@description('Azure OpenAI Model Version')
105106
param azureOpenAIModelVersion string = '0613'
106107

107108
@description('Azure OpenAI Model Capacity - See here for more info https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/quota')
@@ -168,6 +169,9 @@ param azureOpenAIEmbeddingModel string = 'text-embedding-ada-002'
168169
@description('Azure OpenAI Embedding Model Name')
169170
param azureOpenAIEmbeddingModelName string = 'text-embedding-ada-002'
170171

172+
@description('Azure OpenAI Embedding Model Version')
173+
param azureOpenAIEmbeddingModelVersion string = '2'
174+
171175
@description('Azure OpenAI Embedding Model Capacity - See here for more info https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/quota')
172176
param azureOpenAIEmbeddingModelCapacity int = 30
173177

@@ -327,7 +331,7 @@ var defaultOpenAiDeployments = [
327331
model: {
328332
format: 'OpenAI'
329333
name: azureOpenAIEmbeddingModelName
330-
version: '2'
334+
version: azureOpenAIEmbeddingModelVersion
331335
}
332336
sku: {
333337
name: 'Standard'
@@ -339,21 +343,21 @@ var defaultOpenAiDeployments = [
339343
var openAiDeployments = concat(
340344
defaultOpenAiDeployments,
341345
useAdvancedImageProcessing
342-
? [
343-
{
344-
name: azureOpenAIVisionModel
345-
model: {
346-
format: 'OpenAI'
347-
name: azureOpenAIVisionModelName
348-
version: azureOpenAIVisionModelVersion
349-
}
350-
sku: {
351-
name: 'Standard'
352-
capacity: azureOpenAIVisionModelCapacity
353-
}
354-
}
355-
]
356-
: []
346+
? [
347+
{
348+
name: azureOpenAIVisionModel
349+
model: {
350+
format: 'OpenAI'
351+
name: azureOpenAIVisionModelName
352+
version: azureOpenAIVisionModelVersion
353+
}
354+
sku: {
355+
name: 'Standard'
356+
capacity: azureOpenAIVisionModelCapacity
357+
}
358+
}
359+
]
360+
: []
357361
)
358362

359363
module openai 'core/ai/cognitiveservices.bicep' = {
@@ -534,6 +538,7 @@ module web './app/web.bicep' = if (hostingModel == 'code') {
534538
AZURE_OPENAI_RESOURCE: azureOpenAIResourceName
535539
AZURE_OPENAI_MODEL: azureOpenAIModel
536540
AZURE_OPENAI_MODEL_NAME: azureOpenAIModelName
541+
AZURE_OPENAI_MODEL_VERSION: azureOpenAIModelVersion
537542
AZURE_OPENAI_TEMPERATURE: azureOpenAITemperature
538543
AZURE_OPENAI_TOP_P: azureOpenAITopP
539544
AZURE_OPENAI_MAX_TOKENS: azureOpenAIMaxTokens
@@ -542,6 +547,8 @@ module web './app/web.bicep' = if (hostingModel == 'code') {
542547
AZURE_OPENAI_API_VERSION: azureOpenAIApiVersion
543548
AZURE_OPENAI_STREAM: azureOpenAIStream
544549
AZURE_OPENAI_EMBEDDING_MODEL: azureOpenAIEmbeddingModel
550+
AZURE_OPENAI_EMBEDDING_MODEL_NAME: azureOpenAIEmbeddingModelName
551+
AZURE_OPENAI_EMBEDDING_MODEL_VERSION: azureOpenAIEmbeddingModelVersion
545552
AZURE_SEARCH_USE_SEMANTIC_SEARCH: azureSearchUseSemanticSearch
546553
AZURE_SEARCH_SERVICE: 'https://${azureAISearchName}.search.windows.net'
547554
AZURE_SEARCH_INDEX: azureSearchIndex
@@ -608,6 +615,7 @@ module web_docker './app/web.bicep' = if (hostingModel == 'container') {
608615
AZURE_OPENAI_RESOURCE: azureOpenAIResourceName
609616
AZURE_OPENAI_MODEL: azureOpenAIModel
610617
AZURE_OPENAI_MODEL_NAME: azureOpenAIModelName
618+
AZURE_OPENAI_MODEL_VERSION: azureOpenAIModelVersion
611619
AZURE_OPENAI_TEMPERATURE: azureOpenAITemperature
612620
AZURE_OPENAI_TOP_P: azureOpenAITopP
613621
AZURE_OPENAI_MAX_TOKENS: azureOpenAIMaxTokens
@@ -616,6 +624,8 @@ module web_docker './app/web.bicep' = if (hostingModel == 'container') {
616624
AZURE_OPENAI_API_VERSION: azureOpenAIApiVersion
617625
AZURE_OPENAI_STREAM: azureOpenAIStream
618626
AZURE_OPENAI_EMBEDDING_MODEL: azureOpenAIEmbeddingModel
627+
AZURE_OPENAI_EMBEDDING_MODEL_NAME: azureOpenAIEmbeddingModelName
628+
AZURE_OPENAI_EMBEDDING_MODEL_VERSION: azureOpenAIEmbeddingModelVersion
619629
AZURE_SEARCH_USE_SEMANTIC_SEARCH: azureSearchUseSemanticSearch
620630
AZURE_SEARCH_SERVICE: 'https://${azureAISearchName}.search.windows.net'
621631
AZURE_SEARCH_INDEX: azureSearchIndex
@@ -682,6 +692,7 @@ module adminweb './app/adminweb.bicep' = if (hostingModel == 'code') {
682692
AZURE_OPENAI_RESOURCE: azureOpenAIResourceName
683693
AZURE_OPENAI_MODEL: azureOpenAIModel
684694
AZURE_OPENAI_MODEL_NAME: azureOpenAIModelName
695+
AZURE_OPENAI_MODEL_VERSION: azureOpenAIModelVersion
685696
AZURE_OPENAI_TEMPERATURE: azureOpenAITemperature
686697
AZURE_OPENAI_TOP_P: azureOpenAITopP
687698
AZURE_OPENAI_MAX_TOKENS: azureOpenAIMaxTokens
@@ -690,6 +701,8 @@ module adminweb './app/adminweb.bicep' = if (hostingModel == 'code') {
690701
AZURE_OPENAI_API_VERSION: azureOpenAIApiVersion
691702
AZURE_OPENAI_STREAM: azureOpenAIStream
692703
AZURE_OPENAI_EMBEDDING_MODEL: azureOpenAIEmbeddingModel
704+
AZURE_OPENAI_EMBEDDING_MODEL_NAME: azureOpenAIEmbeddingModelName
705+
AZURE_OPENAI_EMBEDDING_MODEL_VERSION: azureOpenAIEmbeddingModelVersion
693706
AZURE_SEARCH_SERVICE: 'https://${azureAISearchName}.search.windows.net'
694707
AZURE_SEARCH_INDEX: azureSearchIndex
695708
AZURE_SEARCH_USE_SEMANTIC_SEARCH: azureSearchUseSemanticSearch
@@ -754,6 +767,7 @@ module adminweb_docker './app/adminweb.bicep' = if (hostingModel == 'container')
754767
AZURE_OPENAI_RESOURCE: azureOpenAIResourceName
755768
AZURE_OPENAI_MODEL: azureOpenAIModel
756769
AZURE_OPENAI_MODEL_NAME: azureOpenAIModelName
770+
AZURE_OPENAI_MODEL_VERSION: azureOpenAIModelVersion
757771
AZURE_OPENAI_TEMPERATURE: azureOpenAITemperature
758772
AZURE_OPENAI_TOP_P: azureOpenAITopP
759773
AZURE_OPENAI_MAX_TOKENS: azureOpenAIMaxTokens
@@ -762,6 +776,8 @@ module adminweb_docker './app/adminweb.bicep' = if (hostingModel == 'container')
762776
AZURE_OPENAI_API_VERSION: azureOpenAIApiVersion
763777
AZURE_OPENAI_STREAM: azureOpenAIStream
764778
AZURE_OPENAI_EMBEDDING_MODEL: azureOpenAIEmbeddingModel
779+
AZURE_OPENAI_EMBEDDING_MODEL_NAME: azureOpenAIEmbeddingModelName
780+
AZURE_OPENAI_EMBEDDING_MODEL_VERSION: azureOpenAIEmbeddingModelVersion
765781
AZURE_SEARCH_SERVICE: 'https://${azureAISearchName}.search.windows.net'
766782
AZURE_SEARCH_INDEX: azureSearchIndex
767783
AZURE_SEARCH_USE_SEMANTIC_SEARCH: azureSearchUseSemanticSearch
@@ -812,8 +828,8 @@ module workbook './app/workbook.bicep' = {
812828
functionName: hostingModel == 'container' ? function_docker.outputs.functionName : function.outputs.functionName
813829
websiteName: hostingModel == 'container' ? web_docker.outputs.FRONTEND_API_NAME : web.outputs.FRONTEND_API_NAME
814830
adminWebsiteName: hostingModel == 'container'
815-
? adminweb_docker.outputs.WEBSITE_ADMIN_NAME
816-
: adminweb.outputs.WEBSITE_ADMIN_NAME
831+
? adminweb_docker.outputs.WEBSITE_ADMIN_NAME
832+
: adminweb.outputs.WEBSITE_ADMIN_NAME
817833
eventGridSystemTopicName: eventgrid.outputs.name
818834
logAnalyticsName: monitoring.outputs.logAnalyticsWorkspaceName
819835
azureOpenAIResourceName: openai.outputs.name
@@ -860,7 +876,11 @@ module function './app/function.bicep' = if (hostingModel == 'code') {
860876
AZURE_CONTENT_SAFETY_ENDPOINT: contentsafety.outputs.endpoint
861877
AZURE_FORM_RECOGNIZER_ENDPOINT: formrecognizer.outputs.endpoint
862878
AZURE_OPENAI_MODEL: azureOpenAIModel
879+
AZURE_OPENAI_MODEL_NAME: azureOpenAIModelName
880+
AZURE_OPENAI_MODEL_VERSION: azureOpenAIModelVersion
863881
AZURE_OPENAI_EMBEDDING_MODEL: azureOpenAIEmbeddingModel
882+
AZURE_OPENAI_EMBEDDING_MODEL_NAME: azureOpenAIEmbeddingModelName
883+
AZURE_OPENAI_EMBEDDING_MODEL_VERSION: azureOpenAIEmbeddingModelVersion
864884
AZURE_OPENAI_RESOURCE: azureOpenAIResourceName
865885
AZURE_OPENAI_API_VERSION: azureOpenAIApiVersion
866886
AZURE_SEARCH_INDEX: azureSearchIndex
@@ -913,7 +933,11 @@ module function_docker './app/function.bicep' = if (hostingModel == 'container')
913933
AZURE_CONTENT_SAFETY_ENDPOINT: contentsafety.outputs.endpoint
914934
AZURE_FORM_RECOGNIZER_ENDPOINT: formrecognizer.outputs.endpoint
915935
AZURE_OPENAI_MODEL: azureOpenAIModel
936+
AZURE_OPENAI_MODEL_NAME: azureOpenAIModelName
937+
AZURE_OPENAI_MODEL_VERSION: azureOpenAIModelVersion
916938
AZURE_OPENAI_EMBEDDING_MODEL: azureOpenAIEmbeddingModel
939+
AZURE_OPENAI_EMBEDDING_MODEL_NAME: azureOpenAIEmbeddingModelName
940+
AZURE_OPENAI_EMBEDDING_MODEL_VERSION: azureOpenAIEmbeddingModelVersion
917941
AZURE_OPENAI_RESOURCE: azureOpenAIResourceName
918942
AZURE_OPENAI_API_VERSION: azureOpenAIApiVersion
919943
AZURE_SEARCH_INDEX: azureSearchIndex
@@ -973,11 +997,11 @@ module storage 'core/storage/storage-account.bicep' = {
973997
name: 'Standard_GRS'
974998
}
975999
deleteRetentionPolicy: azureSearchUseIntegratedVectorization
976-
? {
977-
enabled: true
978-
days: 7
979-
}
980-
: {}
1000+
? {
1001+
enabled: true
1002+
days: 7
1003+
}
1004+
: {}
9811005
containers: [
9821006
{
9831007
name: blobContainerName
@@ -1078,6 +1102,7 @@ output AZURE_KEY_VAULT_ENDPOINT string = useKeyVault ? keyvault.outputs.endpoint
10781102
output AZURE_KEY_VAULT_NAME string = useKeyVault || authType == 'rbac' ? keyvault.outputs.name : ''
10791103
output AZURE_LOCATION string = location
10801104
output AZURE_OPENAI_MODEL_NAME string = azureOpenAIModelName
1105+
output AZURE_OPENAI_MODEL_VERSION string = azureOpenAIModelVersion
10811106
output AZURE_OPENAI_STREAM string = azureOpenAIStream
10821107
output AZURE_OPENAI_SYSTEM_MESSAGE string = azureOpenAISystemMessage
10831108
output AZURE_OPENAI_STOP_SEQUENCE string = azureOpenAIStopSequence
@@ -1086,8 +1111,8 @@ output AZURE_OPENAI_TOP_P string = azureOpenAITopP
10861111
output AZURE_OPENAI_TEMPERATURE string = azureOpenAITemperature
10871112
output AZURE_OPENAI_API_VERSION string = azureOpenAIApiVersion
10881113
output AZURE_OPENAI_RESOURCE string = azureOpenAIResourceName
1089-
output AZURE_OPENAI_EMBEDDING_MODEL string = azureOpenAIEmbeddingModel
1090-
output AZURE_OPENAI_MODEL string = azureOpenAIModel
1114+
output AZURE_OPENAI_EMBEDDING_MODEL_NAME string = azureOpenAIEmbeddingModelName
1115+
output AZURE_OPENAI_EMBEDDING_MODEL_VERSION string = azureOpenAIEmbeddingModelVersion
10911116
output AZURE_OPENAI_API_KEY string = useKeyVault ? storekeys.outputs.OPENAI_KEY_NAME : ''
10921117
output AZURE_RESOURCE_GROUP string = rgName
10931118
output AZURE_SEARCH_KEY string = useKeyVault ? storekeys.outputs.SEARCH_KEY_NAME : ''
@@ -1116,16 +1141,16 @@ output DOCUMENT_PROCESSING_QUEUE_NAME string = queueName
11161141
output ORCHESTRATION_STRATEGY string = orchestrationStrategy
11171142
output USE_KEY_VAULT bool = useKeyVault
11181143
output FRONTEND_WEBSITE_NAME string = hostingModel == 'code'
1119-
? web.outputs.FRONTEND_API_URI
1120-
: web_docker.outputs.FRONTEND_API_URI
1144+
? web.outputs.FRONTEND_API_URI
1145+
: web_docker.outputs.FRONTEND_API_URI
11211146
output ADMIN_WEBSITE_NAME string = hostingModel == 'code'
1122-
? adminweb.outputs.WEBSITE_ADMIN_URI
1123-
: adminweb_docker.outputs.WEBSITE_ADMIN_URI
1147+
? adminweb.outputs.WEBSITE_ADMIN_URI
1148+
: adminweb_docker.outputs.WEBSITE_ADMIN_URI
11241149
output LOGLEVEL string = logLevel
11251150
output CONVERSATION_FLOW string = conversationFlow
11261151
output USE_ADVANCED_IMAGE_PROCESSING bool = useAdvancedImageProcessing
11271152
output ADVANCED_IMAGE_PROCESSING_MAX_IMAGES int = advancedImageProcessingMaxImages
11281153
output AZURE_ML_WORKSPACE_NAME string = orchestrationStrategy == 'prompt_flow'
1129-
? machineLearning.outputs.workspaceName
1130-
: ''
1154+
? machineLearning.outputs.workspaceName
1155+
: ''
11311156
output RESOURCE_TOKEN string = resourceToken

infra/main.bicepparam

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ param azureOpenAIVisionModelVersion = readEnvironmentVariable('AZURE_OPENAI_VISI
3333
param azureOpenAIVisionModelCapacity = int(readEnvironmentVariable('AZURE_OPENAI_VISION_MODEL_CAPACITY', '10'))
3434
param azureOpenAIEmbeddingModelCapacity = int(readEnvironmentVariable('AZURE_OPENAI_EMBEDDING_MODEL_CAPACITY', '30'))
3535
param azureOpenAIEmbeddingModel = readEnvironmentVariable('AZURE_OPENAI_EMBEDDING_MODEL', 'text-embedding-ada-002')
36+
param azureOpenAIEmbeddingModelName = readEnvironmentVariable('AZURE_OPENAI_EMBEDDING_MODEL_NAME', 'text-embedding-ada-002')
37+
param azureOpenAIEmbeddingModelVersion = readEnvironmentVariable('AZURE_OPENAI_EMBEDDING_MODEL_VERSION', '2')
3638
param azureOpenAIMaxTokens = readEnvironmentVariable('AZURE_OPENAI_MAX_TOKENS', '1000')
3739
param azureOpenAITemperature = readEnvironmentVariable('AZURE_OPENAI_TEMPERATURE', '0')
3840
param azureOpenAITopP = readEnvironmentVariable('AZURE_OPENAI_TOP_P', '1')

0 commit comments

Comments
 (0)