Cvičení – použití integrovaných modulů plug-in
V tomto cvičení přidáte do projektu sémantického jádra existující modul plug-in a naučíte se, jak použít první modul plug-in k provedení úkolu. Pusťme se do toho.
Příprava vývojového prostředí
Pro tato cvičení je k dispozici počáteční projekt, který můžete použít. Pomocí následujících kroků nastavte počáteční projekt:
Důležité
K provedení těchto kroků musíte mít nainstalovaný Visual Studio Code a rozhraní .NET Framework 8.0. Možná budete muset nainstalovat rozšíření Visual Studio Code C# Dev Kit.
Otevřete Visual Studio Code.
V části Start editoru Visual Studio Code vyberte Klonovat úložiště Git.
Na panelu URL zadejte
https://github.com/MicrosoftLearning/MSLearn-Develop-AI-Agents-with-Azure-OpenAI-and-Semantic-Kernel-SDK.git
V Průzkumník souborů vytvořte novou složku v umístění, které je snadné najít a zapamatovat, například složku v Desktopu.
Klikněte na tlačítko Vybrat jako cíl úložiště.
Abyste mohli projekt úspěšně naklonovat, musíte být přihlášení k GitHubu.
Otevřete projekt v editoru Visual Studio Code.
V Průzkumníku klikněte pravým tlačítkem myši na složku M02-create-plugins-for-sémantic-kernel/M02-Project a klikněte na Otevřít v integrovaném terminálu.
Rozbalte složku M02-create-plugins-for-semantic-kernel/M02-Project.
Měl by se zobrazit soubor "Program.cs".
Otevřete soubor Program.cs a aktualizujte následující proměnné názvem nasazení služby Azure OpenAI Services, klíčem rozhraní API a koncovým bodem.
string yourDeploymentName = ""; string yourEndpoint = ""; string yourKey = "";
Teď jste připraveni zahájit cvičení. Hodně zdaru!
Získání záměru uživatele
V integrovaném terminálu přidejte moduly plug-in sémantického jádra. Spuštěním následujícího příkazu spustíte základní balíček do projektu:
dotnet add package Microsoft.SemanticKernel.Plugins.Core --version 1.2.0-alpha
Poznámka:
V současné době je balíček předběžnou verzí. Možná budete chtít zkontrolovat nejnovější verzi. https://www.nuget.org/packages/Microsoft.SemanticKernel.Plugins.Core/1.2.0-alpha
Do souboru Program.cs přidejte následující kód:
builder.Plugins.AddFromType<ConversationSummaryPlugin>(); var kernel = builder.Build(); string input = @"I'm a vegan in search of new recipes. I love spicy food! Can you give me a list of breakfast recipes that are vegan friendly?"; var result = await kernel.InvokeAsync( "ConversationSummaryPlugin", "GetConversationActionItems", new() {{ "input", input }}); Console.WriteLine(result);
V tomto kódu importujete
ConversationSummaryPlugin
zCore.Plugins
balíčku. Vytvoříte nového tvůrce jádra a přidáte modul plug-in do tvůrce. PodporujeConversationSummaryPlugin
několik akcí:GetConversationActionItems
,SummarizeConversation
aGetConversationTopics
.Vytvoříte řetězec s ukázkovou konverzací a pak zavoláte modul plug-in s názvem funkce a předáte řetězec konverzace. Modul plug-in vrátí souhrn konverzace.
Poznámka:
Vzhledem k tomu, že modul plug-in je stále ve verzi Preview, možná budete muset přidat potlačení upozornění pomocí horní
#pragma warning disable SKEXP0050
části souboru.Spusťte kód zadáním
dotnet run
do terminálu.Měla by se zobrazit odpověď podobná následujícímu výstupu:
{ "actionItems": [ { "owner": "", "actionItem": "Provide a list of vegan-friendly spicy breakfast recipes", "dueDate": "", "status": "Open", "notes": "" } ] }
Všimněte si, že modul plug-in dokázal identifikovat zjednodušený záměr ze vstupního řetězce.
Tento příklad je jen začátek toho, co můžete dělat se sadou SDK sémantického jádra. V další lekci se dozvíte další způsoby, jak přizpůsobit moduly plug-in a spouštět funkce.
Důležité
Nezapomeňte odstranit žádný kód, který jste napsali, potřebujete ho pro další cvičení.