多模态输入与文件分析
High Contrast
Dark Mode
Light Mode
Sepia
Forest
2 min read475 words

多模态输入与文件分析

把截图拖进对话框,Claude 能读懂表格数据;上传 PDF 年报,Claude 能提炼关键数字——多模态能力把 Claude 变成随时可用的分析师。

多模态处理流程

graph LR INPUT[输入类型] --> IMG[图片/截图] INPUT --> PDF[PDF 文档] INPUT --> CSV[CSV/Excel] INPUT --> CODE[代码文件] INPUT --> TXT[文本/Markdown] IMG --> I1[界面截图分析] IMG --> I2[图表数据提取] IMG --> I3[手写笔记识别] PDF --> P1[报告摘要提炼] PDF --> P2[合同条款分析] PDF --> P3[学术论文解读] CSV --> C1[数据统计分析] CSV --> C2[异常值检测] CSV --> C3[趋势解读] style IMG fill:#e3f2fd,stroke:#1565c0,stroke-width:2px style PDF fill:#c8e6c9,stroke:#388e3c,stroke-width:2px style CSV fill:#fff3e0,stroke:#e65100,stroke-width:2px

文件分析提示词库

"""
Claude 多模态分析提示词模板库
"""
from dataclasses import dataclass
from enum import Enum
class FileType(Enum):
IMAGE = "image"
PDF = "pdf"
CSV = "csv"
CODE = "code"
DOCUMENT = "document"
@dataclass
class AnalysisPrompt:
file_type: FileType
use_case: str
prompt_template: str
expected_output: str
tips: list[str]
class MultimodalPromptLibrary:
"""多模态分析提示词模板库"""
PROMPTS: list[AnalysisPrompt] = [
# ── 图片分析 ──────────────────────────────────
AnalysisPrompt(
FileType.IMAGE, "UI 截图审查",
"""分析这个 UI 截图,按以下维度给出反馈:
1. **可用性问题**:操作流程是否清晰,有无混淆点
2. **视觉层次**:信息优先级是否明确
3. **文案质量**:按钮/标签文字是否准确传达意图
4. **改进建议**:按优先级列出 3 个具体修改建议
用表格输出,包含问题描述、严重程度(高/中/低)、建议修改方式。""",
"UI 问题表格 + 优先级改进建议",
["上传完整页面截图而非局部", "说明目标用户群体", "告知设备类型(移动端/桌面端)"],
),
AnalysisPrompt(
FileType.IMAGE, "图表数据提取",
"""从这张图表中提取所有数据:
1. 识别图表类型(折线/柱状/饼图等)
2. 读取所有数轴标签和数据点
3. 整理成 Markdown 表格(第一列为时间/类别,后续列为数值)
4. 指出图表中最显著的趋势或异常点
5. 如数值无法精确读取,给出估算范围""",
"结构化数据表格 + 趋势分析",
["确保图表清晰,文字可读", "告知数据单位(如不明显)"],
),
# ── PDF 分析 ──────────────────────────────────
AnalysisPrompt(
FileType.PDF, "财务报告分析",
"""分析这份财务报告,提取以下关键信息:
1. **核心指标**:收入、利润、同比增长率(表格格式)
2. **业务亮点**:本期表现最好的 3 个业务/产品
3. **风险提示**:管理层提到的主要风险因素
4. **现金流状况**:运营/投资/筹资现金流概况
5. **前瞻指引**:公司对下一季度/年度的预期
输出格式:先给总结段(100字),再展开各项细节。""",
"关键财务数据表 + 风险摘要 + 前瞻指引",
["确保上传完整年报,非节选版", "告知报告所属会计年度"],
),
AnalysisPrompt(
FileType.PDF, "合同风险审查",
"""审查这份合同,重点关注以下风险点:
1. **违约责任**:双方违约的条款和赔偿上限
2. **不平等条款**:明显偏向一方的义务或权利
3. **模糊表述**:可能引发争议的含糊措辞(请引用原文)
4. **缺失条款**:常见合同应有但本合同缺少的保护条款
5. **建议修改**:高优先级修改建议(3条)
⚠️ 注意:此分析仅供参考,正式合同审核请咨询律师。""",
"风险条款清单 + 修改建议",
["可先提供合同类型和背景", "告知你是甲方还是乙方"],
),
# ── CSV/数据分析 ──────────────────────────────
AnalysisPrompt(
FileType.CSV, "销售数据分析",
"""分析这份销售数据,请:
1. 计算总销售额、平均订单价值、订单数量
2. 识别 Top 5 产品/客户/地区(按收入排序)
3. 分析月度/季度趋势,找出增长/下降的原因可能
4. 发现异常值(明显高于或低于均值的数据点)
5. 给出 3 条可操作的业务建议
以 Markdown 表格 + 文字分析混合格式输出。""",
"统计摘要 + 趋势分析 + 业务建议",
["确保 CSV 有列标题", "告知数据的时间范围", "说明货币单位"],
),
]
@classmethod
def get_prompt(cls, file_type: FileType, use_case: str) -> AnalysisPrompt | None:
for p in cls.PROMPTS:
if p.file_type == file_type and p.use_case == use_case:
return p
return None
@classmethod
def list_by_type(cls, file_type: FileType) -> list[AnalysisPrompt]:
return [p for p in cls.PROMPTS if p.file_type == file_type]
@classmethod
def print_library(cls):
for ft in FileType:
prompts = cls.list_by_type(ft)
if prompts:
print(f"\n=== {ft.value.upper()} 分析模板 ===")
for p in prompts:
print(f"\n  [{p.use_case}]")
print(f"  期望输出: {p.expected_output}")
print(f"  使用技巧:")
for tip in p.tips:
print(f"    • {tip}")
# 实战演示:对话结构建议
def demo_conversation_structure():
"""展示最佳对话结构"""
print("\n=== 多模态分析最佳对话结构 ===\n")
best_practices = {
"❌ 低效提问": [
"(直接上传图片不说任何话)",
"分析一下这个",
"这个表格什么意思",
],
"✅ 高效提问": [
"这是我们 Q3 的销售漏斗截图。请找出转化率最低的环节,并分析可能原因。",
"这份 PDF 是我们的年度合同续签协议。我是服务提供商(甲方),请标出所有对我不利的条款。",
"附件是本月 Google Analytics 导出数据(CSV)。请找出跳出率最高的 5 个页面,并给出优化建议。",
],
}
for label, examples in best_practices.items():
print(f"{label}:")
for ex in examples:
print(f"  {ex}")
print()
lib = MultimodalPromptLibrary()
lib.print_library()
demo_conversation_structure()

文件分析能力对比

文件类型 Claude 擅长 限制
PNG/JPG 截图 UI 分析、图表识别、手写识别 极小字体、低分辨率图片可能失准
PDF 报告摘要、合同审查、学术解读 超长 PDF 需分段上传
CSV/Excel 数据统计、趋势分析、异常检测 不能生成实际图表(仅文字描述)
代码文件 审查、重构建议、文档生成 超大代码库建议用 Claude Code
Markdown/TXT 改写、摘要、翻译 无限制

行动清单

下一节03-提示词模板与对话策略进阶 — 构建可复用的提示词模板系统,把对话效率提升 3 倍。