|
6 | 6 | using Microsoft.Extensions.DependencyInjection;
|
7 | 7 | using Microsoft.KernelMemory.AI;
|
8 | 8 | using Microsoft.KernelMemory.AI.Anthropic;
|
| 9 | +using Microsoft.KernelMemory.AI.OpenAI; |
9 | 10 | using Microsoft.KernelMemory.DocumentStorage.DevTools;
|
10 | 11 | using Microsoft.KernelMemory.MemoryDb.SQLServer;
|
11 | 12 | using Microsoft.KernelMemory.MemoryStorage;
|
@@ -212,15 +213,19 @@ private void ConfigureIngestionEmbeddingGenerators(IKernelMemoryBuilder builder)
|
212 | 213 | case string y when y.Equals("AzureOpenAIEmbedding", StringComparison.OrdinalIgnoreCase):
|
213 | 214 | {
|
214 | 215 | var instance = this.GetServiceInstance<ITextEmbeddingGenerator>(builder,
|
215 |
| - s => s.AddAzureOpenAIEmbeddingGeneration(this.GetServiceConfig<AzureOpenAIConfig>("AzureOpenAIEmbedding"))); |
| 216 | + s => s.AddAzureOpenAIEmbeddingGeneration( |
| 217 | + config: this.GetServiceConfig<AzureOpenAIConfig>("AzureOpenAIEmbedding"), |
| 218 | + textTokenizer: new GPT4Tokenizer())); |
216 | 219 | builder.AddIngestionEmbeddingGenerator(instance);
|
217 | 220 | break;
|
218 | 221 | }
|
219 | 222 |
|
220 | 223 | case string x when x.Equals("OpenAI", StringComparison.OrdinalIgnoreCase):
|
221 | 224 | {
|
222 | 225 | var instance = this.GetServiceInstance<ITextEmbeddingGenerator>(builder,
|
223 |
| - s => s.AddOpenAITextEmbeddingGeneration(this.GetServiceConfig<OpenAIConfig>("OpenAI"))); |
| 226 | + s => s.AddOpenAITextEmbeddingGeneration( |
| 227 | + config: this.GetServiceConfig<OpenAIConfig>("OpenAI"), |
| 228 | + textTokenizer: new GPT4Tokenizer())); |
224 | 229 | builder.AddIngestionEmbeddingGenerator(instance);
|
225 | 230 | break;
|
226 | 231 | }
|
@@ -345,11 +350,15 @@ private void ConfigureRetrievalEmbeddingGenerator(IKernelMemoryBuilder builder)
|
345 | 350 | {
|
346 | 351 | case string x when x.Equals("AzureOpenAI", StringComparison.OrdinalIgnoreCase):
|
347 | 352 | case string y when y.Equals("AzureOpenAIEmbedding", StringComparison.OrdinalIgnoreCase):
|
348 |
| - builder.Services.AddAzureOpenAIEmbeddingGeneration(this.GetServiceConfig<AzureOpenAIConfig>("AzureOpenAIEmbedding")); |
| 353 | + builder.Services.AddAzureOpenAIEmbeddingGeneration( |
| 354 | + config: this.GetServiceConfig<AzureOpenAIConfig>("AzureOpenAIEmbedding"), |
| 355 | + textTokenizer: new GPT4Tokenizer()); |
349 | 356 | break;
|
350 | 357 |
|
351 | 358 | case string x when x.Equals("OpenAI", StringComparison.OrdinalIgnoreCase):
|
352 |
| - builder.Services.AddOpenAITextEmbeddingGeneration(this.GetServiceConfig<OpenAIConfig>("OpenAI")); |
| 359 | + builder.Services.AddOpenAITextEmbeddingGeneration( |
| 360 | + config: this.GetServiceConfig<OpenAIConfig>("OpenAI"), |
| 361 | + textTokenizer: new GPT4Tokenizer()); |
353 | 362 | break;
|
354 | 363 |
|
355 | 364 | default:
|
@@ -412,11 +421,15 @@ private void ConfigureTextGenerator(IKernelMemoryBuilder builder)
|
412 | 421 | {
|
413 | 422 | case string x when x.Equals("AzureOpenAI", StringComparison.OrdinalIgnoreCase):
|
414 | 423 | case string y when y.Equals("AzureOpenAIText", StringComparison.OrdinalIgnoreCase):
|
415 |
| - builder.Services.AddAzureOpenAITextGeneration(this.GetServiceConfig<AzureOpenAIConfig>("AzureOpenAIText")); |
| 424 | + builder.Services.AddAzureOpenAITextGeneration( |
| 425 | + config: this.GetServiceConfig<AzureOpenAIConfig>("AzureOpenAIText"), |
| 426 | + textTokenizer: new GPT4Tokenizer()); |
416 | 427 | break;
|
417 | 428 |
|
418 | 429 | case string x when x.Equals("OpenAI", StringComparison.OrdinalIgnoreCase):
|
419 |
| - builder.Services.AddOpenAITextGeneration(this.GetServiceConfig<OpenAIConfig>("OpenAI")); |
| 430 | + builder.Services.AddOpenAITextGeneration( |
| 431 | + config: this.GetServiceConfig<OpenAIConfig>("OpenAI"), |
| 432 | + textTokenizer: new GPT4Tokenizer()); |
420 | 433 | break;
|
421 | 434 |
|
422 | 435 | case string x when x.Equals("Anthropic", StringComparison.OrdinalIgnoreCase):
|
|
0 commit comments