// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.coreskills;

class SemanticFunctionConstants {
    public static final String SummarizeConversationDefinition =
            "BEGIN CONTENT TO SUMMARIZE:\n"
                + "{{$INPUT}}\n"
                + "\n"
                + "END CONTENT TO SUMMARIZE.\n"
                + "\n"
                + "Summarize the conversation in 'CONTENT TO SUMMARIZE', identifying main points of"
                + " discussion and any conclusions that were reached.\n"
                + "Do not incorporate other general knowledge.\n"
                + "Summary is in plain text, in complete sentences, with no markup or tags.\n"
                + "\n"
                + "BEGIN SUMMARY:";

    public static final String GetConversationActionItemsDefinition =
            "You are an action item extractor. You will be given chat history and need to make note"
                + " of action items mentioned in the chat.\n"
                + "Extract action items from the content if there are any. If there are no action,"
                + " return nothing. If a single field is missing, use an empty string.\n"
                + "Return the action items in json.\n"
                + "\n"
                + "Possible statuses for action items are: Open, Closed, In Progress.\n"
                + "\n"
                + "EXAMPLE INPUT WITH ACTION ITEMS:\n"
                + "\n"
                + "John Doe said: \"I will record a demo for the new feature by Friday\"\n"
                + "I said: \"Great, thanks John. We may not use all of it but it's good to get it"
                + " out there.\"\n"
                + "\n"
                + "EXAMPLE OUTPUT:\n"
                + "{\n"
                + "    \"actionItems\": [\n"
                + "        {\n"
                + "            \"owner\": \"John Doe\",\n"
                + "            \"actionItem\": \"Record a demo for the new feature\",\n"
                + "            \"dueDate\": \"Friday\",\n"
                + "            \"status\": \"Open\",\n"
                + "            \"notes\": \"\"\n"
                + "        }\n"
                + "    ]\n"
                + "}\n"
                + "\n"
                + "EXAMPLE INPUT WITHOUT ACTION ITEMS:\n"
                + "\n"
                + "John Doe said: \"Hey I'm going to the store, do you need anything?\"\n"
                + "I said: \"No thanks, I'm good.\"\n"
                + "\n"
                + "EXAMPLE OUTPUT:\n"
                + "{\n"
                + "    \"action_items\": []\n"
                + "}\n"
                + "\n"
                + "CONTENT STARTS HERE.\n"
                + "\n"
                + "{{$INPUT}}\n"
                + "\n"
                + "CONTENT STOPS HERE.\n"
                + "\n"
                + "OUTPUT:";

    public static final String GetConversationTopicsDefinition =
            "Analyze the following extract taken from a conversation transcript and extract key"
                + " topics.\n"
                + "- Topics only worth remembering.\n"
                + "- Be brief. Short phrases.\n"
                + "- Can use broken English.\n"
                + "- Conciseness is very important.\n"
                + "- Topics can include names of memories you want to recall.\n"
                + "- NO LONG SENTENCES. SHORT PHRASES.\n"
                + "- Return in JSON\n"
                + "[Input]\n"
                + "My name is Macbeth. I used to be King of Scotland, but I died. My wife's name is"
                + " Lady Macbeth and we were married for 15 years. We had no children. Our beloved"
                + " dog Toby McDuff was a famous hunter of rats in the forest.\n"
                + "My tragic story was immortalized by Shakespeare in a play.\n"
                + "[Output]\n"
                + "{\n"
                + "  \"topics\": [\n"
                + "    \"Macbeth\",\n"
                + "    \"King of Scotland\",\n"
                + "    \"Lady Macbeth\",\n"
                + "    \"Dog\",\n"
                + "    \"Toby McDuff\",\n"
                + "    \"Shakespeare\",\n"
                + "    \"Play\",\n"
                + "    \"Tragedy\"\n"
                + "  ]\n"
                + "}\n"
                + "+++++\n"
                + "[Input]\n"
                + "{{$INPUT}}\n"
                + "[Output]";
}
