File tree Expand file tree Collapse file tree 3 files changed +17
-7
lines changed
03-CoreGenerativeAITechniques
src/RAGSimple-02MEAIVectorsMemory Expand file tree Collapse file tree 3 files changed +17
-7
lines changed Original file line number Diff line number Diff line change @@ -84,11 +84,14 @@ We'll use the Microsoft.Extension.AI along with the [Microsoft.Extensions.Vector
84
84
3 . Our next task then is to convert our knowledge store (the `movieData ` object ) into embeddings and then store them into the in -memory vector store . When we create the embeddings we 'll use a different model - an embeddings model instead of a language model .
85
85
86
86
```csharp
87
- var endpoint = new Uri (" https://models.inference.ai.azure.com" );
88
- var modelId = " text-embedding-3-small" ;
89
87
// get embeddings generator and generate embeddings for movies
90
- IEmbeddingGenerator < string , Embedding < float >> generator =
91
- new OllamaEmbeddingGenerator (new Uri (" http://localhost:11434/" ), " all-minilm" );
88
+ var githubToken = Environment .GetEnvironmentVariable (" GITHUB_TOKEN" ) ?? throw new InvalidOperationException (" GITHUB_TOKEN environment variable is not set." );
89
+ var endpoint = new Uri (" https://models.inference.ai.azure.com" );
90
+ var modelId = " text-embedding-3-small" ;
91
+
92
+ var embeddingsClient = new EmbeddingsClient (endpoint , new AzureKeyCredential (githubToken ));
93
+ IEmbeddingGenerator < string , Embedding < float >> generator = embeddingsClient .AsIEmbeddingGenerator (modelId );
94
+
92
95
foreach (var movie in movieData )
93
96
{
94
97
movie .Vector = await generator .GenerateVectorAsync (movie .Description );
Original file line number Diff line number Diff line change 1
- using Microsoft . Extensions . AI ;
1
+ using Azure ;
2
+ using Azure . AI . Inference ;
3
+ using Microsoft . Extensions . AI ;
2
4
using Microsoft . SemanticKernel . Connectors . InMemory ;
3
5
4
6
var vectorStore = new InMemoryVectorStore ( ) ;
9
11
var movieData = MovieFactory < int > . GetMovieVectorList ( ) ;
10
12
11
13
// get embeddings generator and generate embeddings for movies
12
- IEmbeddingGenerator < string , Embedding < float > > generator =
13
- new OllamaEmbeddingGenerator ( new Uri ( "http://localhost:11434/" ) , "all-minilm" ) ;
14
+ var githubToken = Environment . GetEnvironmentVariable ( "GITHUB_TOKEN" ) ?? throw new InvalidOperationException ( "GITHUB_TOKEN environment variable is not set." ) ;
15
+ var endpoint = new Uri ( "https://models.inference.ai.azure.com" ) ;
16
+ var modelId = "text-embedding-3-small" ;
17
+
18
+ var embeddingsClient = new EmbeddingsClient ( endpoint , new AzureKeyCredential ( githubToken ) ) ;
19
+ IEmbeddingGenerator < string , Embedding < float > > generator = embeddingsClient . AsIEmbeddingGenerator ( modelId ) ;
14
20
foreach ( var movie in movieData )
15
21
{
16
22
movie . Vector = await generator . GenerateVectorAsync ( movie . Description ) ;
Original file line number Diff line number Diff line change 8
8
</PropertyGroup >
9
9
<ItemGroup >
10
10
<PackageReference Include =" Microsoft.Extensions.AI.Ollama" Version =" 9.5.0-preview.1.25265.7" />
11
+ <PackageReference Include =" Microsoft.Extensions.AI.AzureAIInference" Version =" 9.5.0-preview.1.25265.7" />
11
12
<PackageReference Include =" Microsoft.Extensions.VectorData.Abstractions" Version =" 9.5.0" />
12
13
<PackageReference Include =" Microsoft.SemanticKernel.Connectors.InMemory" Version =" 1.54.0-preview" />
13
14
</ItemGroup >
You can’t perform that action at this time.
0 commit comments