codeessentials.SemanticKernel.PromptTemplates.Git
0.0.4
dotnet add package codeessentials.SemanticKernel.PromptTemplates.Git --version 0.0.4
NuGet\Install-Package codeessentials.SemanticKernel.PromptTemplates.Git -Version 0.0.4
<PackageReference Include="codeessentials.SemanticKernel.PromptTemplates.Git" Version="0.0.4" />
<PackageVersion Include="codeessentials.SemanticKernel.PromptTemplates.Git" Version="0.0.4" />
<PackageReference Include="codeessentials.SemanticKernel.PromptTemplates.Git" />
paket add codeessentials.SemanticKernel.PromptTemplates.Git --version 0.0.4
#r "nuget: codeessentials.SemanticKernel.PromptTemplates.Git, 0.0.4"
#:package codeessentials.SemanticKernel.PromptTemplates.Git@0.0.4
#addin nuget:?package=codeessentials.SemanticKernel.PromptTemplates.Git&version=0.0.4
#tool nuget:?package=codeessentials.SemanticKernel.PromptTemplates.Git&version=0.0.4
codeessentials.SemanticKernel.PromptTemplates.Git
Microsoft Semantic Kernel extension to retrieve prompt templates from a git repository
Installation
Add the NuGet package codeessentials.SemanticKernel.PromptTemplates.Git to your project.
> dotnet add package codeessentials.SemanticKernel.PromptTemplates.Git
Usage
Register the required services.
services.AddGitPromptTemplates(config =>
{
configuration.GetSection("GitPrompts").Bind(config);
// Set the prompt template factory to use default and Handlebars templates
config.PromptTemplateFactory = new AggregatorPromptTemplateFactory(
new KernelPromptTemplateFactory(),
new HandlebarsPromptTemplateFactory());
});
// or
services.AddKernel()
.AddGitPromptTemplates(config =>
{
configuration.GetSection("GitPrompts").Bind(config);
// Set the prompt template factory to use default and Handlebars templates
config.PromptTemplateFactory = new AggregatorPromptTemplateFactory(
new KernelPromptTemplateFactory(),
new HandlebarsPromptTemplateFactory());
});
Retrieve a prompt template from the git repository.
// Get as KernelFunction
var function = _kernel.GetFunctionFromGitPrompt("UserChatPrompt");
var response = await _kernel.InvokeAsync(function, new KernelArguments
{
{ "user", "John Doe" },
{ "message", "Hello, how are you?" }
});
// Get as PromptTemplateConfig
var template = _kernel.GetPromptTemplateFromGitPrompt("UserChatPrompt");
Configuration
The configuration is done via the GitPromptTemplatesConfiguration
class.
Use the DeleteTemporaryDirectory
property to delete the temporary directory (used to clone the repository) after the prompts have been loaded.
Setting this to false
will keep the temporary directory and the cloned repository on disk, which improves the performance of loading the prompts, but requires more disk space.
Use the UpdateCheckInterval
property to set the interval in seconds to check for updates to the git repository.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- LibGit2Sharp (>= 0.31.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 9.0.7)
- Microsoft.SemanticKernel.Yaml (>= 1.61.0)
-
net9.0
- LibGit2Sharp (>= 0.31.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 9.0.7)
- Microsoft.SemanticKernel.Yaml (>= 1.61.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.