Skip to content

Commit 33e28a3

Browse files
use enum
1 parent ce29264 commit 33e28a3

File tree

6 files changed

+14
-8
lines changed

6 files changed

+14
-8
lines changed

app/backend/Extensions/SearchClientExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ internal static async Task<SupportingContentRecord[]> QueryDocumentsAsync(
4141
Size = top,
4242
};
4343

44-
if (embedding != null && overrides?.RetrievalMode != "Text")
44+
if (embedding != null && overrides?.RetrievalMode != RetrievalMode.Text)
4545
{
4646
var k = useSemanticRanker ? 50 : top;
4747
var vectorQuery = new VectorizedQuery(embedding)

app/backend/Services/ReadRetrieveReadChatService.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,15 +45,15 @@ public async Task<ApproachResponse> ReplyAsync(
4545
var question = history.LastOrDefault()?.User is { } userQuestion
4646
? userQuestion
4747
: throw new InvalidOperationException("Use question is null");
48-
if (overrides?.RetrievalMode != "Text" && embedding is not null)
48+
if (overrides?.RetrievalMode != RetrievalMode.Text && embedding is not null)
4949
{
5050
embeddings = (await embedding.GenerateEmbeddingAsync(question, cancellationToken: cancellationToken)).ToArray();
5151
}
5252

5353
// step 1
5454
// use llm to get query if retrieval mode is not vector
5555
string? query = null;
56-
if (overrides?.RetrievalMode != "Vector")
56+
if (overrides?.RetrievalMode != RetrievalMode.Vector)
5757
{
5858
var getQueryChat = chat.CreateNewChat(@"You are a helpful AI assistant, generate search query for followup question.
5959
Make your respond simple and precise. Return the query only, do not return any other text.

app/shared/Shared/Models/RequestOverrides.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,17 @@
22

33
namespace Shared.Models;
44

5+
public enum RetrievalMode
6+
{
7+
Text = 0,
8+
Vector,
9+
Hybrid,
10+
}
511
public record RequestOverrides
612
{
713
public bool SemanticRanker { get; set; } = false;
814

9-
public string RetrievalMode { get; set; } = "Vector"; // available option: Text, Vector, Hybrid
15+
public RetrievalMode RetrievalMode { get; set; } = RetrievalMode.Vector; // available option: Text, Vector, Hybrid
1016

1117
public bool? SemanticCaptions { get; set; }
1218
public string? ExcludeCategory { get; set; }

app/shared/Shared/Services/AzureDocumentService.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public async Task<SupportingContentRecord[]> QueryDocumentsAsync(
5555
Size = top,
5656
};
5757

58-
if (embedding != null && overrides?.RetrievalMode != "Text")
58+
if (embedding != null && overrides?.RetrievalMode != RetrievalMode.Text)
5959
{
6060
var k = useSemanticRanker ? 50 : top;
6161
var vectorQuery = new VectorizedQuery(embedding)

app/tests/MinimalApi.Tests/AzureDocumentSearchServiceTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public async Task QueryDocumentsTestTextOnlyAsync()
2626
// query only
2727
var option = new RequestOverrides
2828
{
29-
RetrievalMode = "Text",
29+
RetrievalMode = RetrievalMode.Text,
3030
Top = 3,
3131
SemanticCaptions = true,
3232
SemanticRanker = true,
@@ -54,7 +54,7 @@ public async Task QueryDocumentsTestEmbeddingOnlyAsync()
5454
// query only
5555
var option = new RequestOverrides
5656
{
57-
RetrievalMode = "Vector",
57+
RetrievalMode = RetrievalMode.Vector,
5858
Top = 3,
5959
SemanticCaptions = true,
6060
SemanticRanker = true,

app/tests/MinimalApi.Tests/ReadRetrieveReadChatServiceTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public async Task NorthwindHealthQuestionTest_TextOnlyAsync()
4949
};
5050
var overrides = new RequestOverrides
5151
{
52-
RetrievalMode = "Text",
52+
RetrievalMode = RetrievalMode.Text,
5353
Top = 2,
5454
SemanticCaptions = true,
5555
SemanticRanker = true,

0 commit comments

Comments
 (0)