Skip to content

Commit 8347150

Browse files
committed
add tests; updating env vars
1 parent cc17995 commit 8347150

File tree

5 files changed

+51
-0
lines changed

5 files changed

+51
-0
lines changed

.azdo/pipelines/azure-dev.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ steps:
6969
AZURE_OPENAI_CHATGPT_DEPLOYMENT_CAPACITY: $(AZURE_OPENAI_CHATGPT_DEPLOYMENT_CAPACITY)
7070
AZURE_OPENAI_CHATGPT_DEPLOYMENT_VERSION: $(AZURE_OPENAI_CHATGPT_DEPLOYMENT_VERSION)
7171
AZURE_OPENAI_CHATGPT_DEPLOYMENT_SKU: $(AZURE_OPENAI_CHATGPT_DEPLOYMENT_SKU)
72+
AZURE_OPENAI_REASONING_EFFORT: $(AZURE_OPENAI_REASONING_EFFORT)
7273
AZURE_OPENAI_EMB_MODEL_NAME: $(AZURE_OPENAI_EMB_MODEL_NAME)
7374
AZURE_OPENAI_EMB_DEPLOYMENT: $(AZURE_OPENAI_EMB_DEPLOYMENT)
7475
AZURE_OPENAI_EMB_DEPLOYMENT_CAPACITY: $(AZURE_OPENAI_EMB_DEPLOYMENT_CAPACITY)

.github/workflows/azure-dev.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ jobs:
6060
AZURE_OPENAI_CHATGPT_DEPLOYMENT: ${{ vars.AZURE_OPENAI_CHATGPT_DEPLOYMENT }}
6161
AZURE_OPENAI_CHATGPT_DEPLOYMENT_CAPACITY: ${{ vars.AZURE_OPENAI_CHATGPT_DEPLOYMENT_CAPACITY }}
6262
AZURE_OPENAI_CHATGPT_DEPLOYMENT_VERSION: ${{ vars.AZURE_OPENAI_CHATGPT_DEPLOYMENT_VERSION }}
63+
AZURE_OPENAI_REASONING_EFFORT: ${{ vars.AZURE_OPENAI_REASONING_EFFORT }}
6364
AZURE_OPENAI_EMB_MODEL_NAME: ${{ vars.AZURE_OPENAI_EMB_MODEL_NAME }}
6465
AZURE_OPENAI_EMB_DEPLOYMENT: ${{ vars.AZURE_OPENAI_EMB_DEPLOYMENT }}
6566
AZURE_OPENAI_EMB_DEPLOYMENT_CAPACITY: ${{ vars.AZURE_OPENAI_EMB_DEPLOYMENT_CAPACITY }}

infra/main.bicep

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ param storageResourceGroupLocation string = location
3737
param storageContainerName string = 'content'
3838
param storageSkuName string // Set in main.parameters.json
3939

40+
param defaultReasoningEffort string // Set in main.parameters.json
41+
4042
param userStorageAccountName string = ''
4143
param userStorageContainerName string = 'user-content'
4244

@@ -400,6 +402,7 @@ var appEnvVariables = {
400402
AZURE_OPENAI_EMB_DIMENSIONS: embedding.dimensions
401403
AZURE_OPENAI_CHATGPT_MODEL: chatGpt.modelName
402404
AZURE_OPENAI_GPT4V_MODEL: gpt4v.modelName
405+
AZURE_OPENAI_REASONING_EFFORT: defaultReasoningEffort
403406
// Specific to Azure OpenAI
404407
AZURE_OPENAI_SERVICE: isAzureOpenAiHost && deployAzureOpenAi ? openAi.outputs.name : ''
405408
AZURE_OPENAI_CHATGPT_DEPLOYMENT: chatGpt.deploymentName

infra/main.parameters.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,9 @@
8383
"searchServiceQueryRewriting": {
8484
"value": "${AZURE_SEARCH_QUERY_REWRITING=false}"
8585
},
86+
"defaultReasoningEffort": {
87+
"value": "${AZURE_OPENAI_REASONING_EFFORT=medium}"
88+
},
8689
"storageAccountName": {
8790
"value": "${AZURE_STORAGE_ACCOUNT}"
8891
},

tests/test_app_config.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,3 +259,46 @@ async def test_app_config_for_client(client):
259259
assert result["showGPT4VOptions"] == (os.getenv("USE_GPT4V") == "true")
260260
assert result["showSemanticRankerOption"] is True
261261
assert result["showVectorOption"] is True
262+
assert result["streamingEnabled"] is True
263+
assert result["showReasoningEffortOption"] is False
264+
265+
@pytest.mark.asyncio
266+
async def test_app_config_for_reasoning(monkeypatch, minimal_env):
267+
monkeypatch.setenv("AZURE_OPENAI_CHATGPT_MODEL", "o3-mini")
268+
monkeypatch.setenv("AZURE_OPENAI_CHATGPT_DEPLOYMENT", "o3-mini")
269+
quart_app = app.create_app()
270+
async with quart_app.test_app() as test_app:
271+
client = test_app.test_client()
272+
response = await client.get("/config")
273+
assert response.status_code == 200
274+
result = await response.get_json()
275+
assert result["streamingEnabled"] is True
276+
assert result["showReasoningEffortOption"] is True
277+
278+
@pytest.mark.asyncio
279+
async def test_app_config_for_reasoning_without_streaming(monkeypatch, minimal_env):
280+
monkeypatch.setenv("AZURE_OPENAI_CHATGPT_MODEL", "o1-preview")
281+
monkeypatch.setenv("AZURE_OPENAI_CHATGPT_DEPLOYMENT", "o1-preview")
282+
quart_app = app.create_app()
283+
async with quart_app.test_app() as test_app:
284+
client = test_app.test_client()
285+
response = await client.get("/config")
286+
assert response.status_code == 200
287+
result = await response.get_json()
288+
assert result["streamingEnabled"] is False
289+
assert result["showReasoningEffortOption"] is True
290+
291+
@pytest.mark.asyncio
292+
async def test_app_config_for_reasoning_override_effort(monkeypatch, minimal_env):
293+
monkeypatch.setenv("AZURE_OPENAI_REASONING_EFFORT", "low")
294+
monkeypatch.setenv("AZURE_OPENAI_CHATGPT_MODEL", "o3-mini")
295+
monkeypatch.setenv("AZURE_OPENAI_CHATGPT_DEPLOYMENT", "o3-mini")
296+
quart_app = app.create_app()
297+
async with quart_app.test_app() as test_app:
298+
client = test_app.test_client()
299+
response = await client.get("/config")
300+
assert response.status_code == 200
301+
result = await response.get_json()
302+
assert result["streamingEnabled"] is True
303+
assert result["showReasoningEffortOption"] is True
304+
assert result["defaultReasoningEffort"] == "low"

0 commit comments

Comments
 (0)