一条搜索结果里的 24,723 个 token 究竟包含什么?我们逐字段拆解了它
内容提要
SerpApi 推出 Markdown 输出格式,可将搜索结果 token 消耗降低 74%(如“coffee”从 24723 降至 6435,进一步过滤仅 1298)。该格式去除追踪链接、图标、嵌套元数据等冗余内容,保留表格和链接,适合 LLM 代理使用,但需精确数据类型时仍应使用 JSON。通过 output=md 参数或 /search.md 端点即可启用,覆盖 100 多个 API 且不额外收费。
延伸解读
JSON 与 Markdown 的取舍:何时该用哪种格式
文章指出,Markdown 输出适合 LLM 和 AI 代理,因为它去除了追踪链接、图标、嵌套元数据等冗余内容,显著降低 token 消耗。但如果你的管道需要精确的数据类型(如整数价格、浮点评分、结构化数组),JSON 仍是更好的选择。例如,Naver Shopping 的 JSON 结果包含 price、old_price、coupon_price 等整数字段和 rating 浮点字段,适合定价引擎或分析任务;而 Markdown 的表格和行内链接则更适合只需摘要的代理。
如何启用 Markdown 输出及进一步控制
SerpApi 提供了三种启用 Markdown 输出的方式:在现有搜索调用中添加 output=md 参数、调用 /search.md 端点,或设置 Accept: text/markdown 请求头。该功能覆盖所有 100 多个 API 且不额外收费。如果需要更精细的控制,可以使用 json_restrictor(或 CLI 中的 --fields)在服务端选择特定字段,从而在数据跨网络前就减小负载。
实际节省效果需自行验证
文章建议不要盲目相信基准数字,而是用自己已有的查询进行测试:添加 output=md 并统计前后 token 数量,再尝试通过 json_restrictor 限制字段集并再次测量。这样得到的差值才是针对你的引擎和工作流的真实节省。在代理系统中,每次调用的小幅膨胀会快速累积,因此测量和重塑负载是值得采取的措施。
Q&A
SerpApi 的 Markdown 输出能节省多少 token?
以搜索“coffee”为例,JSON 输出需要 24,723 个 token,Markdown 输出仅需 6,435 个 token,减少了 74%。进一步过滤后,token 数可降至 1,298。
Markdown 输出相比 JSON 去掉了哪些内容?
Markdown 输出会移除跟踪链接和内部 SerpApi URL、图标和缩略图、嵌套元数据和重复字段,并将标题和链接合并为一行,从而减少 token 消耗。
什么时候应该用 JSON 而不是 Markdown?
当你的流程需要精确的数据类型(如数值价格、坐标、浮点评分或结构化数组)用于下游处理时,应使用 JSON。Markdown 更适合 LLM 和 AI 代理,但会丢失精确类型。
如何启用 SerpApi 的 Markdown 输出?
可以通过三种方式启用:在搜索请求中添加 output=md 参数、调用 /search.md 端点,或设置 Accept: text/markdown 请求头。该功能覆盖 100 多个 API 且不额外收费。
Markdown 输出会返回什么格式的内容?
Markdown 输出会返回 YAML frontmatter、结构化表格和原生内联链接,同时自动去除内部跟踪噪音和重复字段。
如何验证 Markdown 输出在自己数据上的 token 节省效果?
可以拿一个已有的查询,添加 output=md 参数,然后对比前后响应的 token 数量。再尝试用 json_restrictor 限制字段集,再次测量,得到的差值就是实际节省量。