Övning – Skriv en egen prompt
I den här övningen skapar du en uppmaning som ber den stora språkmodellen (LLM) att tillhandahålla en lista över användbara fraser på franska. Du kan också testa koden med olika språk som du väljer. Nu sätter vi igång!
Öppna Visual Studio Code-projektet som du skapade i föregående övning.
Uppdatera din Program.cs-fil med följande kod:
using Microsoft.SemanticKernel; using Microsoft.SemanticKernel.Plugins.Core; var builder = Kernel.CreateBuilder(); builder..AddAzureOpenAIChatCompletion( "your-deployment-name", "your-endpoint", "your-api-key", "deployment-model"); var kernel = builder.Build(); string language = "French"; string prompt = @$"Create a list of helpful phrases and words in ${language} a traveler would find useful."; var result = await kernel.InvokePromptAsync(prompt); Console.WriteLine(result);
Kör koden genom att ange
dotnet run
i terminalen.Du bör se ett svar som liknar följande utdata:
1. Bonjour - Hello 2. Merci - Thank you 3. Oui - Yes 4. Non - No 5. S'il vous plaît - Please 6. Excusez-moi - Excuse me 7. Parlez-vous anglais? - Do you speak English? 8. Je ne comprends pas - I don't understand 9. Pouvez-vous m'aider? - Can you help me? 10. Combien ça coûte? - How much does it cost? 11. Où est la gare? - Where is the train station?
Svaret kommer från Azure OpenAI-modellen som du skickade till kerneln. SDK:et för semantisk kernel ansluter till den stora språkmodellen (LLM) och kör kommandotolken. Du kan förbättra den här uppmaningen genom att lägga till mer specifika instruktioner.
Uppdatera uppmaningen så att den matchar följande text:
string prompt = @$"Create a list of helpful phrases and words in ${language} a traveler would find useful. Group phrases by category. Display the phrases in the following format: Hello - Ciao [chow]";
I den här prompten anger du LLM med specifika instruktioner för att formatera svaret. Om du kör den nya uppmaningen bör du se ett mer detaljerat svar, ungefär som följande utdata:
Restaurant Phrases: - Water, please - De l'eau, s'il vous plaît [duh loh, seel voo pleh] - Check, please - L'addition, s'il vous plaît [lah-di-syo(n), seel voo pleh] - Bon appétit - Bon appétit [bohn ah-peh-teet] Transportation Phrases: - Where is the train station? - Où est la gare? [oo-eh lah gahr] - How do I get to...? - Comment aller à...? [ko-mahn tah-lay ah] - I need a taxi - J'ai besoin d'un taxi [zhay buh-zwan dunn tah-xee]
Du kan också uppmana LLM att inkludera en specifik kategori av fraser och att överväga viss bakgrundsinformation om resenären. Vi provar!
Uppdatera uppmaningen så att den matchar följande text:
string language = "French"; string history = @"I'm traveling with my kids and one of them has a peanut allergy."; string prompt = @$"Consider the traveler's background: ${history} Create a list of helpful phrases and words in ${language} a traveler would find useful. Group phrases by category. Include common direction words. Display the phrases in the following format: Hello - Ciao [chow]";
Nu kan LLM överväga resenärens information när du genererar listan med fraser. Du har också lagt till instruktioner för att inkludera vanliga riktningsord.
Utdata kan se ut ungefär som följande svar:
Phrases for dealing with peanut allergy: My child has a peanut allergy - Mon enfant a une allergie aux arachides [mon on-fon ah oon ah-lair-zhee oh a-rah-sheed] Is there a peanut-free option available? - Y a-t-il une option sans arachide? [ee ah-teel une oh-pee-syon sahn ah-rah-sheed] Phrases for directions: Turn left - Tournez à gauche [toor-nay ah gohsh] Turn right - Tournez à droite [toor-nay ah dwaht]
I nästa övning övar du på att tilldela personer till LLM för att förbättra kvaliteten på svaren.
Viktigt!
Se till att du inte tar bort någon av koden som du har skrivit hittills, du behöver den för nästa övning.