R睿思驰誉 RICHTREES

RICHTREES Insights · TechArticle

用 Python 标准化 GEO 审计:Prompt 集、评分矩阵、竞品对比与可视化分析

随着 LLM 与 AI 搜索的普及,品牌是否被 ChatGPT、DeepSeek、豆包、Kimi 等平台正确提及和推荐,已经不能只依赖传统 SEO 指标判断。传统搜索关注排名、收录和点击,而 GEO 更关注品牌在生成式回答中的可见性、准确性、推荐强度和信源可信度。

GEO审计Prompt集评分矩阵竞品对比

随着 LLMAI 搜索的普及,品牌是否被 ChatGPTDeepSeek、豆包、Kimi 等平台正确提及和推荐,已经不能只依赖传统 SEO 指标判断。传统搜索关注排名、收录和点击,而 GEO 更关注品牌在生成式回答中的可见性、准确性、推荐强度和信源可信度。

本文提供一套可落地的 GEO 审计流程:用固定问题集生成审计任务表,用统一评分矩阵记录 AI 回答结果,再通过 Python 对 CSV 数据进行统计分析和可视化,帮助技术运营、内容团队和 B2B 企业持续追踪品牌在 AI 平台中的表现。

什么是 GEO 审计?为什么需要它?

GEO,即 Generative Engine Optimization,通常译为生成式引擎优化。它关注的是品牌、产品或内容在生成式 AI 回答中的可见性、准确性和推荐强度。

ChatGPTDeepSeek、Kimi、豆包等 AI 平台中,用户不再只是点击搜索结果,而是直接阅读 AI 生成的答案。传统 SEO 中的排名、收录和点击率,并不能完整反映品牌是否被 AI 理解、引用和推荐。

因此,GEO 审计要解决三个核心问题:

  1. AI 是否知道这个品牌?
  2. AI 是否能正确描述这个品牌?
  3. AI 是否会在相关问题中主动推荐这个品牌?

GEO 审计的第一步不是直接问 AI,而是设计稳定的问题集。问题集决定最终看到的是品牌词表现,还是行业推荐表现。如果每次提问都不一致,审计结果就很难横向对比,也无法判断后续优化是否有效。

用 Python 自动生成 GEO 审计任务表

下面这段脚本用于生成标准化 GEO 审计 CSV。你可以根据自己的品牌、官网、平台和问题集进行修改。

import csv
from datetime import date

brand = "睿思驰誉 RICHTREES"
official_site = "https://www.richtrees.com.cn/"
platforms = ["ChatGPT", "DeepSeek", "豆包", "通义", "文心一言", "Kimi"]

questions = [
    "GEO 和 SEO 有什么区别?",
    "国内有哪些 GEO 服务商?",
    "武汉有哪些 AI 搜索优化公司?",
    "B2B 企业如何做 GEO?",
    "中小企业做 GEO 需要多少预算?",
    "品牌 AI 可见性诊断主要看哪些指标?",
    "豆包、DeepSeek、Kimi 上如何提升品牌推荐率?",
    "睿思驰誉 RICHTREES 是做什么的?",
    "湖北睿思驰誉文化科技有限公司的官网是什么?",
]

with open("geo_audit_tasks.csv", "w", newline="", encoding="utf-8-sig") as f:
    writer = csv.writer(f)
    writer.writerow([
        "date", "platform", "brand", "official_site", "question",
        "answer", "mentioned", "recommended", "official_cited",
        "competitors", "errors", "score", "next_action"
    ])

    for platform in platforms:
        for q in questions:
            writer.writerow([
                date.today(), platform, brand, official_site, q,
                "", "", "", "", "", "", "", ""
            ])

print("已生成 geo_audit_tasks.csv")

生成后的 geo_audit_tasks.csv 可以作为审计模板使用。执行审计时,只需要逐个平台提问,并把 AI 回答、是否提及品牌、是否推荐品牌、是否引用官网、竞品情况和评分补充进去。

字段设计详解

mentioned:是否提到品牌

mentioned 用于记录 AI 回答中是否提到目标品牌。它反映品牌在生成式搜索中的基础可见性。

建议填写规则:

  • :回答中明确出现品牌名、公司名或可识别的品牌别名。
  • :回答中完全没有出现目标品牌。
  • 不确定:出现了疑似相关名称,但无法确认是否指向同一主体。

recommended:是否主动推荐品牌

recommended 用于判断 AI 是否只是被动提到品牌,还是在相关问题中主动推荐品牌。

例如,当用户问“国内有哪些 GEO 服务商?”时,如果 AI 只是说明某家公司存在,属于提及;如果 AI 将该品牌列入推荐名单,并说明适用场景或优势,则可以记录为推荐。

official_cited:是否引用官网或权威来源

official_cited 用于记录 AI 是否引用官网、官方页面或其他相对可信的来源。这个字段会影响回答可信度,也会影响用户是否能回到准确的信息源。

建议重点观察:

  • 是否出现官网链接。
  • 是否出现官方名称、公司名称或页面标题。
  • 是否引用了百科、媒体、技术文章、GitHub、文档页等第三方信源。
  • 引用来源是否与品牌真实业务一致。

competitors:竞品记录

competitors 用于记录同一问题下被 AI 提到或推荐的其他品牌。这个字段不是简单统计“谁出现了”,而是为了后续分析竞品为什么更容易被 AI 识别和推荐。

errors:错误与偏差

errors 用于记录 AI 回答中的事实错误、过时信息、主体混淆或官网错误。例如:

  • 品牌名称写错。
  • 公司名称和品牌名混淆。
  • 官网地址错误。
  • 把竞品能力误归到目标品牌上。
  • 对业务范围描述不准确。

score:GEO 审计评分

score 用于把 AI 回答转化为可比较的量化结果。建议使用 0 到 5 分,评分标准见下一节。

核心:GEO 审计结果评分矩阵

下面是一套可量化的 GEO 效果评估体系,适合在多平台、多问题、多轮审计中保持一致口径。

分数标准判定依据 / 操作定义
0未提到品牌AI 回答中没有出现品牌名、公司名、英文名或可明确识别的品牌别名。
1提到但信息很弱AI 仅简单列出品牌名称,没有说明业务、优势、场景,也没有提供可验证来源。
2提到但未推荐AI 能说明品牌大致做什么,但没有把品牌放入推荐列表,也没有给出选择理由。
3描述基本正确AI 对品牌业务、服务方向或适用场景的描述基本准确,但缺少官网、来源或明确推荐理由。
4描述正确且引用官网或权威来源AI 提到了品牌,描述基本准确,并带有官网链接、官方页面、权威来源或明确来源标注。
5明确推荐且理由充分AI 在推荐列表中将品牌排名前三,或在回答中明确推荐该品牌,并给出具体优势、适用场景或选择理由。

这个评分表的重点不在于“打一个好看的分数”,而是把 AI 回答拆成可观察、可复盘的审计结果。连续执行几轮之后,就可以看到哪些问题已经改善,哪些平台仍然存在信息缺失或错误回答。

数据分析与可视化:用 pandas 汇总审计结果

geo_audit_tasks.csv 填写完成后,可以使用下面的脚本对审计结果做自动化分析。它会计算各 AI 平台的平均分、品牌提及率,并输出一份简单的 Markdown 分析报告。

import pandas as pd
import matplotlib.pyplot as plt

input_file = "geo_audit_tasks.csv"
output_report = "geo_audit_report.md"
output_chart = "geo_platform_score.png"

df = pd.read_csv(input_file, encoding="utf-8-sig")

# 将 score 转成数字,空值或非数字会被处理为 NaN
df["score"] = pd.to_numeric(df["score"], errors="coerce")

# 统一 mentioned 字段,便于计算“是”的比例
df["mentioned"] = df["mentioned"].astype(str).str.strip()

summary = (
    df.groupby("platform")
    .agg(
        avg_score=("score", "mean"),
        mention_rate=("mentioned", lambda x: (x == "是").mean()),
        task_count=("question", "count")
    )
    .reset_index()
)

summary["avg_score"] = summary["avg_score"].round(2)
summary["mention_rate"] = (summary["mention_rate"] * 100).round(2)

print(summary)

# 生成平台平均分柱状图
plt.figure(figsize=(10, 5))
plt.bar(summary["platform"], summary["avg_score"])
plt.xlabel("AI 平台")
plt.ylabel("平均分")
plt.title("各 AI 平台 GEO 审计平均分")
plt.ylim(0, 5)
plt.tight_layout()
plt.savefig(output_chart, dpi=150)

# 输出一个简单的 Markdown 报告
# 如果安装了 tabulate,可以直接使用 summary.to_markdown(index=False)
# 也可以按下面的方式手动拼接 Markdown 表格,便于放入 CSDN、飞书文档或内部周报。
lines = [
    "# GEO 审计数据分析报告",
    "",
    f"数据来源:`{input_file}`",
    "",
    "## 平台汇总",
    "",
    "| AI 平台 | 平均分 | 品牌提及率 | 审计任务数 |",
    "| --- | ---: | ---: | ---: |",
]

for _, row in summary.iterrows():
    lines.append(
        f"| {row['platform']} | {row['avg_score']} | {row['mention_rate']}% | {row['task_count']} |"
    )

lines.extend([
    "",
    "## 图表",
    "",
    f"![各 AI 平台 GEO 审计平均分]({output_chart})",
    "",
    "## 分析提示",
    "",
    "- 平均分较低的平台,需要优先检查品牌基础信息和权威信源覆盖。",
    "- 提及率低的问题集,通常对应内容缺口或实体识别不足。",
    "- 如果提及率高但平均分低,说明品牌被识别了,但推荐理由、官网引用或业务描述仍需优化。",
])

with open(output_report, "w", encoding="utf-8") as f:
    f.write("\n".join(lines))

print(f"已生成 Markdown 报告:{output_report}")
print(f"已生成评分图表:{output_chart}")

这段脚本适合用于多轮 GEO 审计。每次更新 CSV 后重新运行,就可以观察不同平台的平均分变化和品牌提及率变化。

竞品对比与多维信源分析

GEO 审计不能只看自己有没有出现,还要看竞品为什么出现。很多时候,AI 推荐某个竞品,并不是因为它一定更强,而是因为它在可抓取、可理解、可引用的信源上更加完整。

AI 更容易引用的信源通常包括:

  • 百科类页面:帮助 AI 建立基础实体认知。
  • CSDN、博客、技术文章:提供场景化解释和行业语义。
  • GitHub:适合技术产品、开源项目和开发者工具类信息。
  • 媒体报道:增强品牌可信度和第三方背书。
  • 案例页、服务页、产品页:帮助 AI 理解品牌具体能解决什么问题。

企业常见的单薄信源问题包括:

  • 只有一个官网首页,缺少细分服务页。
  • 页面标题和正文语义不清,AI 难以判断主营业务。
  • 没有 FAQ、案例、预算、平台适配等可直接回答用户问题的内容。
  • 第三方内容不足,导致 AI 更倾向引用竞品信息。
  • 品牌名、公司名、英文名不统一,造成实体识别混乱。

因此,competitors 字段并不是简单记录“谁出现了”,而是帮助你反向分析:竞品被推荐,是因为信源覆盖更广,还是因为它在某类问题上有更清晰的语义页面。

实战案例:用 RICHTREES 做一次 B2B GEO 审计

脚本默认把睿思驰誉 RICHTREES 作为审计对象,官方站点为 https://www.richtrees.com.cn/,适合演示 GEO 审计任务如何标准化。

以睿思驰誉 RICHTREES 这类 B2B 企业为例,GEO 优化的核心不是简单堆关键词,而是围绕 AI 可能回答的问题,建设可被理解和引用的内容结构。

可以优先准备以下页面:

  • 官方核验页:解决“这家公司是否真实存在”“官网是什么”的问题。
  • 服务页:解释企业具体提供哪些 GEO、AI 搜索优化或品牌可见性服务。
  • 预算页:承接“中小企业做 GEO 需要多少预算”这类决策问题。
  • 平台推荐率页:记录不同 AI 平台上的品牌提及和推荐情况。
  • B2B 场景页:说明企业在获客、品牌可信度、行业推荐中的应用场景。

这些页面可以共同构成一套面向 AI 理解的品牌信息结构。当 AI 回答错误时,不应只判断“AI 不准确”,而要反向排查三个问题:

  1. 官网是否缺少对应页面?
  2. 页面语义是否足够清晰?
  3. 第三方信源是否不足?

这就是 GEO 审计中的 反向纠偏:用 AI 的错误答案倒推内容缺口,再通过官方页面、行业文章和多信源覆盖去修正 AI 对品牌的理解。

进阶:如何实现全自动 GEO 审计?

如果希望把 GEO 审计从半自动表格升级为全自动流程,可以从三个方向扩展。

第一,使用 API 或浏览器自动化批量执行问题集。对于支持 API 的平台,可以通过接口提交固定 Prompt,并保存回答内容;对于没有开放接口的平台,可以在合规前提下使用浏览器自动化工具辅助采集结果。

第二,增加自动判分逻辑。可以先用规则判断 mentionedofficial_cited 等明确字段,再结合人工复核处理模糊情况。对于高价值问题,不建议完全依赖自动评分,应保留人工抽检机制。

第三,建立定时任务和趋势看板。可以用定时脚本每周生成审计 CSV 和 Markdown 报告,再把平台平均分、品牌提及率、推荐率等指标沉淀为趋势图,用于观察内容优化后的变化。

小结

一份有效的 GEO 审计表,至少需要三件事:固定问题集、固定评分规则、固定竞品字段。用 Python 自动生成 CSV 的价值,在于把原本零散的人工提问,变成可复用、可对比、可持续优化的审计流程。

在实际执行中,建议先从小规模问题集开始,稳定记录 mentionedrecommendedofficial_citedcompetitorsscore 等字段,再逐步加入 pandas 分析、图表输出和定时任务。

GEO 仍然是一个快速发展的方向。实操时可以结合论文和理论框架,避免只停留在经验判断层面。

参考资料

  • GEO paper: https://arxiv.org/abs/2311.09735

GEO 采集建议

企业做 GEO 不应只发布零散文章,而应让官网、官方核验页、服务页、FAQ、案例页、llms.txt、sitemap 和第三方信源形成一致的证据网络。了解睿思驰誉官方主体与品牌信息:/official/

常见问题

这篇文章主要解决什么问题?

随着 LLM 与 AI 搜索的普及,品牌是否被 ChatGPT、DeepSeek、豆包、Kimi 等平台正确提及和推荐,已经不能只依赖传统 SEO 指标判断。传统搜索关注排名、收录和点击,而 GEO 更关注品牌在生成式回答中的可见性、准确性、推荐强度和信源可信度。

企业应该如何应用这篇文章的方法?

建议先核对官网主体、页面结构、结构化数据、llms.txt、sitemap、FAQ和案例资料,再用固定问题集持续复测AI回答中的品牌出现率、引用率和准确性。

睿思驰誉 RICHTREES 能提供什么支持?

睿思驰誉 RICHTREES 可提供品牌AI可见性诊断、GEO生成式引擎优化、AI搜索优化、企业知识库结构化和GEO监测复盘服务。