elsa-core/samples/aspnet/Elsa.Samples.AspNet.OrchardCoreIntegration/appsettings.json
Sipke Schoorstra 92c1e9a582 Refine prompt and description in appsettings.json
Update the PromptTemplate to focus on text interpretation and simplify the example JSON format. Adjust the OutputVariable description to specify it as a URL to the created artwork.
2024-09-01 09:36:15 +02:00

439 lines
16 KiB
JSON

{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning",
"Microsoft.EntityFrameworkCore": "Warning"
}
},
"AllowedHosts": "*",
"ConnectionStrings": {
"Sqlite": "Data Source=elsa.sqlite.db;Cache=Shared;"
},
"Webhooks": {
"Sources": [
{
"Id": "Orchard",
"Name": "Orchard",
"Origin": "https://localhost:8196",
"EventTypes": [
{
"EventType": "content-item.published",
"PayloadType": "Elsa.OrchardCore.WebhookPayloads.ContentItemPublished, Elsa.OrchardCore"
}
]
}
]
},
"Identity": {
"Tokens": {
"SigningKey": "sufficiently-large-secret-signing-key",
"AccessTokenLifetime": "1:00:00:00",
"RefreshTokenLifetime": "7:00:00:00"
},
"Roles": [
{
"Id": "admin",
"Name": "Administrator",
"Permissions": [
"*"
],
"TenantId": "default"
}
],
"Users": [
{
"Id": "a2323f46-42db-4e15-af8b-94238717d817",
"Name": "admin",
"HashedPassword": "TfKzh9RLix6FPcCNeHLkGrysFu3bYxqzGqduNdi8v1U=",
"HashedPasswordSalt": "JEy9kBlhHCNsencitRHlGxmErmSgY+FVyMJulCH27Ds=",
"Roles": [
"admin"
],
"TenantId": "default"
}
],
"Applications": [
{
"Id": "d57030226341448daff5a2935aba2d3f",
"Name": "Postman",
"Roles": [
"admin"
],
"ClientId": "HXr0Vzdm9KCZbwsJ",
"ClientSecret": "a<~QGGHTEA%u4;CU&'Wga5ED:_&Gd1C)",
"HashedApiKey": "Z5ClHs3mbzx8Pnw3+PxbMq8A/Y+VKMCCDTGYtax8JFM=",
"HashedApiKeySalt": "kBisa1X8FwBfN2zmyGMFRgIVVBleghhQAJ4WGyTkaD0=",
"HashedClientSecret": "jEv58d0SVbGQ3nBZM0lkzHghG4Y+lMKW80wipz+9vHk=",
"HashedClientSecretSalt": "xRKy14Ok1/tU3kLf/8V1fcbLIegy9vcM90Peu2tzohU=",
"TenantId": "default"
}
]
},
"OrchardCore": {
"Client": {
"BaseAddress": "https://localhost:8196",
"ClientId": "elsa-server",
"ClientSecret": "elsa-server"
},
"ContentTypes": [
"BlogPost"
]
},
"Agents": {
"ApiKeys": [
{
"Name": "gpt-4o",
"Value": ""
}
],
"Services": [
{
"Name": "ChatCompletion",
"Type": "OpenAIChatCompletion",
"Settings": {
"ModelId": "gpt-4o",
"ApiKeyRef": "gpt-4o"
}
},
{
"Name": "TextToImage",
"Type": "OpenAITextToImage",
"Settings": {
"ModelId": "dall-e-3",
"ApiKeyRef": "gpt-4o"
}
}
],
"Agents": [
{
"Name": "Proofreader",
"Description": "A persona that proofreads and corrects text by identifying and correcting grammar, spelling, punctuation, and formatting errors in the text.",
"Services": [
"ChatCompletion"
],
"FunctionName": "Proofread",
"PromptTemplate": "You are a Proofreader. Identify and correct grammar, spelling, punctuation, and formatting errors in the following text. Do not change the content or meaning of the text. You will receive the content to be checked in JSON format, where each field's value in the JSON object needs to be checked. Create a JSON response that has the exact same structure as the received JSON structure, but replace each field's value with the corrected version of the original value. Example input JSON: { \"title\": \"Welkcome to Orchsjard Core\", \"markdown\": \"Welcome to Orchard Core, a beitifull CMS and blogposting engine for everone!\" }. Example output JSON: { \"title\": \"Welcome to Orchard Core\", \"markdown\": \"Welcome to Orchard Core, a beautiful CMS and blog engine for everyone!\" }. Here's the JSON containing the fields to proofread and correct: {{$Content}}",
"InputVariables": [
{
"Name": "Content",
"Description": "An object containing fields to proofread.",
"Type": "string"
}
],
"OutputVariable": {
"Name": "Content",
"Description": "The proofreading results.",
"Type": "object"
},
"ExecutionSettings": {
"MaxTokens": null,
"Temperature": 0.5,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0,
"ResponseFormat": "json_object"
}
},
{
"Name": "SeoSpecialist",
"Description": "A persona that optimizes text for search engines by extracting relevant keywords and creating a meta description, optimized for search engines.",
"Services": [
"ChatCompletion"
],
"FunctionName": "OptimizeSEO",
"PromptTemplate": "You are an SEO Specialist. Please extract relevant keywords from the following text and create a meta description that is optimized for search engines. Text: {{$Content}}",
"InputVariables": [
{
"Name": "Content",
"Description": "The content to optimize.",
"Type": "String"
}
],
"OutputVariable": {
"Name": "SeoResult",
"Description": "The SEO optimization results.",
"Type": "String"
},
"ExecutionSettings": {
"Temperature": 0.5,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0
}
},
{
"Name": "Tagger",
"Description": "A persona that generates a specified number of tags for a given text by extract relevant keywords and creating a meta description, optimized for search engines.",
"Services": [
"ChatCompletion"
],
"FunctionName": "GenerateTags",
"PromptTemplate": "You are a social media specialist. Please extract relevant tags (a.k.a. keywords) from the following text that is optimized for use with social media such as x (formerly twitter), facebook, linkedin and instagram. Your response will be in JSON format. The response JSON structure consists of a single field named 'tags' and is an array of strings. Example: { \"tags\": [\"some tag\"] }. Text for which to generate relevant tags: {{$Content}}. Number of tags to generate: {{$Number}}",
"InputVariables": [
{
"Name": "Content",
"Description": "The content to generate tags for.",
"Type": "String"
},
{
"Name": "Number",
"Description": "The number of tags to generate.",
"Type": "Int32"
}
],
"OutputVariable": {
"Name": "Tags",
"Description": "The generated tags.",
"Type": "Elsa.Samples.AspNet.OrchardCoreIntegration.GenerateTagsResult, Elsa.Samples.AspNet.OrchardCoreIntegration"
},
"ExecutionSettings": {
"Temperature": 0.5,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0,
"ResponseFormat": "json_object"
}
},
{
"Name": "Summarizer",
"Description": "A persona that creates concise summaries that capture the main points of the text.",
"Services": [
"ChatCompletion"
],
"FunctionName": "Summarize",
"PromptTemplate": "You are a Summarizer. Please create a concise summary of the following text that captures the main points. Text: {{$Content}}",
"InputVariables": [
{
"Name": "Content",
"Description": "The content to summarize.",
"Type": "String"
}
],
"OutputVariable": {
"Name": "Summary",
"Description": "The summary of the content.",
"Type": "String"
},
"ExecutionSettings": {
"Temperature": 0.5,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0
}
},
{
"Name": "TitleEditor",
"Description": "A persona that creates engaging and relevant titles that accurately represent the content of the text.",
"Services": [
"ChatCompletion"
],
"FunctionName": "CreateTitle",
"PromptTemplate": "You are a Title Editor. Create an engaging and relevant title for the following text that accurately represents its content in JSON format. The JSON response must be in the following format: ```json\n{ \"title\": \"Some amazing title\" }```. The text to create a title from: {{$Content}}",
"InputVariables": [
{
"Name": "Content",
"Description": "The content to create a title for.",
"Type": "String"
}
],
"OutputVariable": {
"Name": "Title",
"Description": "The generated title.",
"Type": "Elsa.Samples.AspNet.OrchardCoreIntegration.TitleResult, Elsa.Samples.AspNet.OrchardCoreIntegration"
},
"ExecutionSettings": {
"Temperature": 0.7,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0,
"ResponseFormat": "json_object"
}
},
{
"Name": "Translator",
"Description": "A persona that translates text into a target language.",
"Services": [
"ChatCompletion"
],
"FunctionName": "Translate",
"PromptTemplate": "You are a Translator. Translate the provided text to the target language using the specified culture code. Do not change the content or meaning of the text. The text will be provided in the form of a JSON object, where each field contains text to be translated. Your response will be in the exact same JSON format, but with the original text values replaced with the translation for each field. The JSON containing the fields to translate: {{$Content}}. The target language culture code: {{$CultureCode}}",
"InputVariables": [
{
"Name": "Content",
"Description": "The content to translate.",
"Type": "string"
},
{
"Name": "CultureCode",
"Description": "The culture code of the target language to translate the content to.",
"Type": "string"
}
],
"OutputVariable": {
"Name": "Content",
"Description": "The translation result.",
"Type": "object"
},
"ExecutionSettings": {
"MaxTokens": null,
"Temperature": 0.2,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0,
"ResponseFormat": "json_object"
}
},
{
"Name": "GraphicDesigner",
"Description": "A persona that creates an image that visualizes the essence of a given text.",
"Services": [
"ChatCompletion",
"TextToImage"
],
"FunctionName": "DesignGraphics",
"PromptTemplate": "You are a Graphic Designer that generates an image by interpreting the essence of the following text: {{$Content}}. Your response will be JSON in the following format: {\"imageUrl\": \"https://dalle.com/the-image.png\"}.",
"InputVariables": [
{
"Name": "Content",
"Description": "The content to design graphics for.",
"Type": "String"
}
],
"OutputVariable": {
"Name": "Image",
"Description": "An URL to the created artwork.",
"Type": "object"
},
"ExecutionSettings": {
"MaxTokens": null,
"Temperature": 1,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0,
"ResponseFormat": "json_object"
},
"Plugins": [
"ImageGenerator"
]
},
{
"Name": "FactChecker",
"Description": "A persona that verifies the accuracy of information within a given text",
"Services": [
"ChatCompletion"
],
"FunctionName": "CheckFacts",
"PromptTemplate": "You are a Fact Checker. Please verify the accuracy of the information presented in the following text, including facts, explanations, and references. Your response will be in the following JSON format: { \"incorrectFacts\": [{ \"incorrectStatement\": \"The statement found to be incorrect.\", \"correctStatement\": \"The corrected statement\", \"explanation\": \"An explanation about why the statement was incorrect and why the correct statement is correct, phrased in a way that is appropriate based on the context of the statement.\", \"references\": [\"An array of strings where each string is a reference to more information, usually a URL, but could be anything, like names of articles, white papers, publications, etc.\"] }] }. Text to fact-check: {{$Content}}",
"InputVariables": [
{
"Name": "Content",
"Description": "The content to check facts for.",
"Type": "String"
}
],
"OutputVariable": {
"Name": "FactCheckResult",
"Description": "The results of the fact-checking.",
"Type": "Elsa.Samples.AspNet.OrchardCoreIntegration.FactCheckResult, Elsa.Samples.AspNet.OrchardCoreIntegration"
},
"ExecutionSettings": {
"MaxTokens": null,
"Temperature": 0.2,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0,
"ResponseFormat": "json_object"
}
},
{
"Name": "Copywriter",
"Description": "A persona that writes articles on any topic.",
"Services": [
"ChatCompletion"
],
"FunctionName": "WriteArticle",
"PromptTemplate": "You are a writer of articles about any topic and any additional instructions given to you. The syntax of the article content will be markdown, and your response will be in JSON format containing a \"title\" field and a \"markdown\" field using the following JSON structure: { \"title\": \"The title of the Article\", \"markdown\": \"The article content in markdown syntax.\" }. This is the topic: {{$Topic}}. The article consists of around {{$ParagraphCount}} paragraphs. The article must be written in the language {{$Language}} using the following style: {{$WritingStyle}}. Additional instructions (if any): {{$AdditionalInstructions}}.",
"InputVariables": [
{
"Name": "Topic",
"Description": "The topic to write an article about.",
"Type": "string"
},
{
"Name": "ParagraphCount",
"Description": "The number of paragraphs to write.",
"Type": "int"
},
{
"Name": "Language",
"Description": "The language to write the text in.",
"Type": "string"
},
{
"Name": "WritingStyle",
"Description": "The style to write the text in.",
"Type": "string"
},
{
"Name": "AdditionalInstructions",
"Description": "Any additional instructions.",
"Type": "string"
}
],
"OutputVariable": {
"Name": "Article",
"Description": "The article consisting of a title and markdown text."
},
"ExecutionSettings": {
"MaxTokens": null,
"Temperature": 0.5,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0,
"ResponseFormat": "json_object"
}
},
{
"Name": "ContentPublisher",
"Description": "A persona that publishes content on a website.",
"Services": [
"ChatCompletion"
],
"FunctionName": "PublishContent",
"PromptTemplate": "You are a Content Publisher. Please execute the provided instructions, which are as follows: {{$Instructions}}",
"InputVariables": [
{
"Name": "Instructions",
"Description": "The instructions to execute.",
"Type": "string"
}
],
"OutputVariable": {
"Name": "Result",
"Description": "The result of the content publishing.",
"Type": "string"
},
"ExecutionSettings": {
"MaxTokens": null,
"Temperature": 0.5,
"TopP": 0.9,
"PresencePenalty": 0.0,
"FrequencyPenalty": 0.0
},
"ResponseFormat": "json_object",
"Agents": [
"Proofreader",
"SeoSpecialist",
"Tagger",
"Summarizer",
"TitleEditor",
"Translator",
"GraphicDesigner",
"FactChecker",
"Copywriter"
]
}
]
}
}