feat:修改生成竞品报告的prompts,让其生成json格式的回复。
This commit is contained in:
parent
d2ee1c86b8
commit
cb1345a55d
@ -146,41 +146,73 @@ func AICompetitorReport(ctx *gin.Context) {
|
|||||||
// 根据是否有视频来判断作品类型
|
// 根据是否有视频来判断作品类型
|
||||||
isVideo := len(req.Videos) > 0
|
isVideo := len(req.Videos) > 0
|
||||||
|
|
||||||
// 根据作品类型设置差异化内容
|
// 构建文本生成提示词:理解内容 + 用户要求(JSON格式)
|
||||||
var extraPoint, extraData string
|
var textPrompt string
|
||||||
if isVideo {
|
if isVideo {
|
||||||
extraPoint = "6. 配乐亮点:"
|
textPrompt = fmt.Sprintf(`基于以下视频和图片的内容描述:
|
||||||
extraData = "2. 完播率表现:\n3. 点赞/分享/评论表现:"
|
|
||||||
} else {
|
|
||||||
extraData = "2. 点赞/分享/评论表现:"
|
|
||||||
}
|
|
||||||
|
|
||||||
// 构建文本生成提示词:理解内容 + 用户要求
|
|
||||||
textPrompt := fmt.Sprintf(`基于以下视频和图片的内容描述:
|
|
||||||
%s
|
%s
|
||||||
|
|
||||||
请根据以下要求生成竞品报告。注意不要输出markdown格式来进行排版,请直接输出纯文本。只需要回复竞品报告的内容,其他无关的内容不要输出,输出的内容第一行不要标题,直接输出竞品报告的正文即可
|
请根据以下要求生成竞品报告,输出严格的JSON格式,不要输出markdown格式,不要输出其他无关内容。
|
||||||
|
|
||||||
我的要求是:
|
我的要求是:
|
||||||
%s
|
%s
|
||||||
|
|
||||||
请严格按照以下模板输出:
|
请严格按照以下JSON模板输出(注意不要修改key,只填写value):
|
||||||
|
{
|
||||||
|
"highlight_analysis": {
|
||||||
|
"summary": "[78字以内的概述]",
|
||||||
|
"points": {
|
||||||
|
"theme": "[标题亮点,最多60字]",
|
||||||
|
"narrative": "[题材亮点,最多60字]",
|
||||||
|
"content": "[内容亮点,最多60字]",
|
||||||
|
"copywriting": "[文案亮点,最多60字]",
|
||||||
|
"data": "[数据亮点,最多60字]",
|
||||||
|
"music": "[配乐亮点,仅视频,最多60字]"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"data_performance_analysis": {
|
||||||
|
"views": "[浏览量表现,最多60字]",
|
||||||
|
"completion_rate": "[完播率表现,仅视频,最多60字]",
|
||||||
|
"engagement": "[点赞/分享/评论表现,最多60字]"
|
||||||
|
},
|
||||||
|
"overall_summary_and_optimization": "[整体总结及可优化建议,最多300字]"
|
||||||
|
}
|
||||||
|
|
||||||
一、亮点表现分析
|
重要约束:
|
||||||
[100字以内的概述]
|
1. 严禁输出 JSON 以外的任何字符(包括换行说明、注释、Markdown)
|
||||||
|
2. 若无法满足字数限制,请主动压缩内容,而不是省略字段`, vlContent, req.TextPrompt)
|
||||||
1. 标题亮点:
|
} else {
|
||||||
2. 题材亮点:
|
textPrompt = fmt.Sprintf(`基于以下视频和图片的内容描述:
|
||||||
3. 内容亮点:
|
|
||||||
4. 文案亮点:
|
|
||||||
5. 数据亮点:
|
|
||||||
%s
|
%s
|
||||||
|
|
||||||
二、数据表现分析
|
请根据以下要求生成竞品报告,输出严格的JSON格式,不要输出markdown格式,不要输出其他无关内容。
|
||||||
1. 浏览量表现:
|
|
||||||
|
我的要求是:
|
||||||
%s
|
%s
|
||||||
|
|
||||||
三、整体总结及可优化建议`, vlContent, req.TextPrompt, extraPoint, extraData)
|
请严格按照以下JSON模板输出(注意不要修改key,只填写value):
|
||||||
|
{
|
||||||
|
"highlight_analysis": {
|
||||||
|
"summary": "[78字以内的概述]",
|
||||||
|
"points": {
|
||||||
|
"theme": "[标题亮点,最多60字]",
|
||||||
|
"narrative": "[题材亮点,最多60字]",
|
||||||
|
"content": "[内容亮点,最多60字]",
|
||||||
|
"copywriting": "[文案亮点,最多60字]",
|
||||||
|
"data": "[数据亮点,最多60字]"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"data_performance_analysis": {
|
||||||
|
"views": "[浏览量表现,最多60字]",
|
||||||
|
"engagement": "[点赞/分享/评论表现,最多60字]"
|
||||||
|
},
|
||||||
|
"overall_summary_and_optimization": "[整体总结及可优化建议,最多300字]"
|
||||||
|
}
|
||||||
|
|
||||||
|
重要约束:
|
||||||
|
1. 严禁输出 JSON 以外的任何字符(包括换行说明、注释、Markdown)
|
||||||
|
2. 若无法满足字数限制,请主动压缩内容,而不是省略字段`, vlContent, req.TextPrompt)
|
||||||
|
}
|
||||||
|
|
||||||
chatReq, err := buildChatRequest(textPrompt, nil)
|
chatReq, err := buildChatRequest(textPrompt, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user