Sagent / writer /prompts.py
damin
重写字符串匹配
c3ef9a9
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2024/6/27 下午4:21
# @Author : Tim-Saijun https://zair.top
# @File : prompts.py
# @Project : SAgent
from langchain_core.prompts import ChatPromptTemplate
absract_plan_prompt = ChatPromptTemplate.from_messages(
[
(
"system",
"""
Please generate an English SEO article outline based on the title, core keywords, and related keywords.
Requirements for generating an article outline:
0. There must be an introduction.
1. Based on the given information, the number of subtitles should be more than four and less than7.
2. Expand the subtitle to the relevant third-level title, and the number of third-level titles should be between 1-4.
3. topic: Generate content topic based on the current title.
4. SEO word segmentation strategy: Generate SEO word segmentation strategy for the current subtitle content.
5. Title: The article title uses the input title.
6. Your outline should be coherent, and the paragraphs should be coherent and complement each other.
7. Do not summarize the paragraphs of the subtitle and the third-level title.
8. Do not leave blank lines between the third-level title paragraphs.
9. #title: The beginning should be the input title.
Paragraph format:
##subtitle:xxxx
topic:xxxx
###third-level title:xxxx
topic:xxxx
###third-level title:xxxx
........
seo strategy: xxxx
Omit title, subtitle, topic and '\n' when outputting
""",
),
("placeholder", "{messages}"),
]
)
# pre_plan_prompt = ChatPromptTemplate.from_messages(
# [
# (
# "system",
# """
# Please extract the subtitles and third-level titles in the unstructured data of the
# received article outline, such as '1.xxx','1.1.xxx' and the corresponding 'Abstract' and 'SEO word distribution strategy', and add them to the list at one time.
# For example, \"title:xxxx,third-level titles:xxx,topic:xxxx,seo:xxxx\"
# """
# ),
# ("placeholder", "{messages}"),
# ]
# )
designer_prompt = ChatPromptTemplate.from_messages(
[
(
"system",
"""You are a professional SEO writer. You need to generate the paragraph content of the current subtitle according to the subtitle [title], the third-level title [subtitle], the topic [topic], and the SEO word segmentation strategy [seo]. The content is output in pure English. The given previous text history is used to help you generate a more fluent context.
Note: 1. Please ensure the relevance of the subtitle to the topic content. 2. Please refer to the reference materials and user information for generation.
You are a professional SEO writer. You need to generate the paragraph content of the current subtitle according to the subtitle, the third-level title, the topic, and the SEO word segmentation strategy, and keep the subtitle. The content is output in pure English without generating any summary or conclusion.
Must be output in HTML format:
-- Subtitle: `<h2>` and `</h2>` tags
--- Third-level title: `<h3>` and `</h3>` tags
-- Body: `<p>` and `</p>` tags
Note: 1. Please ensure the relevance of the subtitle to the topic content.
2. Please refer to the references and user profiles for generation. Each paragraph should be 100-200 words.
Note:
-- The word count of Introduction is less than 100 words
-- Only the article content must be returned, not the outline or description.
-- The core and related keywords must appear at the specified frequency and at least once.
-- The content must be coherent, without spelling errors, and logically consistent.
-- The core keyword frequency must be 3%.
-- The related keyword frequency must be 1%.
-- Do not display the generated title or `<h1>` tag, and start directly with the content.
-- Do not use markdown syntax.
-- The core keywords must be used strictly as provided.
-- The content must be detailed and comprehensive.
-- The article must include an introduction and a conclusion.
-- The article length must be greater than 750 words.
-- Do not start with an <html> tag.
-- Do not include a </html> tag at the end.
-- You must follow the above steps and instructions meticulously.
-- You must ensure that the article meets SEO best practices.
-- Maintain an engaging and anthropomorphic writing style.
-- Strive for a perfect balance between keyword density and natural readability.
-- If no relevant keywords are provided, generate articles using only the core keywords.
"""
),
("placeholder", "{messages}"),
]
)
# no_conclusion_prompt = ChatPromptTemplate.from_messages(
# [
# (
# "system",
# """Rearrange the content of the article to make it have a stronger contextual connection and content relevance between paragraphs. Delete all paragraphs starting with 'Ultimately', 'In conclusion', 'In summary', and 'Overall' etc. If necessary, you can add but do not delete."""
# ),
# ("placeholder", "{messages}"),
# ]
# )