微信聊天分析助手 v1.2.0
完全本地运行,数据不上传云端。输入聊天记录 → 自动分析人格、情感 → 生成可视化报告。
使用须知
开始使用前,请了解以下重要限制:
- 分析结果仅供参考。 人格推断基于关键词和规则匹配,不是专业心理评估工具,MBTI/大五人格结果不应作为严肃判断依据。
- 建议单次分析不超过 500 条消息。 超出此数量分析耗时较长且准确率可能下降。如需分析更长的聊天记录,请分段处理。
- 聊天格式要求。 目前主要支持微信导出格式(
发送者: 内容或[时间] 发送者: 内容),其他格式的识别率可能下降。 - 文件导入限制。 支持 .txt、.json、.docx、.pdf、.jpg、.mp3,但 PDF 扫描件和复杂排版可能解析不完整;图片/语音的识别依赖可选组件 easyocr 和 openai-whisper。
- LLM API 为可选功能。 不配置 API 完全不影响核心分析(MBTI、大五、情感、风险检测均本地完成),仅对话预测可借助 LLM 增强。
使用说明
本工具是一个用于分析微信聊天记录的 CodeWhale skill,调用时按以下步骤操作:
- 确定输入方式。 询问用户如何提供聊天数据:
- 粘贴模式 — 从微信电脑端复制文字后直接粘贴(推荐,最简单)
- 文件导入 — 提供文件路径
- 运行分析,使用
python scripts/main.py配合相应参数。 - 展示结果 — 人格分析(MBTI / 大五人格)、情感趋势、风险提醒、对话预测、日历事件。
- 提供报告生成 — 支持 HTML、Word (.docx)、PPTX 格式。
- 提供 Web 界面模式 —
python scripts/main.py serve启动浏览器界面,地址为http://localhost:5000。
核心行为规则
- 数据始终留在本地。 工具完全本地运行。LLM API 调用(用于增强预测)仅使用用户自己的 API Key,支持任何兼容 OpenAI 接口的大模型(DeepSeek、通义千问、文心一言、OpenAI 等)。
- 核心分析无需 LLM API。 MBTI、大五人格、情感分析均基于本地规则实现。LLM API 为可选配置,仅用于增强对话预测效果。
- LLM 配置失败时自动降级。 如果 API Key 无效、网络不通或调用超时,工具会自动切换到本地规则分析,不会中断使用。此时会有提示信息说明降级原因(如"API Key 未配置"、"网络连接失败"、"API 返回错误"等),用户可根据提示排查或继续使用本地分析。
- 如果用户询问如何导出微信数据,引导以下方式:
- 打开电脑端微信 → 进入聊天窗口 → 右键或点击
...菜单 → "导出聊天记录" → 保存为.txt - 或直接从聊天窗口复制文字并粘贴
- 打开电脑端微信 → 进入聊天窗口 → 右键或点击
操作命令
粘贴模式分析:
cd <项目目录>
python scripts/main.py analyze --paste
文件导入分析:
python scripts/main.py analyze --file <文件路径>
生成报告:
python scripts/main.py report --report-type html
python scripts/main.py report --report-type word
python scripts/main.py report --report-type pptx
启动 Web 界面:
python scripts/main.py serve
分析能力
- MBTI — 从聊天风格推断 16 型 MBTI 人格,附带置信度评分
- 大五人格 — 开放性 / 尽责性 / 外向性 / 宜人性 / 神经质五个维度分析
- 情感分析 — 正负面情绪趋势追踪,情感词提取
- 风险感知 — 标记值得关注的对话模式,供用户自行判断
- 对话预测 — 下一条消息预测(本地规则;如配置了 API Key 则使用 LLM 增强)
- 日历提取 — 从聊天内容中提取事件、截止日期和提醒事项
- 报告输出 — 支持 HTML、Word (.docx)、PPTX 格式
分析报告示例
粘贴聊天记录后,终端会输出类似以下格式的分析结果:
=======================================================
微信聊天分析报告
=======================================================
分析模式: [规则] 本地规则分析
[统计] 聊天统计
总消息数: 128
对方消息: 72
你的消息: 56
聊天跨度: 15 天
[MBTI] MBTI 人格推断
ENFP - 竞选者
置信度: 72%
特征: ENFP
[大五] 大五人格分析
开放性: [########..] 78%
尽责性: [#####.....] 52%
外向性: [#######...] 71%
宜人性: [########..] 80%
神经质: [###.......] 34%
[情感] 情感分析
整体趋势: [上升]
正面: 62.5% / 负面: 18.8%
=======================================================
[OK] 未检测到明显风险话术
[场景] 场景判断: [社交]
[日程] 发现 2 个日程事项
- 周末聚餐 (2024-03-15)
- 项目截止日期 (2024-03-20)
=======================================================
详细报告已保存,使用 report 命令可生成完整报告
HTML 报告可包含图表(情感趋势折线图、人格雷达图),使用 python scripts/main.py report --report-type html 生成。
隐私说明
- 所有数据保存在本机
data/目录下 - 无需注册账号
- LLM API 调用使用用户自己的 API Key,工具不在服务端存储任何密钥
- 无遥测、无统计、无后台网络请求
配置说明
-
config.json— 分析开关、路径设置、LLM 参数 -
.env(可选)— API Key 配置文件。创建.env文件并填入以下内容(如不配置,工具使用本地规则分析,核心功能不受影响):# 微信聊天分析助手 - 环境变量配置(可选) # # 复制此内容为 .env 并填入你的 API Key # 如不配置,工具将使用本地规则分析(核心功能不受影响) # LLM API Key(可选,支持兼容 OpenAI 接口的任何大模型) # 获取地址: # DeepSeek: https://platform.deepseek.com/ # 通义千问: https://dashscope.console.aliyun.com/ # OpenAI: https://platform.openai.com/ LLM_API_KEY=sk-your-key-here # LLM API 地址(根据服务商填写) # DeepSeek: https://api.deepseek.com # 通义千问: https://dashscope.aliyuncs.com/compatible-mode/v1 # OpenAI: https://api.openai.com/v1 LLM_BASE_URL=https://api.deepseek.com # 模型名称(根据服务商支持的模型填写) LLM_MODEL=deepseek-chat -
兼容任何 OpenAI 接口格式的 API(DeepSeek、通义千问、百度文心、OpenAI 等)
常见问题
Q: 首次使用要装很多依赖,有没有快速方法?
A: 运行 python scripts/main_setup.py 一键配置,自动检测环境并安装所有依赖(约 3-5 分钟)。
Q: 分析结果准不准? A: 人格和情感分析基于关键词规则匹配,结果仅供参考,不是专业心理评估。配置 LLM API 后可提升对话预测的自然度和准确性。
Q: LLM API 配置后报错怎么办?
A: 检查三个地方:1) API Key 是否正确(是否有多余空格);2) LLM_BASE_URL 是否与你的服务商匹配;3) 网络是否能访问该地址。配置错误不会影响核心分析,工具会自动降级到本地规则。
Q: 导入文件提示"无法解析"? A: 确认文件格式在支持列表中(.txt/.json/.docx/.pdf/.jpg/.mp3)。PDF 扫描件和复杂排版可能解析失败,建议先将内容复制到 .txt 文件再导入。
Q: 对话预测为什么不工作?
A: 需在 .env 或 config.json 中配置 LLM_API_KEY 才会启用 LLM 增强预测。未配置时使用本地规则预测。
依赖安装
pip install -r requirements.txt
核心依赖:Flask、pandas、python-docx、python-pptx、jinja2、APScheduler、openai、plotly、Pillow。
可选依赖:openai-whisper(语音转文字)、easyocr(图片 OCR)。
Scan to join WeChat group