openai/openai-dotnet

Public

mirrored from https://github.com/openai/openai-dotnetAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
jsquire-patch-1

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

examples/Embeddings/Example03_MultipleEmbeddingsAsync.cs

38lines · modeblame

9f9f2936Jose Arriaga Maldonado2 years ago1using NUnit.Framework;
2using OpenAI.Embeddings;
3using System;
4using System.Collections.Generic;
5using System.Threading.Tasks;
6
8cc6643fJose Arriaga Maldonado2 years ago7namespace OpenAI.Examples;
74848f8dJose Arriaga Maldonado2 years ago8
8cc6643fJose Arriaga Maldonado2 years ago9public partial class EmbeddingExamples
9f9f2936Jose Arriaga Maldonado2 years ago10{
74848f8dJose Arriaga Maldonado2 years ago11[Test]
8cc6643fJose Arriaga Maldonado2 years ago12public async Task Example03_MultipleEmbeddingsAsync()
9f9f2936Jose Arriaga Maldonado2 years ago13{
74848f8dJose Arriaga Maldonado2 years ago14EmbeddingClient client = new("text-embedding-3-small", Environment.GetEnvironmentVariable("OPENAI_API_KEY"));
9f9f2936Jose Arriaga Maldonado2 years ago15
74848f8dJose Arriaga Maldonado2 years ago16string category = "Luxury";
17string description = "Best hotel in town if you like luxury hotels. They have an amazing infinity pool, a spa,"
18+ " and a really helpful concierge. The location is perfect -- right downtown, close to all the tourist"
19+ " attractions. We highly recommend this hotel.";
20List<string> inputs = [category, description];
9f9f2936Jose Arriaga Maldonado2 years ago21
19ceae44ShivangiReja1 years ago22OpenAIEmbeddingCollection collection = await client.GenerateEmbeddingsAsync(inputs);
9f9f2936Jose Arriaga Maldonado2 years ago23
19ceae44ShivangiReja1 years ago24foreach (OpenAIEmbedding embedding in collection)
74848f8dJose Arriaga Maldonado2 years ago25{
2ab1a942Jose Arriaga Maldonado1 years ago26ReadOnlyMemory<float> vector = embedding.ToFloats();
9f9f2936Jose Arriaga Maldonado2 years ago27
74848f8dJose Arriaga Maldonado2 years ago28Console.WriteLine($"Dimension: {vector.Length}");
29Console.WriteLine($"Floats: ");
30for (int i = 0; i < vector.Length; i++)
31{
665fb062Jose Arriaga Maldonado2 years ago32Console.WriteLine($" [{i,4}] = {vector.Span[i]}");
9f9f2936Jose Arriaga Maldonado2 years ago33}
74848f8dJose Arriaga Maldonado2 years ago34
35Console.WriteLine();
9f9f2936Jose Arriaga Maldonado2 years ago36}
37}
38}