Files
zjpb.net/migrate_prompts.py

142 lines
5.1 KiB
Python
Raw Permalink Normal View History

"""创建 prompt_templates 表并初始化默认数据"""
import os
import sys
from app import create_app
from models import db, PromptTemplate
# 设置输出编码为UTF-8
if sys.platform.startswith('win'):
sys.stdout.reconfigure(encoding='utf-8')
def migrate_prompts():
"""创建表并初始化默认prompt模板"""
app = create_app(os.getenv('FLASK_ENV', 'development'))
with app.app_context():
# 创建表
print("正在创建 prompt_templates 表...")
db.create_all()
print("[OK] 表创建成功")
# 检查是否已有数据
existing_count = PromptTemplate.query.count()
if existing_count > 0:
print(f"[WARN] 表中已有 {existing_count} 条数据,跳过初始化")
return
# 初始化默认prompt模板
print("正在初始化默认prompt模板...")
# 1. 标签生成模板
tags_prompt = PromptTemplate(
key='tags',
name='标签生成',
description='根据网站名称和描述生成3-5个分类标签',
system_prompt='你是一个专业的AI工具分类专家擅长为各类AI产品生成准确的标签。',
user_prompt_template='''你是一个AI工具导航网站的标签生成助手。根据以下产品信息生成3-5个最合适的标签。
产品名称: {name}
产品描述: {description}
{existing_tags}
要求
1. 标签应该准确描述产品的功能类型或应用场景
2. 每个标签2-4个汉字
3. 标签要具体且有区分度
4. 如果是AI工具可以标注具体的AI类型"GPT""图像生成"
5. 只返回标签用逗号分隔不要其他说明
示例输出格式写作助手,营销,GPT,内容生成
请生成标签''',
is_active=True
)
# 2. 主要功能生成模板
features_prompt = PromptTemplate(
key='features',
name='主要功能生成',
description='根据网站名称和描述生成5-8个主要功能点',
system_prompt='你是一个专业的AI产品文案专家擅长提炼产品核心功能和价值点。',
user_prompt_template='''你是一个AI工具导航网站的内容编辑助手。根据以下产品信息生成详细的主要功能列表。
产品名称: {name}
产品描述: {description}
{url_info}
要求
1. 生成5-8个主要功能点
2. 每个功能点要具体清晰有吸引力
3. 使用Markdown无序列表格式"- "开头
4. 每个功能点一行简洁有力10-30
5. 突出产品的核心价值和特色功能
6. 使用专业但易懂的语言
7. 不要添加任何标题或额外说明直接输出功能列表
示例输出格式
- 智能文本生成支持多种写作场景
- 实时语法检查和优化建议
- 多语言翻译准确率高达95%
- 一键生成营销文案和广告语
- 团队协作支持多人同时编辑
请生成功能列表''',
is_active=True
)
# 3. 详细介绍生成模板
description_prompt = PromptTemplate(
key='description',
name='详细介绍生成',
description='根据网站名称和简短描述生成200-400字的详细介绍',
system_prompt='你是一个专业的AI产品文案专家擅长撰写准确、客观、有吸引力的产品介绍。',
user_prompt_template='''你是一个AI工具导航网站的内容编辑助手。根据以下产品信息生成详细、专业且吸引人的产品介绍。
产品名称: {name}
{short_desc_info}
{url_info}
要求
1. 生成200-400字的详细介绍
2. 包含以下内容
- 产品定位和核心价值这是什么产品解决什么问题
- 主要特点和优势为什么选择这个产品
- 适用场景和目标用户谁会用用在哪里
3. 使用Markdown格式可以包含
- 段落分隔空行
- 加粗重点内容**文字**
- 列表- 列表项
4. 语言专业但易懂突出产品价值
5. 不要添加标题直接输出正文内容
6. 语气客观事实性强避免过度营销
示例输出格式
ChatGPT是由OpenAI开发的**先进对话式AI助手**基于GPT-4大语言模型构建它能够理解和生成自然语言为用户提供智能对话内容创作代码编写等多种服务
**核心优势**
- 强大的语言理解和生成能力
- 支持多轮对话上下文连贯
- 覆盖编程写作翻译等多个领域
适用于内容创作者程序员学生等各类用户可用于日常问答文案撰写学习辅导编程助手等多种场景
请生成详细介绍''',
is_active=True
)
# 添加到数据库
db.session.add(tags_prompt)
db.session.add(features_prompt)
db.session.add(description_prompt)
db.session.commit()
print("[OK] 默认prompt模板初始化成功")
print(f" - 标签生成: {tags_prompt.id}")
print(f" - 主要功能生成: {features_prompt.id}")
print(f" - 详细介绍生成: {description_prompt.id}")
if __name__ == '__main__':
migrate_prompts()