一条搜索结果里的 24,723 个 token 究竟包含什么?我们逐字段拆解了它

💡 原文英文,约900词,阅读约需4分钟。
📝

内容提要

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 限制字段集,再次测量,得到的差值就是实际节省量。

🏷️

标签

➡️

继续阅读