Skip to content

Commit

Permalink
Refactor API key handling and update token properties
Browse files Browse the repository at this point in the history
Updated KernelBuilderExtensions.cs to use ApiKeyCredential for OpenAIClient instantiation. Added using directive for System.ClientModel. In SemanticKernelMapperExtensions.cs, aliased ChatMessageContent and updated XML docs. Modified Usage object to use new token count properties.
  • Loading branch information
GregorBiswanger committed Oct 10, 2024
1 parent c61e63a commit efb5a21
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 6 deletions.
6 changes: 4 additions & 2 deletions OllamaApiFacade/Extensions/KernelBuilderExtensions.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using Microsoft.SemanticKernel;
using System.ClientModel;
using Microsoft.SemanticKernel;
using OpenAI;

namespace OllamaApiFacade.Extensions;
Expand All @@ -19,7 +20,8 @@ public static IKernelBuilder AddLmStudio(this IKernelBuilder builder, string mod
{
var uri = new Uri(endpoint);
var openAiClientOptions = new OpenAIClientOptions { Endpoint = uri };
var openAiClient = new OpenAIClient("none", openAiClientOptions);
var apiKeyCredential = new ApiKeyCredential("none");
var openAiClient = new OpenAIClient(apiKeyCredential, openAiClientOptions);

builder.AddOpenAIChatCompletion(model, openAiClient);

Expand Down
9 changes: 5 additions & 4 deletions OllamaApiFacade/Extensions/SemanticKernelMapperExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using Microsoft.SemanticKernel.ChatCompletion;
using OllamaApiFacade.DTOs;
using OpenAI.Chat;
using ChatMessageContent = Microsoft.SemanticKernel.ChatMessageContent;

namespace OllamaApiFacade.Extensions;

Expand Down Expand Up @@ -65,7 +66,7 @@ public static ChatResponse ToChatResponse(this StreamingChatMessageContent messa
}

/// <summary>
/// Converts a <see cref="ChatMessageContent"/> object into a <see cref="OllamaApiFacade.DTOs.ChatResponse"/> object.
/// Converts a <see cref="Microsoft.SemanticKernel.ChatMessageContent"/> object into a <see cref="OllamaApiFacade.DTOs.ChatResponse"/> object.
/// </summary>
/// <param name="message">The chat message content to be converted.</param>
/// <returns>A <see cref="OllamaApiFacade.DTOs.ChatResponse"/> object containing the converted message content.</returns>
Expand Down Expand Up @@ -117,9 +118,9 @@ public static CompletionResponse ToCompletionResponse(this ChatMessageContent ch
],
Usage: new Usage
{
PromptTokens = chatTokenUsage!.InputTokens,
CompletionTokens = chatTokenUsage.OutputTokens,
TotalTokens = chatTokenUsage.TotalTokens
PromptTokens = chatTokenUsage!.InputTokenCount,
CompletionTokens = chatTokenUsage.OutputTokenCount,
TotalTokens = chatTokenUsage.TotalTokenCount
}
);
}
Expand Down

0 comments on commit efb5a21

Please sign in to comment.