核心用法
markdown-fetch 是一个针对 AI Agent 优化的网页抓取工具,核心原理是利用 Cloudflare 的 Markdown for Agents 功能:通过在 HTTP 请求头中声明 Accept: text/markdown, text/html,让支持该特性的网站直接返回 Markdown 格式而非 HTML,从而大幅减少 Token 消耗(官方宣称约 80%)。
使用方式
1. 集成到现有项目:替换原有的 fetch 调用,使用封装好的 optimizedFetch 函数
2. 自动降级处理:优先请求 Markdown,若服务端不支持则自动回退到 HTML 解析
3. Token 监控:可选读取响应头 x-markdown-tokens,量化节省效果
显著优点
- Token 效率:Markdown 比 HTML 精简约 80%,直接降低 LLM API 成本
- 简化解析:无需复杂的 HTML→Markdown 转换,减少解析错误
- 透明兼容:服务端不支持时自动回退,无破坏性变更
- 低侵入性:仅需修改请求头,不改业务逻辑
潜在局限
- 服务端依赖:仅 Cloudflare 托管站点支持,覆盖率有限(2024-2025 逐步推广中)
- 内容完整性:部分动态渲染内容(JS 执行后)可能丢失
- 格式一致性:不同站点的 Markdown 生成质量参差不齐
- 生态早期:工具链成熟度待验证,生产环境需充分测试
适合人群
- 开发 AI Agent/RAG 系统的工程师
- 高频抓取网页并喂给 LLM 的场景(如搜索增强、知识库构建)
- 关注 Token 成本优化的团队
常规风险
- 可用性风险:Cloudflare 功能迭代可能导致行为变更
- 安全风险:需确保抓取目标合规,避免违反 robots.txt 或服务条款
- 数据一致性:Markdown 简化可能导致结构化信息丢失(如表格、嵌套列表)