GEO网站AI搜索关键词排名优化
GEO 管家 · 租户应用卡片 — 开发文档 V1> 状态:**一期+二期已实现**(升级包 `saas-v8.6.105-upgrade.zip`)> 创建日期:2026-08-30 · 一期交付:2026-08-31 · 二期补齐:2026-08-31---1…
GEO 管家 · 租户应用卡片 — 开发文档 V1
> 状态:**一期+二期已实现**(升级包 `saas-v8.6.105-upgrade.zip`)
> 创建日期:2026-08-30 · 一期交付:2026-08-31 · 二期补齐:2026-08-31
---
1. 产品定位(一句话)
给每个**租户**提供一套「GEO(生成式引擎优化)检测与交付」工具:管客户、配模型、跑体检、出报告。
一个租户 ≈ 一个服务商;租户用本工具服务其旗下多家企业客户。
**不是**:
• 不是「后台发文章」CMS(发文章只是优化阶段可选配套)
• 不是 C 端聊天 Agent(交友虚拟人 / 灵魂空间是另一条线)
• 不是保证企业一定出现在豆包/DeepSeek「首选推荐」
**是**:
• 监测品牌在 AI 问答场景中的可见度与描述准确性
• 用报告成交与续费
• 用复测证明优化效果
---
2. 与现有系统的关系
| 现有能力 | 关系 |
|----------|------|
| `MarketingAppModuleRegistry` / `AppCardModuleRegistry` | **接入点**:新增「GEO管家」应用卡片 |
| `TenantMenuCatalog`(`KIND_APP_CARD`) | 菜单 canonical / 权限挂接 |
| 升级包 `upgrade_release_saas_v*` + `build-saas-upgrade-zip.ps1` | **分发通道** |
| `VideoAiService`(租户 `base_url` + `api_key_enc` + 模型) | **模型配置范式**可复用 |
| 交友虚拟人 / 灵魂空间 / `MasterAiService` | **不要混配额**;GEO 独立 option / 独立限流 |
| 官网文章 + 百度/头条收录 | **二期可选联动**(信源可达),非一期范围 |
---
3. 功能真实作用(给产品/销售口径)
| 能力 | 实际在干什么 | 对谁有用 |
|------|--------------|----------|
| GEO 智能体检 | 用固定问题库问若干 AI 通道,看品牌是否被提及、如何被描述 | 企业看现状;销售开口 |
| AI 搜索分析 | 平台差异、问题缺口、竞品对比、错误描述 | 定优化清单 |
| 专业报告 | 可视化/PDF,可重复交付 | 服务商成交与续费 |
| 客户管理 | 多企业客户、任务与报告归档 | 服务商规模化运营 |
| 模型自配 | 租户填自己的 Key / BaseURL / 模型 | 费用归租户,平台不垫调用费 |
可卖服务映射(业务层,系统只支撑交付物):
• GEO 检测服务 → 体检 + 报告
• AI 搜索优化 / 品牌优化 / 咨询 → 人工作业 + 系统复测(一期不做全自动改站)
---
4. 目标架构(租户侧)
```text
总后台(可选后期)
└── 是否对租户开放 GEO 应用 / 授权开关
租户后台
└── 全部应用 →「GEO管家」卡片
├── 模型与通道配置
├── 客户管理
├── 问题库
├── 体检任务 / 队列
├── 检测结果
└── 报告(页面 + 可选导出)
```
链路:
```text
租户配置通道 Key
→ 选择客户 + 问题库
→ 创建体检任务(入队)
→ Worker/队列调用各模型 API
→ 解析:提及 / 情感或倾向 / 原文摘录 / 竞品名
→ 落库 + 生成报告
```
---
5. 分期范围
5.1 一期(MVP,建议第一个升级包)
**必须有**
1. 应用卡片注册 + 二级侧栏 + 权限键
2. 模型/通道配置(租户自备 Key,加密存储)
3. 客户(被检测企业)CRUD
4. 问题库(默认模板 + 租户可改)
5. 手动发起体检任务 + 异步执行 + 状态(排队/进行中/成功/失败)
6. 结果列表(是否提及、摘录、通道、时间)
7. 简易报告页(可打印 / 后期再 PDF)
8. 租户级日限额、单任务通道间隔,防刷爆 API
**明确不做(一期)**
• 自动改官网 / 自动发文章
• 保证真实「AI 搜索引擎」结果与网页端像素级一致(产品文案须标注「API 模拟探测」或「已对接通道」)
• 总控统一垫付大模型费用(除非另开「公共额度」专项设计)
• 与灵魂空间、视频 AI 共用同一把 Key 配置页
5.2 二期
• 多通道对比看板、竞品矩阵、历史趋势 ✅
• 报告模板美化 / PDF 导出 ✅(HTML 导出 + 浏览器打印 PDF)
• 定时复测 ✅
• 与官网 SEO / 百度·头条推送的「信源检查」联动入口 ✅(报告/建议内链至 SEO 设置、页面管理)
5.3 三期
• 优化建议清单(半自动:FAQ / 实体一致性 / 信源列表) ✅(报告内自动生成建议)
• 可选总控公共额度 + 计费/套餐 ⏸(未做公共额度垫付,已加总控 `geo` 售卖模块)
• 更细的权限(租户子账号只读报告等) ✅(`perm_geo_readonly`)
---
6. 应用卡片设计(对接现有 Registry)
建议 canonical 名称:`GEO管家`(或 `AI搜索GEO`)
建议挂在:`MarketingAppModuleRegistry`(营销/应用扩展区),经 `AppCardModuleRegistry` 汇总。
6.1 二级菜单(一期)
| 菜单名 | 建议 route 名 | 说明 |
|--------|---------------|------|
| 概览 | `admin.geo.dashboard` | 任务数、今日调用、最近报告 |
| 模型配置 | `admin.geo.settings` | 通道、Key、模型、限额 |
| 客户管理 | `admin.geo.clients` | 企业客户 |
| 问题库 | `admin.geo.prompts` | 探测问题 |
| 体检任务 | `admin.geo.jobs` | 创建/列表/重试 |
| 检测结果 | `admin.geo.results` | 按任务/客户筛选 |
| 报告 | `admin.geo.reports` | 报告列表与详情 |
6.2 权限
新增独立 permission key,例如:
• `perm_geo` 或 `can_manage_geo`
写入 `TenantConsolePermissionCatalog`;卡片 `permission_keys` 与之对齐。
`product_slug` 建议:`geo`(便于总控按产品授权时扩展)。
6.3 改造触点(实现时)
• `app/Support/MarketingAppModuleRegistry.php` — 注册模块
• `app/Support/TenantMenuCatalog.php` — 若需显式 catalog(多数经 Registry 聚合即可)
• `routes/web.php` — `admin/geo/*` 路由组
• `app/Http/Controllers/Admin/Geo/*` — 控制器
• `resources/views/admin/geo/*` — Blade
• `database/migrations/*_geo_*.php` — 表结构
• 队列:Laravel Queue / 现有队列惯例
• 升级包目录:`upgrade_release_saas_vX.Y.Z/1-copy-to-LARAVEL-ROOT/`
---
7. 模型与通道配置(租户自配)
7.1 原则
• **默认**:租户自备 API Key,费用自担
• 配置项对齐 `VideoAiService` 思路:`enabled`、`base_url`、`api_key_enc`、`model`、限额
• 支持多通道记录(一期至少 1~N 条「兼容 OpenAI `/v1/chat/completions`」通道)
• 界面预设常见 BaseURL(DeepSeek / 火山方舟兼容端点等),允许自定义
7.2 产品口径(必须写在配置页提示里)
> 本模块通过租户配置的大模型 API 发起「探测问答」,结果用于可见度分析。
> 与各 AI 产品网页/App 内「联网搜索」结果可能不一致;报告请标注探测通道与时间。
7.3 限流建议(一期写死可配)
| 项 | 建议默认 |
|----|----------|
| 租户日调用上限 | 200(可配) |
| 单任务最大问题数 | 50 |
| 通道间间隔 | 1~3 秒 |
| 单次超时 | 60 秒 |
| 失败重试 | 1~2 次 |
---
8. 数据模型(一期建议)
表名前缀按本仓惯例(如 `cmf_` / `sutui_`),以下为逻辑名:
8.1 `geo_settings`(或 `cmf_option` JSON)
租户级:通道列表、总开关、日限额。
若用 option:`option_name = geo_settings`(与 `video_ai_settings` 同模式)。
8.2 `geo_client`
| 字段 | 说明 |
|------|------|
| id / tenant 键 | 租户隔离 |
| name | 企业名称 |
| brand_aliases | 别名 JSON(用于提及匹配) |
| industry / note | 可选 |
| status | 启用/停用 |
| timestamps | |
8.3 `geo_prompt` / `geo_prompt_set`
| 字段 | 说明 |
|------|------|
| title / content | 探测问题文案 |
| category | 品类/对比/场景等 |
| is_template | 是否系统模板 |
| sort / status | |
8.4 `geo_job`
| 字段 | 说明 |
|------|------|
| client_id | |
| channel_ids | 本次使用的通道 |
| prompt_ids / snapshot | 问题快照防事后改库失真 |
| status | pending/running/done/failed |
| progress | |
| error_message | |
| started_at / finished_at | |
8.5 `geo_result`
| 字段 | 说明 |
|------|------|
| job_id / client_id | |
| channel_key | |
| prompt_text | |
| raw_answer | 原文(注意长度与脱敏) |
| mentioned | 0/1 |
| mention_score / aliases_hit | 可选 |
| competitors_found | JSON 可选 |
| created_at | |
8.6 `geo_report`
| 字段 | 说明 |
|------|------|
| job_id / client_id | |
| title | |
| summary_json | 提及率、按通道统计等 |
| html_or_path | 报告正文或存储路径 |
**租户隔离**:所有查询必须带当前租户条件(与现有 Admin 中间件/站点库一致)。
---
9. 探测与解析逻辑(一期最小实现)
1. 系统提示:要求模型扮演「用户向 AI 咨询」的回答方,或直接 user 提问探测句。
2. 用户消息:问题库中的问句(可注入「地区/行业」变量)。
3. 解析:
• 主品牌名 + `brand_aliases` 子串/正则匹配 → `mentioned`
• 保存 `raw_answer` 截断(如 8KB)
4. 汇总:提及次数 / 总问题数 / 分通道提及率 → 写入 `geo_report.summary_json`。
进阶(二期):情感、错误事实抽取、竞品词典。
---
10. 升级包交付清单(实现阶段用)
• [x] Registry + 路由 + 控制器 + 视图
• [x] Migration / 安装时建表或 option 初始化(`GeoSchema` + `2026_08_31_090000_create_sutui_geo_tables`)
• [x] 默认问题库种子(可行业通用 10~20 条)
• [x] Queue Job + 失败可重试(`ProcessGeoProbeJob` + API 重试 2 次 + 任务重跑;schedule / 页面 drain 兜底)
• [x] 权限键 + 菜单开通(`perm_geo` / product_slug `geo`)
• [x] `upgrade-manifest.json` / README 安装说明
• [x] 验收用例(见下)
打包:沿用 Linux 正斜杠脚本,勿用会写出反斜杠的 `Compress-Archive`。
---
11. 验收标准(一期)
1. 升级后,「全部应用」出现「GEO管家」卡片,点击进入二级侧栏。
2. 租户可保存至少一条通道(Key 再次打开不回显明文,只显示已配置)。
3. 新建客户(含别名)→ 选题 → 创建任务 → 队列跑完 → 结果页可见提及标记与摘录。
4. 报告页能看到该客户本次提及率汇总。
5. 未配置 Key 时创建任务有明确错误提示;达到日限额后拒绝新任务。
6. 租户 A 数据不可在租户 B 看见。
---
12. 风险与约束
| 风险 | 应对 |
|------|------|
| API 探测 ≠ 真实 AI 搜索页结果 | 配置页与报告页固定免责声明 |
| 租户 Key 被刷 / 费用失控 | 日限额 + 间隔 + 权限 |
| 平台 ToS / 封禁 | 低并发、可关通道、记录失败原因 |
| 与「发文章」需求混淆 | 文档与 UI 不出现「发布文章」主入口;二期只做「信源检查」外链 |
| 期望过高(保证推荐) | 销售口径:工具是监测与交付,不是控盘 |
---
13. 明确边界:和「发文章」的关系
| | 官网/后台发文章 | GEO 管家 |
|--|-----------------|----------|
| 主操作 | 编辑发布 | 探测与报告 |
| 成功标准 | 上架/收录/阅读 | AI 回答中的可见度指标 |
| 一期是否做 | **否**(用现有文章模块即可) | **是(本应用)** |
优化阶段客户仍可能需要发文、改 FAQ;那是运营动作,挂现有内容模块,不并进 GEO 卡片一期范围。
---
14. 参考对照(外部产品能力摘要)
第二世界·GEO管家宣传点(仅对照,非照搬实现):
• GEO 智能体检
• AI 搜索分析
• 专业报告输出
• 客户管理体系
• 服务商卖:检测 / 优化 / 品牌 / 咨询
本仓一期对齐:**体检 + 分析雏形 + 报告 + 客户 + 租户自配模型**。
---
15. 开工前待拍板(开发启动时再确认)
1. 卡片正式名称与 icon
2. 一期默认支持哪些预设通道(仅兼容 OpenAI,或再加火山原生协议)
3. 报告是否一期就要 PDF(建议先 HTML 打印)
4. 总控是否要做「按租户开关 GEO」
5. 表前缀与是否新建库表 vs 部分用 `cmf_option`
---
16. 变更记录
| 版本 | 日期 | 说明 |
|------|------|------|
| V1 | 2026-08-30 | 首版规划文档 |
| V1.1 | 2026-08-31 | 一期 MVP + 异步队列 |
| V1.2 | 2026-08-31 | 二期/三期能力补齐,打包 v8.6.105 |
评论 0
登录后评论