CrawlForge
首页Playground应用场景集成价格文档博客
用 CrawlForge Deep Research 构建调研智能体
Use Cases
返回博客
应用场景

用 CrawlForge Deep Research 构建调研智能体

C
CrawlForge Team
工程团队
2026年4月16日
阅读时长 10 分钟

本页内容

一名资深分析师要花 4-6 个小时来调研一个市场问题:查询多个数据库、阅读 20-30 篇文章、交叉比对数据点,并将发现综合成一份连贯的简报。其中大部分时间都花在机械性工作上 -- 在 arXiv 或 SEC EDGAR 等平台上查找来源、提取相关段落、检查矛盾之处 -- 而非真正的分析。

CrawlForge 的 deep_research 工具将整个工作流压缩到一次 API 调用中。它会自动扩展你的查询、搜索多个来源、验证可信度、检测矛盾信息,并生成一份带引用的综合报告。本指南将向你展示如何围绕它构建一个生产级的调研智能体。

目录

  • 什么是 Deep Research
  • 架构概览
  • 第 1 步:配置调研智能体
  • 第 2 步:执行多来源调研
  • 第 3 步:处理并验证发现
  • 第 4 步:生成调研报告
  • 第 5 步:构建周期性调研工作流
  • credits 成本分析
  • 成效与收益
  • 常见问题

什么是 Deep Research

什么是 AI 中的深度调研(deep research)?深度调研是一种自动化的多阶段信息收集过程:AI 智能体系统性地查询多个来源、提取相关发现、交叉比对数据以确保准确性、检测矛盾,并将结果综合成一份带来源引用和可信度评分的结构化报告。

与只返回 10 个链接的简单网页搜索不同,deep_research 作为一个完整的调研工作流运行:

阶段发生了什么为何重要
查询扩展生成同义词和相关查询捕获单个查询会遗漏的结果
多来源搜索并行查询 10-50 个来源覆盖广度
内容提取从每个来源中提取相关段落信息深度
来源验证为每个来源的可信度评分质量保证
冲突检测标记矛盾信息准确性
综合生成带引用的连贯报告可执行的输出

深度调研是如何工作的?该工具接收一个调研主题,自动生成扩展的搜索查询,抓取并分析来自多个来源的页面,为来源可信度评分,检测跨来源的矛盾论断,并将所有内容综合成一份结构化报告。整个过程根据范围在 30-120 秒内完成。

架构概览

调研智能体将 deep_research 与辅助工具结合使用:

组件工具Credits用途
核心调研deep_research10多来源调查
后续提取extract_content2深入特定来源
文档分析process_document3解析被引用的 PDF 和报告
摘要生成summarize_content2创建执行摘要
补充搜索search_web5有针对性的后续查询

第 1 步:配置调研智能体

为不同类型的调研设置一个带可配置参数的调研智能体。

Typescript
import { Client } from '@modelcontextprotocol/sdk/client/index.js';

const client = new Client({
  name: 'research-agent',
  version: '1.0.0',
});

interface ResearchConfig {
  topic: string;
  approach: 'broad' | 'focused' | 'academic' | 'current_events' | 'comparative';
  maxSources: number;
  maxDepth: number;
  credibilityThreshold: number;
  sourceTypes: Array<'academic' | 'news' | 'government' | 'commercial' | 'blog'>;
  timeLimit: number;
}

// Preset configurations for common research types
const RESEARCH_PRESETS: Record<string, Partial<ResearchConfig>> = {
  market: {
    approach: 'broad',
    maxSources: 30,
    maxDepth: 5,
    credibilityThreshold: 0.4,
    sourceTypes: ['news', 'commercial', 'blog'],
    timeLimit: 90000, // 90 seconds
  },
  technical: {
    approach: 'focused',
    maxSources: 20,
    maxDepth: 3,
    credibilityThreshold: 0.6,
    sourceTypes: ['academic', 'blog', 'commercial'],
    timeLimit: 60000,
  },
  competitive: {
    approach: 'comparative',
    maxSources: 25,
    maxDepth: 4,
    credibilityThreshold: 0.5,
    sourceTypes: ['commercial', 'news', 'blog'],
    timeLimit: 120000,
  },
  academic: {
    approach: 'academic',
    maxSources: 40,
    maxDepth: 5,
    credibilityThreshold: 0.7,
    sourceTypes: ['academic', 'government'],
    timeLimit: 120000,
  },
};

第 2 步:执行多来源调研

使用 deep_research 执行调研,并处理结构化输出。

Typescript
interface ResearchResult {
  synthesis: string;
  sources: Array<{
    url: string;
    title: string;
    credibilityScore: number;
    relevantFindings: string[];
  }>;
  conflicts: Array<{
    topic: string;
    positions: Array<{ source: string; claim: string }>;
  }>;
  confidence: number;
  queryExpansions: string[];
}

async function runResearch(config: ResearchConfig): Promise<ResearchResult> {
  const result = await client.callTool({
    name: 'deep_research',
    arguments: {
      topic: config.topic,
      maxDepth: config.maxDepth,
      maxUrls: config.maxSources,
      enableSourceVerification: true,
      enableConflictDetection: true,
      enableSynthesis: true,
      researchApproach: config.approach,
      credibilityThreshold: config.credibilityThreshold,
      sourceTypes: config.sourceTypes,
      timeLimit: config.timeLimit,
      outputFormat: 'comprehensive',
      queryExpansion: {
        enableSynonyms: true,
        enableContextual: true,
        maxVariations: 8,
      },
    },
  });

  return JSON.parse(result.content[0].text);
}

// Example: Research a market question
const marketResearch = await runResearch({
  topic: 'MCP server adoption trends in enterprise AI development 2026',
  ...RESEARCH_PRESETS.market,
} as ResearchConfig);

console.log(`Research complete: ${marketResearch.sources.length} sources analyzed`);
console.log(`Confidence level: ${marketResearch.confidence}`);
console.log(`Conflicts found: ${marketResearch.conflicts.length}`);

第 3 步:处理并验证发现

对于关键调研,可深入挖掘核心来源并验证具体论断。

Typescript
async function validateFindings(
  research: ResearchResult,
  topN: number = 5
): Promise<{
  validated: ResearchResult;
  additionalInsights: string[];
}> {
  const additionalInsights: string[] = [];

  // Get full content from top sources
  const topSources = research.sources
    .sort((a, b) => b.credibilityScore - a.credibilityScore)
    .slice(0, topN);

  for (const source of topSources) {
    // Extract full content for deeper analysis
    const fullContent = await client.callTool({
      name: 'extract_content',
      arguments: { url: source.url },
    });

    const content = JSON.parse(fullContent.content[0].text);

    // Check for PDF references in the source
    if (content.content.includes('.pdf')) {
      const pdfUrls = content.content.match(
        /https?:\/\/[^\s]+\.pdf/g
      ) || [];

      for (const pdfUrl of pdfUrls.slice(0, 2)) {
        try {
          const doc = await client.callTool({
            name: 'process_document',
            arguments: {
              source: pdfUrl,
              sourceType: 'pdf_url',
            },
          });

          const docResult = JSON.parse(doc.content[0].text);
          additionalInsights.push(
            `From ${pdfUrl}: ${docResult.summary || docResult.content?.slice(0, 200)}`
          );
        } catch {
          // PDF might be behind auth; skip
        }
      }
    }
  }

  return {
    validated: research,
    additionalInsights,
  };
}

第 4 步:生成调研报告

将原始的调研输出转化为精炼、可分享的报告。

Typescript
interface ResearchReport {
  title: string;
  executiveSummary: string;
  keyFindings: string[];
  detailedAnalysis: string;
  conflictsAndCaveats: string[];
  sources: Array<{ title: string; url: string; credibility: string }>;
  methodology: string;
  generatedAt: string;
}

async function generateReport(
  research: ResearchResult,
  reportTitle: string
): Promise<ResearchReport> {
  // Generate executive summary
  const summaryResult = await client.callTool({
    name: 'summarize_content',
    arguments: {
      text: research.synthesis,
    },
  });

  const summary = JSON.parse(summaryResult.content[0].text);

  // Extract key findings as bullet points
  const keyFindings = research.sources
    .flatMap(s => s.relevantFindings)
    .filter((finding, index, self) => self.indexOf(finding) === index)
    .slice(0, 10);

  return {
    title: reportTitle,
    executiveSummary: summary.summary,
    keyFindings,
    detailedAnalysis: research.synthesis,
    conflictsAndCaveats: research.conflicts.map(
      c => `Conflicting information on "${c.topic}": ${c.positions.length} different positions found across sources`
    ),
    sources: research.sources.map(s => ({
      title: s.title,
      url: s.url,
      credibility: s.credibilityScore > 0.7 ? 'High' : s.credibilityScore > 0.4 ? 'Medium' : 'Low',
    })),
    methodology: `Automated research using CrawlForge deep_research. ${research.sources.length} sources analyzed with ${research.queryExpansions.length} query variations. Credibility threshold: ${research.confidence}.`,
    generatedAt: new Date().toISOString(),
  };
}

第 5 步:构建周期性调研工作流

对于持续的调研需求,可设置定时工作流来跟踪主题随时间的演变。

Typescript
interface RecurringResearch {
  id: string;
  topic: string;
  schedule: 'daily' | 'weekly' | 'monthly';
  config: ResearchConfig;
  history: ResearchReport[];
}

async function runRecurringResearch(
  research: RecurringResearch
): Promise<ResearchReport> {
  // Run the research
  const result = await runResearch(research.config);

  // Generate the report
  const report = await generateReport(
    result,
    `${research.topic} - ${new Date().toISOString().split('T')[0]}`
  );

  // Compare with previous report if available
  if (research.history.length > 0) {
    const previousReport = research.history[research.history.length - 1];
    const newFindings = report.keyFindings.filter(
      f => !previousReport.keyFindings.includes(f)
    );

    if (newFindings.length > 0) {
      console.log(`\nNew findings since last report:`);
      newFindings.forEach(f => console.log(`  - ${f}`));
    }
  }

  research.history.push(report);
  return report;
}

credits 成本分析

deep_research 每次调用 10 credits,是 CrawlForge 单价最高的工具,但它替代了原本需要 15-30 次单独工具调用才能完成的工作。

调研类型使用的工具总 credits手动等效耗时
快速主题调研deep_research102-3 小时
含来源验证+ extract_content x5204-5 小时
含 PDF 分析+ process_document x2265-6 小时
完整报告生成+ summarize_content286-8 小时

调研团队的月度成本:

用量Credits/月推荐套餐
10 份报告/月280Free 套餐(1,000 credits)
50 份报告/月1,400Hobby($19/月,5,000 credits)
200 份报告/月5,600Professional($99/月,50,000 credits)

成效与收益

一个 CrawlForge 调研智能体能带来:

  • 速度:在 2-5 分钟内完成一份调研简报,而非 4-6 小时
  • 广度:每次查询分析 20-50 个来源,而手动只能 5-10 个
  • 准确性:内置的冲突检测能捕获人类遗漏的矛盾
  • 一致性:每次都采用相同方法,没有研究者偏见
  • 可审计性:每个来源都附带可信度评分的引用

该工具对周期性调研尤其强大 -- 每周跟踪市场如何演变、监控监管变化,或让竞争格局文档保持最新。

常见问题

deep_research 与 Perplexity 或 ChatGPT Search 相比如何?

deep_research 分析的来源明显更多(每次查询最多 50 个,而基于聊天的搜索只有 5-10 个),包含可信度评分,能检测来源之间的冲突,并返回可供你以编程方式处理的结构化数据。基于聊天的工具更适合快速的对话式回答。CrawlForge 更适合系统化、可重复的调研工作流。

我可以用 deep_research 做学术调研吗?

可以。设置 researchApproach: 'academic' 和 sourceTypes: ['academic', 'government'] 以优先采用学术来源。可信度阈值会自动过滤掉低质量来源。请注意,deep_research 处理的是可公开访问的网页来源 -- 它无法访问付费墙后的论文。

每次调用 10 credits 值得吗?

考虑一下替代方案:手动操作时,你会用到 search_web(5 credits)+ 多次 extract_content 调用(每次 2 credits)+ analyze_content(每次 3 credits)。对 20 个来源这样做将耗费 100 多 credits。deep_research 将所有这些打包进一次 10 credits 的调用,并内置综合功能。


立即试用深度调研。免费开始,赠送 1,000 credits -- 足够生成 100 份调研报告。无需信用卡。

相关资源:

  • 深度调研自动化:从 10 小时到 10 分钟
  • 用 AI 智能体做竞争情报
  • CrawlForge 文档
  • 定价方案

亲自试一试——无需注册

在 Playground 中运行 CrawlForge 的 27 个抓取与提取工具中的任意一个,然后免费开始,获取 1,000 credits。

1,000 免费 credits • 每月补充 • 无需信用卡

标签

deep-researchai-agentsresearch-automationweb-scrapingmcpai-engineeringautomation

关于作者

C

CrawlForge Team

工程团队

我们正在打造功能最全面的 Web 抓取 MCP server。我们开发的工具帮助开发者为 AI 应用提取、分析和转换 Web 数据。

及时获取最新洞察

将教程、产品更新与 Web 抓取技巧直接发送到你的收件箱。

拒绝垃圾邮件,随时可取消订阅。

付诸实践

在任意 URL 上测试 CrawlForge 的工具——免费,无需注册。

本页内容

相关文章

用 AI agent 实现实时竞争情报
Use Cases

用 AI agent 实现实时竞争情报

用 CrawlForge 和 Claude 构建一个 AI 驱动的竞争情报系统。每周监控竞争对手、追踪变化并生成战略洞察。

C
CrawlForge Team
|
4月8日
|
9 分钟
用 CrawlForge MCP 自动化 SEO 审计
Use Cases

用 CrawlForge MCP 自动化 SEO 审计

自动运行全面的技术 SEO 审计。用 CrawlForge 爬取你的站点、检查元数据、查找失效链接并生成可执行的报告。

C
CrawlForge Team
|
4月6日
|
9 分钟
构建一个 AI 驱动的价格监控系统
Use Cases

构建一个 AI 驱动的价格监控系统

使用 CrawlForge 和 Claude 自动跟踪竞争对手的价格。在成千上万个产品页面上提取、对比价格并对变动发出告警。

C
CrawlForge Team
|
4月4日
|
9 分钟

页脚

CrawlForge

面向 AI Agent 的企业级网页抓取。27 个专业 MCP 工具,专为构建智能系统的现代开发者而设计。

产品

  • 功能
  • Playground
  • 价格
  • 应用场景
  • 集成
  • 替代方案
  • 更新日志

资源

  • 快速上手
  • API 参考
  • 模板
  • 指南
  • 博客
  • 术语表
  • 常见问题
  • 网站地图

开发者

  • MCP 协议
  • Claude Desktop
  • Cursor IDE
  • LangChain
  • LlamaIndex

公司

  • 关于我们
  • 联系我们
  • 隐私政策
  • 服务条款
  • 可接受使用政策
  • Cookie

保持更新

获取新工具和新功能的最新动态。

基于 Next.js 和 MCP 协议构建

© 2025-2026 CrawlForge。保留所有权利。