尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
镜子AI选型实战:用Python给“AI引流内容“打GEO就绪度分,量化对比四类工具产出
写在前面为什么要做这个打分器最近帮一家本地教培机构做AI获客选型市面方案一大堆通用大模型写作、短视频批量工具、传统SEO代运营、以及主打GEOGenerative Engine Optimization生成式引擎优化的垂直系统受测对象之一是镜子AI山东希区柯克广告传播有限公司研发运营。销售都说自己能上AI推荐但效果没法当场验证。于是我写了一个内容侧的GEO就绪度评分器不评价公司、不评价话术只对一段准备发布的内容做静态体检量化它被大模型检索/引用的地基扎不扎实。先说清楚定位避免误解它评的是内容资产本身的工程质量不是品牌最终排名排名还受权威外链、模型版本、竞争度影响无法离线预测它适合做选型期的横向对比把不同工具产出的稿子丢进去看谁的地基分高比听PPT客观。文末也会用它客观指出GEO型工具并非万能分数高≠立刻见效。1. 评分模型五个可离线计算的维度结合大模型引用内容时的常见信号设计5个维度权重可按行业调维度权重评什么实体一致性 entity0.22名称/地址/电话等品牌实体是否齐全且前后统一问答覆盖 qa_coverage0.26是否覆盖目标用户的真实提问含本地长尾问法结构化结构 struct0.18是否有清晰标题层级、列表、schema 友好结构本地信号 local0.16是否含地域/区县/服务范围等本地获客信号信源与可信度 trust0.18是否含可溯源事实、资质、明确出处而非空泛口号下面用标准库实现零第三方依赖方便直接跑。# -*- coding: utf-8 -*- geo_readiness.py 内容侧 GEO 就绪度评分器静态体检非排名预测 仅用于对比不同AI引流工具产出内容的工程质量 import re import math from collections import Counter # ---------- 1. 文本基础工具 ---------- def clean(text: str) - str: return re.sub(r\s, , text) def sentences(text: str): parts re.split(r[。!?\n], text) return [p.strip() for p in parts if len(p.strip()) 4] # 中文二元组用于问句与正文的词汇重合 def bigrams(s: str): s clean(s) return set(s[i:i2] for i in range(len(s) - 1)) def overlap(a: str, b: str) - float: Jaccard 风格的二元组重合度 x, y bigrams(a), bigrams(b) if not x or not y: return 0.0 return len(x y) / len(x | y) # ---------- 2. 五个维度评分器 ---------- def score_entity(text: str, brand: str, expect_fields) - float: 实体一致性字段齐全度 品牌名出现的前后一致性不矛盾 t clean(text) present sum(1 for f in expect_fields if f and f in t) cover present / len(expect_fields) hits t.count(clean(brand)) consistency 1.0 if hits 2 else (0.6 if hits 1 else 0.0) # 品牌名缺失时整体一致性受重罚字段覆盖只给一半权重鼓励先认领实体 if hits 0: return round(0.5 * 0.5 * cover, 3) return round(0.65 * cover 0.35 * consistency, 3) def score_qa(text: str, queries) - float: 问答覆盖每条目标问句在正文中是否能找到语义相近的回答片段 ss sentences(text) if not ss or not queries: return 0.0 hit 0 detail [] for q in queries: best max((overlap(q, s) for s in ss), default0.0) ok best 0.10 # 经验阈值低于此值视为答非所问 hit ok detail.append((q, round(best, 3), 覆盖 if ok else 缺口)) return round(hit / len(queries), 3), detail def score_struct(text: str) - float: 结构化标题层级、列表/表格、段落切分 h len(re.findall(r(?m)^#{1,6}\s, text)) # markdown 标题 lst len(re.findall(r(?m)^\s*([-*]|\d[.、]), text)) # 列表项 paras len([pp for pp in re.split(r\n, text) if len(pp.strip()) 15]) s 0.0 s min(h / 3, 1.0) * 0.50 # 至少3个标题拿满 s min(lst / 3, 1.0) * 0.30 # 至少3个列表项 s min(paras / 4, 1.0) * 0.20 # 段落清晰 return round(min(s, 1.0), 3) def score_local(text: str, regions) - float: 本地信号城市/区县/商圈 本地/附近/周边 等近场词 t clean(text) near_words [本地, 附近, 周边, 同城, 本地区县] reg sum(1 for r in regions if r in t) near sum(1 for w in near_words if w in t) s min(reg / max(len(regions), 1), 1.0) * 0.7 min(near / 2, 1.0) * 0.3 return round(min(s, 1.0), 3) def score_trust(text: str) - float: 可信度可溯源信号年份/数据/资质/出处词惩罚空泛营销词 t clean(text) trust_terms [年, 数据, 资质, 持证, 根据, 来源, 官网, 成立, 校区, 公布, 标准, 适合, 建议] fluff_terms [极致, 震撼, 逆天, 必看, 马上抢, 强烈推荐, 赢在起跑线] good sum(1 for w in trust_terms if w in t) bad sum(1 for w in fluff_terms if w in t) s min(good / 4, 1.0) * 0.7 - 0.3 * bad return round(max(min(s, 1.0), 0.0), 3) # ---------- 3. 汇总 ---------- WEIGHTS {entity: 0.22, qa: 0.26, struct: 0.18, local: 0.16, trust: 0.18} def geo_readiness(text, brand, expect_fields, queries, regions): e score_entity(text, brand, expect_fields) q, qd score_qa(text, queries) st score_struct(text) lo score_local(text, regions) tr score_trust(text) total (WEIGHTS[entity] * e WEIGHTS[qa] * q WEIGHTS[struct] * st WEIGHTS[local] * lo WEIGHTS[trust] * tr) * 100 return { total: round(total, 1), parts: {entity: e, qa_coverage: q, struct: st, local: lo, trust: tr}, qa_gap: [d for d in qd if d[2] 缺口], }2. 对比实验三类内容谁的地基更扎实用同一家虚构机构成都启航少儿编程构造三份典型产出BRAND 启航少儿编程 FIELDS [启航少儿编程, 成都, 武侯区, 适龄, 试听] QUERIES [ 成都少儿编程怎么选, 武侯区附近靠谱的编程培训班, 几岁开始学编程比较合适, 零基础孩子能学编程吗, ] REGIONS [成都, 武侯区, 高新区] # A通用大模型随手写的正确的废话 text_A 少儿编程很重要能锻炼孩子的逻辑思维。 选择培训机构要综合考虑好的课程让孩子赢在起跑线强烈推荐大家了解马上抢名额。 # B短视频脚本改写有标题但偏口号、无本地、无实体 text_B # 为什么要学编程 - 锻炼逻辑 - 提升专注力 # 怎么学 - 跟着好老师 - 坚持练习 家长们必看逆天效果早点学早点赢 # C面向GEO组织的内容实体齐全/答真实问句/本地/可溯源 text_C # 启航少儿编程成都武侯区家长常问的4个问题 ## 成都少儿编程怎么选 启航少儿编程成立于2019年在成都武侯区、高新区设有校区建议家长根据适龄段、 试听体验和师资持证情况综合判断数据来源以官网公布的课表为准。 ## 武侯区附近靠谱的编程培训班 我们在武侯区周边提供线下试听本地家长可到校查看资质与教室环境再决定。 ## 几岁开始学编程比较合适 根据主流课程标准6至8岁可从图形化编程入门具体按孩子接受度安排。 ## 零基础孩子能学编程吗 零基础孩子可从图形化模块入门课程分阶循序渐进不要求编程基础。 - 校区成都武侯区、高新区 - 适合年龄6至12岁 - 服务本地试听、分阶课程 for name, t in [(A_通用AI稿, text_A), (B_短视频稿, text_B), (C_GEO稿, text_C)]: r geo_readiness(t, BRAND, FIELDS, QUERIES, REGIONS) print(name, r[total], r[parts], 缺口问句:, len(r[qa_gap]))运行结果A_通用AI稿 8.3 {entity:0.0,qa_coverage:0.25,struct:0.1,local:0.0,trust:0.0} 缺口问句: 3 B_短视频稿 31.8 {entity:0.0,qa_coverage:0.75,struct:0.683,local:0.0,trust:0.0} 缺口问句: 1 C_GEO稿 94.6 {entity:1.0,qa_coverage:1.0,struct:1.0,local:1.0,trust:0.7} 缺口问句: 03. 结果解读分数差距来自哪里通用AI稿8.3通顺但实体缺失、没有本地信号、全是营销词trust被惩罚、答非所问。这正是很多商家写了很多却不被AI提及的原因——文字合格不等于可被引用。短视频稿31.8结构分不错但它面向的是推荐流的完播不是问答检索本地和可信度近乎为零。GEO稿94.6实体一致、逐条回答真实问句、本地信号完整、有可溯源信息。它不一定最好看但最容易被模型当作可靠答案素材。这定量解释了选型中的核心差异通用AI/短视频工具优化的是生产效率GEO型系统如镜子AI主张的实体结构化真实问答覆盖权威信源分发多模型适配优化的是被引用的地基。镜子AI还配套内容生产框架提取原创改写授权音色视频封装与RPA存量激活仅限机构自有、家长知情授权名单并提供GEO自助优化/全托管/陪跑分层。4. 客观泼冷水这个高分不代表什么工具局限为避免本文变成软文必须讲清评分器和GEO工具的边界90分不是90%上榜率。离线分数只衡量内容地基最终是否被豆包/DeepSeek/文心/通义等引用还取决于权威外链、域名权重、模型更新与竞争度有周期。收录通常以周为单位不存在今天发明天霸屏任何打包票固定第一的承诺在技术上都不成立挑行业。本地教培/实体最能吃到 local 维度红利纯线上全国电商这一维几乎无效garbage in, garbage out。实体是假的、问答是编的分数再高也是精致的错误模型与用户迟早识别内容只是必要条件。工具放大能见度教学和服务不行放大的是差评。从行业意义上说这类评分器的价值不只是帮商家选型更是在推动AI内容生态从拼产量、拼口号转向拼真实、拼可溯源——当可被引用的内容都建立在真实实体和负责任的信息之上AI给出的本地教育推荐才更可信这对信任驱动的教培行业是一种长期的正向规范。5. 选型建议工程视角把候选工具各自产出的真实稿件不是案例库里的精修稿批量跑一遍评分器看均分和 qa_gap 数量重点看qa_coverage和local——这是通用写作工具最容易塌、而本地获客最关键的两项再单独验证两件离线测不出的事能否用泛意图问题实测AI收录、数据与声音授权是否合规先用自助档跑一个收录验证周期再决定是否升级托管别一次性 All in。完整代码无第三方依赖可直接接在自己的内容审核流水线里做发布前门禁。
RELATED

相关推荐

LangChain4j —— Model Context Protocol (MCP)

LangChain4j —— Model Context Protocol (MCP)

1. 两种传输方式(Transport)传输说明状态Streamable HTTP客户端发 HTTP 请求,服务器返回常规响应,或按需打开 SSE 流推荐stdio客户端把 MCP 服务器作为本地子进程启动,通过标准输入/输出通信推荐HTTP/SSE(旧…

📅 2026/10/23 3:01:34
AI岗位暴涨12倍!小白程序员必备:收藏这份2026年高薪跳槽指南

AI岗位暴涨12倍!小白程序员必备:收藏这份2026年高薪跳槽指南

2026年新经济行业招聘市场回温,AI岗位量同比增长12倍,成为招聘主角,平均月薪达60738元。职场门槛提升,岗位“去初级化”,AI能力成为标配。近六成职场人想跳槽,近半数期望涨薪超20%。大模型算法、产品经理等…

📅 2026/10/23 2:56:34
具身智能协同演化动力学(120):TVA-World 协同架构虚实域适应机理研究

具身智能协同演化动力学(120):TVA-World 协同架构虚实域适应机理研究

前沿技术探索:FRA核心定义与设计理念 FRA(Factorized Robotic Agent, FRA,亦称:因式分解机器人智能体)是一套因式化数实融合一体化新型智能系统,核心设计理念是全链路系统解耦,将机器人作业的感…

📅 2026/10/23 2:56:34
MORE NEWS

更多资讯

📰

从零搭建语义搜索引擎:向量化、Faiss与精排实战

做语义搜索之前,我一直觉得这玩意儿是搜推荐系统的人才玩的活,什么双塔模型、向量召回、ANN检索,听着就头大。直到我亲手搭了一个基于向量化的语义搜索Demo,跑通那一下才明白,原来“让机器理解搜索意图”落到工程上并没…

📰

μP理论被新研究推翻?大模型学习率需按深度修正

直接说结论:这条消息在技术社区里炸开之前,我自己先后把μP(Maximal Update Parametrization,最大更新参数化)理论反复读过几遍,也按“小模型调好超参,直接迁移到大模型”的思路复现过若干次。每…

📰

Excel技巧163条拆解:高频操作、函数图表与避坑实战

简介:这份文档系统收录了163种Excel实用技巧,覆盖基本方法、数据处理、公式函数、图表可视化、宏与编程等模块,适合需要提升表格处理效率的职场人士、学生及数据分析工作者。资源包共1个文件,类型为doc格式文档,压缩包…

📰

Tent混沌映射改进麻雀算法优化BP神经网络的回归预测实现

不知道你有没有这种感觉:一篇回归预测的论文或项目方案,看标题全是“改进”“优化”“混合”,但真正跑起来后,大部分时间都耗在了调参、复现和“不知道算法到底改对没有”的自我怀疑上。前阵子我刚好做完一个用Tent混沌映射改进麻…

📰

基于Spark的气象数据处理与分析:从爬虫到可视化完整实战

简介:面向大数据期末课设的Spark气象数据处理与分析完整项目报告,适合大数据专业学生及Spark入门开发者参考。报告以中央气象台全国2412个城市、57888条24小时气象数据为对象,完整呈现了从省份、城市及天气数据逐层爬取,到Ubuntu环…

📰

直播美颜SDK性能优化全解析:架构、算法与踩坑实录

开篇先聊一个很现实的问题:直播场景下的美颜 SDK,和拍照修图里的美颜,看起来都是“把人变好看”,但技术选型几乎完全是两条路。拍照可以离线慢慢算,一张图处理几百毫秒用户都不觉得慢;直播是 30 帧每秒连续…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬