432 lines
12 KiB
Markdown
432 lines
12 KiB
Markdown
# 诊断模块
|
||
|
||
## 概述
|
||
|
||
诊断模块是GEO平台的核心功能,提供**传统SEO诊断**和**GEO诊断**两种能力,帮助用户全面了解网站和品牌在AI时代的搜索可见性。
|
||
|
||
## SEO诊断 vs GEO诊断
|
||
|
||
### 核心区别
|
||
|
||
| 维度 | SEO诊断 | GEO诊断 |
|
||
|------|---------|---------|
|
||
| **优化目标** | 网页排名 | 品牌被AI引用 |
|
||
| **诊断对象** | 网站 | 品牌实体+内容 |
|
||
| **成功指标** | 排名、流量、点击率 | 引用频率、AI声量占比 |
|
||
| **用户路径** | 点击链接访问网站 | AI直接推荐品牌 |
|
||
| **见效周期** | 3-6个月 | 2周-1个月 |
|
||
|
||
---
|
||
|
||
## SEO诊断
|
||
|
||
传统SEO诊断评估网站对搜索引擎的优化程度,包含以下维度:
|
||
|
||
### 1. 技术SEO诊断
|
||
|
||
| 诊断项 | 说明 | 工具/方法 |
|
||
|--------|------|----------|
|
||
| 索引状态 | 网站是否被搜索引擎正确索引 | site:domain.com、Search Console |
|
||
| 爬取错误 | 404、5xx、重定向链 | 爬虫工具 |
|
||
| Core Web Vitals | LCP<2.5s、FID<100ms、CLS<0.1 | PageSpeed Insights |
|
||
| URL结构 | 规范化、重复URL | 爬虫分析 |
|
||
| robots.txt | 是否阻止重要页面 | 文件检查 |
|
||
| sitemap | 站点地图完整性 | XML验证 |
|
||
|
||
### 2. 页面SEO诊断
|
||
|
||
| 诊断项 | 说明 |
|
||
|--------|------|
|
||
| Title/Meta标签 | 是否完整、是否关键词堆砌 |
|
||
| H标签结构 | 层级是否清晰 |
|
||
| 关键词密度 | 是否合理分布 |
|
||
| 内链结构 | 是否有死链、锚文本是否相关 |
|
||
| 图片Alt | 是否添加描述性Alt文本 |
|
||
|
||
### 3. 内容质量诊断
|
||
|
||
| 诊断项 | 说明 |
|
||
|--------|------|
|
||
| 可读性 | 内容是否易于理解 |
|
||
| 信息深度 | 是否全面覆盖主题 |
|
||
| E-E-A-T | 经验、专业性、权威性、可信度 |
|
||
| 内容新鲜度 | 是否定期更新 |
|
||
| 重复内容 | 是否有大量重复页面 |
|
||
|
||
### 4. 外链分析
|
||
|
||
| 诊断项 | 说明 |
|
||
|--------|------|
|
||
| 反向链接质量 | 链接来源权威性 |
|
||
| 毒性信号 | 是否有垃圾链接 |
|
||
| 锚文本分布 | 是否自然多样 |
|
||
|
||
### 5. 用户体验诊断
|
||
|
||
| 诊断项 | 说明 |
|
||
|--------|------|
|
||
| 移动适配 | 移动端显示是否正常 |
|
||
| 页面速度 | 加载时间是否达标 |
|
||
| 转化路径 | 用户操作是否顺畅 |
|
||
|
||
---
|
||
|
||
## GEO诊断
|
||
|
||
GEO诊断评估品牌在AI生成式引擎中的被引用能力,包含以下维度:
|
||
|
||
### 1. 内容可提取性诊断
|
||
|
||
AI需要能够轻松提取和理解内容:
|
||
|
||
| 诊断项 | 说明 | 优先级 |
|
||
|--------|------|--------|
|
||
| 直接回答块 | 页面首段是否有简洁明确的答案 | P0 |
|
||
| 问答式标题 | H2/H3是否采用问题形式 | P0 |
|
||
| 列表和表格 | 是否使用结构化数据展示 | P0 |
|
||
| 内链到子意图页 | 是否链接到相关深度内容 | P1 |
|
||
| 内容新鲜度 | 是否有更新日期和作者信息 | P1 |
|
||
|
||
### 2. 实体清晰度诊断
|
||
|
||
AI需要能够理解品牌是什么:
|
||
|
||
| 诊断项 | 说明 | 验证标准 |
|
||
|--------|------|----------|
|
||
| 品牌定义 | 是否清晰说明品牌做什么 | AI理解准确率≥95% |
|
||
| 目标受众 | 是否明确服务谁 | 实体识别准确率≥90% |
|
||
| 差异化价值 | 为什么选择这个品牌 | 独特性评分≥80 |
|
||
| 行业分类 | 品牌属于什么行业 | 分类准确率≥95% |
|
||
|
||
### 3. E-E-A-T信号诊断
|
||
|
||
AI需要验证品牌的可信度:
|
||
|
||
| 诊断项 | 说明 | 验证标准 |
|
||
|--------|------|----------|
|
||
| 作者资质 | 内容作者是否有专业背景 | 作者简介完整度≥90% |
|
||
| 专业认证 | 是否有行业认证/奖项 | 认证展示率≥80% |
|
||
| 数据来源 | 是否引用可靠数据 | 引用权威源≥70% |
|
||
| 专家背书 | 是否有行业专家认可 | 背书数量≥3 |
|
||
|
||
### 4. Schema标记诊断
|
||
|
||
结构化数据帮助AI理解内容:
|
||
|
||
| Schema类型 | 适用场景 | 优先级 | 实施难度 |
|
||
|-----------|---------|--------|---------|
|
||
| Organization | 企业主页 | P0必须 | ⭐ 简单 |
|
||
| Product | 产品页 | P0必须 | ⭐⭐ 中等 |
|
||
| Article/BlogPosting | 博客文章 | P0必须 | ⭐ 简单 |
|
||
| FAQPage | 常见问题 | P1推荐 | ⭐ 简单 |
|
||
| HowTo | 操作指南 | P1推荐 | ⭐⭐ 中等 |
|
||
| BreadcrumbList | 导航结构 | P1推荐 | ⭐ 简单 |
|
||
| Review/Rating | 评价评分 | P2可选 | ⭐⭐ 中等 |
|
||
|
||
### 5. 主题权威诊断
|
||
|
||
AI需要验证品牌在特定领域的权威性:
|
||
|
||
| 诊断项 | 说明 | 验证标准 |
|
||
|--------|------|----------|
|
||
| 内容深度 | 是否全面覆盖主题 | 内容质量QScore≥4.6/5 |
|
||
| 话题覆盖度 | 是否覆盖相关子话题 | 话题覆盖率≥80% |
|
||
| 实体信号一致性 | 各页面实体信号是否一致 | 一致性评分≥85% |
|
||
| 内链网络 | 是否形成主题内容集群 | 集群完整度≥70% |
|
||
|
||
### 6. 引用就绪度诊断
|
||
|
||
评估品牌在AI回答中被引用的可能性:
|
||
|
||
| 诊断项 | 说明 | 验证标准 |
|
||
|--------|------|----------|
|
||
| 引用频率 | 品牌在AI回答中被提及的频率 | AOR(Answer Ownership Rate)≥50% |
|
||
| 引用质量 | 引用内容是否准确完整 | 引用准确率≥90% |
|
||
| AI声量占比 | 品牌在AI回答中的占比 | AI SOV≥30% |
|
||
| 竞品对比 | 与竞品在AI回答中的表现 | 差距≤10pp |
|
||
|
||
---
|
||
|
||
## 诊断流程
|
||
|
||
### SEO诊断流程
|
||
|
||
```
|
||
1. 网站爬取 → 2. 技术分析 → 3. 内容分析 → 4. 外链分析 → 5. 生成报告
|
||
```
|
||
|
||
### GEO诊断流程
|
||
|
||
```
|
||
1. 品牌信息输入 → 2. 内容可提取性检测 → 3. 实体清晰度检测 → 4. E-E-A-T信号检测
|
||
→ 5. Schema标记检测 → 6. 主题权威检测 → 7. AI平台引用检测 → 8. 生成诊断报告
|
||
```
|
||
|
||
---
|
||
|
||
## 诊断报告输出
|
||
|
||
### SEO诊断报告
|
||
|
||
包含以下内容:
|
||
- 技术SEO评分
|
||
- 页面SEO评分
|
||
- 内容质量评分
|
||
- 外链质量评分
|
||
- 用户体验评分
|
||
- 综合评分
|
||
- 优先修复建议
|
||
|
||
### GEO诊断报告
|
||
|
||
包含以下内容:
|
||
- 内容可提取性评分
|
||
- 实体清晰度评分
|
||
- E-E-A-T信号评分
|
||
- Schema标记完整性
|
||
- 主题权威评分
|
||
- AI平台引用率
|
||
- 综合评分
|
||
- 优先优化建议
|
||
|
||
---
|
||
|
||
## 技术实现
|
||
|
||
### API端点
|
||
|
||
| 端点 | 方法 | 描述 | 状态 |
|
||
|------|------|------|------|
|
||
| `GET /api/v1/diagnosis/seo/{brand_id}` | GET | 获取品牌的SEO诊断结果 | ✅ 已完成 |
|
||
| `GET /api/v1/diagnosis/geo/{brand_id}` | GET | 获取品牌的GEO诊断结果 | ✅ 已完成 |
|
||
| `GET /api/v1/diagnosis/combined/{brand_id}` | GET | 获取品牌的SEO+GEO综合诊断结果 | ✅ 已完成 |
|
||
|
||
### API响应示例
|
||
|
||
#### SEO诊断响应
|
||
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"brand_id": "brand_123",
|
||
"diagnosis_type": "seo",
|
||
"overall_score": 78,
|
||
"dimensions": {
|
||
"technical_seo": {
|
||
"score": 85,
|
||
"status": "good",
|
||
"issues": []
|
||
},
|
||
"page_seo": {
|
||
"score": 72,
|
||
"status": "needs_improvement",
|
||
"issues": [
|
||
{
|
||
"type": "missing_meta_description",
|
||
"severity": "medium",
|
||
"description": "部分页面缺少Meta描述",
|
||
"affected_pages": 12
|
||
}
|
||
]
|
||
},
|
||
"content_quality": {
|
||
"score": 80,
|
||
"status": "good",
|
||
"issues": []
|
||
},
|
||
"backlinks": {
|
||
"score": 65,
|
||
"status": "needs_improvement",
|
||
"issues": []
|
||
},
|
||
"user_experience": {
|
||
"score": 88,
|
||
"status": "excellent",
|
||
"issues": []
|
||
}
|
||
},
|
||
"recommendations": [
|
||
{
|
||
"priority": "high",
|
||
"action": "补充缺失的Meta描述",
|
||
"impact": "提升页面相关性评分"
|
||
}
|
||
],
|
||
"diagnosed_at": "2024-01-15T10:30:00Z"
|
||
}
|
||
}
|
||
```
|
||
|
||
#### GEO诊断响应
|
||
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"brand_id": "brand_123",
|
||
"diagnosis_type": "geo",
|
||
"overall_score": 72,
|
||
"dimensions": {
|
||
"content_extractability": {
|
||
"score": 75,
|
||
"status": "good",
|
||
"metrics": {
|
||
"direct_answer_blocks": 85,
|
||
"qa_headings": 70,
|
||
"structured_data": 80
|
||
}
|
||
},
|
||
"entity_clarity": {
|
||
"score": 80,
|
||
"status": "good",
|
||
"metrics": {
|
||
"brand_definition_accuracy": 95,
|
||
"target_audience_clarity": 85,
|
||
"differentiation_score": 75
|
||
}
|
||
},
|
||
"eeat_signals": {
|
||
"score": 68,
|
||
"status": "needs_improvement",
|
||
"metrics": {
|
||
"author_credentials": 60,
|
||
"certifications": 70,
|
||
"data_sources": 75,
|
||
"expert_endorsements": 50
|
||
}
|
||
},
|
||
"schema_markup": {
|
||
"score": 70,
|
||
"status": "good",
|
||
"coverage": {
|
||
"organization": true,
|
||
"product": true,
|
||
"article": true,
|
||
"faq": false,
|
||
"howto": false
|
||
}
|
||
},
|
||
"topic_authority": {
|
||
"score": 74,
|
||
"status": "good",
|
||
"metrics": {
|
||
"content_depth": 80,
|
||
"topic_coverage": 72,
|
||
"entity_consistency": 85,
|
||
"internal_linking": 65
|
||
}
|
||
},
|
||
"citation_readiness": {
|
||
"score": 65,
|
||
"status": "needs_improvement",
|
||
"metrics": {
|
||
"citation_frequency": 60,
|
||
"citation_accuracy": 75,
|
||
"ai_sov": 55,
|
||
"competitor_gap": -8
|
||
}
|
||
}
|
||
},
|
||
"recommendations": [
|
||
{
|
||
"priority": "high",
|
||
"action": "增强E-E-A-T信号",
|
||
"impact": "提升AI对品牌可信度的评估"
|
||
}
|
||
],
|
||
"diagnosed_at": "2024-01-15T10:30:00Z"
|
||
}
|
||
}
|
||
```
|
||
|
||
#### 综合诊断响应
|
||
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"brand_id": "brand_123",
|
||
"diagnosis_type": "combined",
|
||
"seo_score": 78,
|
||
"geo_score": 72,
|
||
"combined_score": 75,
|
||
"seo_summary": {
|
||
"strengths": ["技术SEO基础良好", "用户体验优秀"],
|
||
"weaknesses": ["外链质量需提升", "部分页面Meta描述缺失"]
|
||
},
|
||
"geo_summary": {
|
||
"strengths": ["实体清晰度高", "内容结构化良好"],
|
||
"weaknesses": ["E-E-A-T信号不足", "AI引用率偏低"]
|
||
},
|
||
"priority_actions": [
|
||
{
|
||
"type": "seo",
|
||
"action": "建设高质量外链",
|
||
"expected_impact": "提升域名权威性"
|
||
},
|
||
{
|
||
"type": "geo",
|
||
"action": "添加专家背书和认证",
|
||
"expected_impact": "提升AI引用率"
|
||
}
|
||
],
|
||
"diagnosed_at": "2024-01-15T10:30:00Z"
|
||
}
|
||
}
|
||
```
|
||
|
||
### 后端实现
|
||
|
||
| 组件 | 文件 | 职责 |
|
||
|------|------|------|
|
||
| SEO诊断服务 | `backend/app/services/seo_diagnosis.py` | 执行SEO诊断分析 |
|
||
| GEO诊断服务 | `backend/app/services/geo_diagnosis.py` | 执行GEO诊断分析 |
|
||
| 引用检测Agent | `backend/app/agent_framework/agents/citation_detector.py` | 检测AI平台引用情况 |
|
||
| 诊断报告生成 | `backend/app/services/diagnosis_report.py` | 生成诊断报告 |
|
||
| 诊断路由 | `backend/app/api/routes/diagnosis.py` | API端点定义 |
|
||
|
||
### 前端实现
|
||
|
||
| 页面 | 路径 | 说明 | 状态 |
|
||
|------|------|------|------|
|
||
| SEO诊断 | `/dashboard/seo-diagnosis` | SEO诊断入口和报告展示 | ✅ 已完成 |
|
||
| GEO诊断 | `/dashboard/geo-diagnosis` | GEO诊断入口和报告展示 | ✅ 已完成 |
|
||
| 综合诊断 | `/dashboard/diagnosis` | SEO+GEO综合诊断报告 | ✅ 已完成 |
|
||
|
||
前端实现包括:
|
||
- 诊断任务触发和进度展示
|
||
- 多维度评分可视化(雷达图、进度条)
|
||
- 问题列表和修复建议
|
||
- 历史诊断记录对比
|
||
- 诊断报告导出功能
|
||
|
||
---
|
||
|
||
## 改进建议
|
||
|
||
### 当前问题
|
||
|
||
| 问题 | 说明 | 优先级 | 状态 |
|
||
|------|------|--------|------|
|
||
| 诊断定义不完整 | 仅实现引用检测,缺少完整GEO诊断 | P0 | ✅ 已解决 |
|
||
| SEO诊断缺失 | 未实现传统SEO诊断能力 | P1 | ✅ 已解决 |
|
||
| 前后端断裂 | 诊断页面是占位页面 | P0 | ✅ 已解决 |
|
||
|
||
### 改进计划
|
||
|
||
| 阶段 | 目标 | 时间 | 状态 |
|
||
|------|------|------|------|
|
||
| Phase 1 | 完善GEO诊断(补充6大维度) | 2周 | ✅ 已完成 |
|
||
| Phase 2 | 新增SEO诊断能力 | 2周 | ✅ 已完成 |
|
||
| Phase 3 | 整合SEO+GEO诊断报告 | 1周 | ✅ 已完成 |
|
||
| Phase 4 | 前端诊断页面实现 | 1周 | ✅ 已完成 |
|
||
|
||
### 后续优化
|
||
|
||
| 阶段 | 目标 | 预计时间 |
|
||
|------|------|----------|
|
||
| Phase 5 | 诊断报告导出(PDF/Excel) | 1周 |
|
||
| Phase 6 | 历史诊断趋势分析 | 2周 |
|
||
| Phase 7 | 竞品诊断对比功能 | 2周 |
|