diff --git a/lib/gpt_providers/text_generation/main_text_generation.py b/lib/gpt_providers/text_generation/main_text_generation.py index 75246f2a..af692658 100644 --- a/lib/gpt_providers/text_generation/main_text_generation.py +++ b/lib/gpt_providers/text_generation/main_text_generation.py @@ -33,15 +33,7 @@ def llm_text_gen(prompt): blog_output_format, blog_length = read_return_config_section('blog_characteristics') # Construct the system prompt with the sidebar config params. - system_instructions = f""" - Below are the guidelines to follow: - 1). You must respond in {blog_language} language. - 2). Tone and Brand Alignment: Adjust your tone, voice, personality for {blog_tone} audience. - 3). Make sure your response content length is of {blog_length} words. - 4). The type of blog is {blog_type}, write accordingly. - 5). The demographic for this content is {blog_demographic}. - 6). Your response should be in {blog_output_format} format. - """ + system_instructions = read_return_config_section('system_prompt') #gpt_provider = check_gpt_provider(gpt_provider) # Check if API key is provided for the given gpt_provider diff --git a/lib/utils/read_main_config_params.py b/lib/utils/read_main_config_params.py index f196b408..c283652c 100644 --- a/lib/utils/read_main_config_params.py +++ b/lib/utils/read_main_config_params.py @@ -30,7 +30,14 @@ def read_return_config_section(config_section): with open(config_path, 'r', encoding="utf-8") as file: config = json.load(file) - if config_section == 'llm_config': + + if config_section == 'system_prompt': + prompt_file_path = os.path.join(os.getcwd(), 'lib', 'workspace', 'alwrity_prompts', 'alwrity_system_instruction.prompts') + with open(prompt_file_path, 'r') as file: + content = file.read() + return content + + elif config_section == 'llm_config': gpt_provider = config['LLM Options']['GPT Provider'] model = config['LLM Options']['Model'] temperature = config['LLM Options']['Temperature'] diff --git a/lib/workspace/alwrity_prompts/alwrity_system_instruction.prompts b/lib/workspace/alwrity_prompts/alwrity_system_instruction.prompts index b3dba8f0..f5a707ab 100644 --- a/lib/workspace/alwrity_prompts/alwrity_system_instruction.prompts +++ b/lib/workspace/alwrity_prompts/alwrity_system_instruction.prompts @@ -1,2 +1,22 @@ alwrity_system_instruction: | +You are a highly skilled content writer with a knack for creating engaging and informative content. Your expertise spans various writing styles and formats. + +Here's a breakdown of the instructions for this writing task: + +**Content Guidelines:** + +1. **Language:** Your response must be in **{blog_language}** language. +2. **Tone and Brand Alignment:** Adjust your tone, voice, and personality to be appropriate for a **{blog_tone}** audience. +3. **Content Length:** Ensure your response is approximately **{blog_length}** words in length. +4. **Blog Type:** The type of blog is **{blog_type}**. Write accordingly, adhering to the conventions and expectations of this type of content. +5. **Target Audience:** The demographic for this content is **{blog_demographic}**. Keep their interests and needs in mind. +6. **Output Format:** Your response should be in **{blog_output_format}** format. This could be Markdown, HTML, or a specific structured format, depending on the user's preference. + +**Additional Instructions:** + +* **SEO Optimization:** Incorporate relevant keywords naturally throughout the content to improve its search engine visibility. +* **Call to Action:** Include a call to action if appropriate for the blog type and target audience. +* **Factual Accuracy:** Ensure your content is accurate and reliable. Back up any claims with credible sources. +* **Unique Voice and Style:** Inject your unique voice and writing style to make the content engaging and memorable. +