文件解析与文章生成器
任务目标
- •本 Skill 用于:从用户上传的文件(PDF/Word/图片)中提取内容,将图片保存到本地,根据需求和内容生成文章
- •能力包含:多格式文件解析、图片提取与保存、图片内容智能理解、6种文章类型智能判断(品牌动向/产品动态/政策规则/营销战役/客户证言/行业资讯)、多类型文章生成(Markdown格式)、配图契合度检查、质量评分评估
- •触发条件:用户上传文件并要求生成品牌或产品相关文章时
前置准备
- •依赖说明:
code
PyMuPDF==1.23.8 # PDF文件解析和图片提取 python-docx==0.8.11 # Word文件解析和图片提取 Pillow==10.0.0 # 图片处理和格式转换
- •非标准文件/文件夹准备:创建输出目录
bash
mkdir -p output/images
操作步骤
标准流程
1. 文件解析
使用 [INVOKE:parse_file] 调用脚本处理用户上传的文件:
- •输入:通过 stdin 传递 JSON 格式的参数
{"file_path": "文件路径"} - •输出目录:
/home/gem/output/images/(脚本会自动创建) - •输出:JSON格式的解析结果,包含文本内容、图片列表(含本地路径)、元数据
- •支持格式:PDF、DOCX、常见图片格式(JPG/PNG等)
调用方式: 在回复中包含以下格式来触发脚本执行:
code
[INVOKE:parse_file({"file_path": "/home/gem/uploads/文件名.pdf"})]
图片保存说明:
- •脚本会自动从文件中提取图片并保存到
/home/gem/output/images/目录 - •图片命名格式:
image_001.png,image_002.png等 - •返回的JSON中包含图片的本地路径,可直接用于Markdown引用
2. 需求收集
向用户询问生成文章的具体需求:
- •目标受众:文章面向谁阅读?(如:技术人员、普通用户、管理层)
- •文章用途:用于什么场景?(如:技术博客、产品介绍、新闻稿、内部报告)
- •特殊要求:字数限制、语言风格、重点内容、格式偏好等
3. 图片内容理解
如果解析结果包含图片,对每个图片进行内容理解:
- •使用图像识别能力分析图片内容(主题、场景、元素、风格等)
- •提取图片的核心信息和视觉特征
- •判断图片与原文内容的关联度
4. 类型判断
根据解析的文件内容、图片内容和用户需求,判断文章类型:
- •参考 references/article-types.md 中的类型定义和判断标准
- •智能体分析文件内容特征和用户需求关键词
- •确定最匹配的文章类型(如:新闻报道、技术文档、产品介绍、教程指南等)
5. 文章生成
根据确定的文章类型,使用对应的prompt模板生成内容:
- •从 references/generation-prompts.md 选择对应类型的prompt
- •替换prompt中的变量:
- •
{ORIGINAL_TEXT}: 原文件提取的文本内容 - •
{USER_REQUIREMENTS}: 用户的具体需求描述 - •
{TARGET_AUDIENCE}: 目标受众 - •
{IMAGES_INFO}: 图片信息列表(包含图片内容理解结果和本地路径)
- •
- •生成文章主体内容
- •使用Markdown语法插入图片:
 - •确保配图与文章内容契合,避免随意插入图片
6. 结果打分(必须执行)
根据 references/evaluation-prompts.md 中的评估Prompt对生成的文章进行质量评估:
- •重要:此步骤为必须执行,不可跳过
- •根据文章类型选择合适的评估角色(老板/客服总监)
- •评估标题点击欲望(50分):痛点匹配度、结果确定性、去空泛化
- •评估全文阅读价值(50分):落地性、迁移性、决策支持
- •计算总分并给出刻薄但真实的评估报告
- •提供标题改写建议和内容缺憾分析
7. 输出交付
按照 assets/output-template.md 的格式输出最终结果:
- •原文摘要
- •生成的完整文章内容(使用Markdown语法引用图片)
- •质量评估报告(必须包含在文章最后)
- •图片清单(索引、本地路径、描述)
- •文件下载说明
注意:评估结果必须附加在文章内容的最后,作为文章质量的重要参考。
- •质量评分报告(各维度得分、总分、改进建议)
下载说明:
- •文章保存为Markdown格式文件:
./output/article.md - •图片保存在:
./images/目录(相对于文章位置) - •用户可下载整个
./output/目录,包含文章和所有图片
可选分支
- •当文件仅包含图片(无文本):标记为图片型内容,根据图片描述生成相关文章
- •当用户需求不明确:提供几个常见类型的示例,让用户选择
- •当评分较低(<60分):询问用户是否需要重新生成,并提供改进方向
资源索引
- •必要脚本:见 scripts/parse_file.py(用途:解析PDF/Word/图片文件,提取文本和图片信息)
- •领域参考:
- •见 references/article-types.md(何时读取:判断文章类型时)
- •见 references/generation-prompts.md(何时读取:生成文章时)
- •见 references/evaluation-prompts.md(何时读取:评估生成结果时)
- •见 references/file-formats.md(何时读取:了解支持的文件格式时)
- •输出资产:见 assets/output-template.md(用途:标准化的输出格式模板)
注意事项
- •文件解析必须通过脚本完成,确保准确提取文本和图片信息
- •图片会被自动保存到沙箱,引用时使用相对路径
./images/xxx.png - •图片内容理解必须使用图像识别能力,提取图片的主题、场景、元素和风格特征
- •配图必须与文章内容契合,根据图片理解结果和文章主题合理插入图片,使用Markdown格式
,避免随意配图 - •文章类型判断、内容生成均由智能体完成,充分利用自然语言理解和创作能力
- •结果打分步骤为必须执行,不可跳过,必须使用老板或主管角色对文章进行评估
- •评估结果必须附加在文章内容的最后,作为文章质量的重要参考
- •当评分较低(<60分)时,可根据评估报告中的标题改写建议和内容缺憾分析重新生成
- •最终输出包括Markdown格式的文章、评估报告和所有图片文件,用户可一起下载
使用示例
示例1:品牌动向报道
- •功能说明:将品牌发布会资料转换为品牌动向报道文章
- •执行方式:
- •解析品牌发布会文件
- •询问受众(公众/合作伙伴/媒体)和重点(品牌战略/合作亮点/活动氛围)
- •判断为品牌动向类型(brand-event)
- •使用品牌动向prompt生成文章
- •打分并输出结果
- •关键参数:受众=公众,用途=品牌宣传,风格=积极正面
示例2:产品动态发布
- •功能说明:将产品更新文档转换为产品动态文章
- •执行方式:
- •解析产品版本更新说明文件
- •询问重点功能和技术亮点
- •判断为产品动态类型(product-feature)
- •使用产品动态prompt生成文章
- •打分并输出结果
- •关键参数:受众=用户,用途=功能介绍,风格=专业易懂
示例3:营销战役宣传
- •功能说明:将促销活动资料转换为营销战役宣传文章
- •执行方式:
- •解析活动策划文件
- •询问活动优惠和目标用户
- •判断为营销战役类型(product-campaign)
- •使用营销战役prompt生成文章
- •打分并输出结果
- •关键参数:受众=潜在用户,用途=活动宣传,风格=有吸引力