ScavioScavio
产品定价文档
登录开始使用
  1. 首页
  2. 教程
  3. 如何使用 Scavio 构建自主研究代理
教程

如何使用 Scavio 构建自主研究代理

使用 Python 构建一个多步骤研究代理,使用 Scavio 搜索 Google、获取新闻并自动将研究结果合成为结构化报告。

获取免费API密钥API文档

自主研究代理接受一个主题,执行多次网络搜索,收集和删除重复的来源,然后将研究结果综合成结构化报告——所有这些都无需人工干预。这种模式对于市场情报、学术文献摘要和竞争分析很有价值。本教程使用纯 Python 和 Scavio API 构建这样的代理,而不依赖于完整的代理框架。代理发出连续的搜索查询,从 SERP 片段中提取关键事实,并将其格式化为 Markdown 报告。

前置条件

  • Python 3.10 或更高版本
  • 请求已安装库
  • Scavio API 密钥
  • 用于合成步骤的 OpenAI API 密钥(可选)

操作指南

步骤 1: 确定研究计划

将研究主题分解为搜索查询列表。一个好的研究代理会生成 3-5 个涵盖主题不同方面的查询。

Python
def make_queries(topic: str) -> list[str]:
    return [
        topic,
        f"{topic} latest developments 2026",
        f"{topic} key players market",
        f"{topic} challenges limitations",
    ]

步骤 2: 收集每个查询的搜索结果

为每个查询调用 Scavio API,并将自然结果合并到由 URL 键入的单个去重列表中。

Python
def collect_results(queries: list[str]) -> dict:
    seen = {}
    for query in queries:
        data = search_google(query)
        for r in data.get("organic_results", []):
            seen[r["link"]] = r
    return seen

步骤 3: 从片段中提取事实

从重复数据删除结果中构建(标题、片段、url)元组的平面列表,以用于报告生成。

Python
def extract_facts(results: dict) -> list[tuple]:
    facts = []
    for url, r in results.items():
        if r.get("snippet"):
            facts.append((r["title"], r["snippet"], url))
    return facts

步骤 4: 写报告

将收集到的事实格式化为简单的 Markdown 报告。可选择将事实传递给法学硕士进行综合。

Python
def write_report(topic: str, facts: list[tuple]) -> str:
    lines = [f"# Research Report: {topic}\n"]
    for title, snippet, url in facts[:10]:
        lines.append(f"## {title}")
        lines.append(snippet)
        lines.append(f"Source: {url}\n")
    return "\n".join(lines)

Python 示例

Python
import os
import requests

API_KEY = os.environ.get("SCAVIO_API_KEY", "your_scavio_api_key")
ENDPOINT = "https://api.scavio.dev/api/v1/search"

def search_google(query: str) -> dict:
    r = requests.post(ENDPOINT, headers={"x-api-key": API_KEY},
                      json={"query": query, "country_code": "us"})
    r.raise_for_status()
    return r.json()

def research(topic: str) -> str:
    queries = [topic, f"{topic} 2026 trends", f"{topic} challenges"]
    seen = {}
    for q in queries:
        for r in search_google(q).get("organic_results", []):
            seen[r["link"]] = r
    lines = [f"# {topic}\n"]
    for r in list(seen.values())[:10]:
        lines.append(f"## {r['title']}")
        lines.append(r.get("snippet", ""))
        lines.append(f"{r['link']}\n")
    return "\n".join(lines)

if __name__ == "__main__":
    report = research("large language model inference optimization")
    print(report)

JavaScript 示例

JavaScript
const API_KEY = process.env.SCAVIO_API_KEY || "your_scavio_api_key";
const ENDPOINT = "https://api.scavio.dev/api/v1/search";

async function searchGoogle(query) {
  const res = await fetch(ENDPOINT, {
    method: "POST",
    headers: { "x-api-key": API_KEY, "Content-Type": "application/json" },
    body: JSON.stringify({ query, country_code: "us" })
  });
  return res.json();
}

async function research(topic) {
  const queries = [topic, `${topic} 2026 trends`, `${topic} challenges`];
  const seen = new Map();
  for (const q of queries) {
    const data = await searchGoogle(q);
    for (const r of data.organic_results || []) {
      seen.set(r.link, r);
    }
  }
  const results = [...seen.values()].slice(0, 10);
  return results.map(r => `## ${r.title}\n${r.snippet || ""}\n${r.link}`).join("\n\n");
}

research("AI inference optimization").then(console.log).catch(console.error);

预期输出

JSON
# Research Report: AI inference optimization

## Faster LLM Inference Techniques in 2026
Quantization, speculative decoding, and model distillation have reduced...
Source: https://example.com/llm-inference

## Key Players in AI Inference Hardware
NVIDIA, AMD, and Groq continue to dominate...
Source: https://example.com/inference-hardware

相关教程

  • 如何使用 LangChain 和 Scavio 构建 RAG 代理
  • 如何使用搜索 API 自动进行竞争对手分析

常见问题

大多数开发者在15到30分钟内完成本教程。您需要一个Scavio API密钥(免费套餐即可)和可用的Python或JavaScript环境。

Python 3.10 或更高版本. 请求已安装库. Scavio API 密钥. 用于合成步骤的 OpenAI API 密钥(可选). Scavio API密钥注册即送50个免费积分。

可以。免费套餐注册即送50个积分,完全足够完成本教程并构建一个可运行的原型解决方案。

Scavio提供原生LangChain包(langchain-scavio)、MCP服务器以及适用于任何HTTP客户端的REST API。本教程使用 the raw REST API, 但您可以根据需要适配您选择的框架。

相关资源

Best Of

无需框架即可构建代理的最佳工具 (2026)

Read more
Best Of

2026年最佳SerpAPI替代方案

Read more
Use Case

OpenSEO 搭配 Scavio 数据后端

Read more
Comparison

Parallel Web Systems vs Scavio

Read more
Comparison

Tavily vs Scavio

Read more
Solution

代理搜索供应商决策栈(2026)

Read more

开始构建

使用 Python 构建一个多步骤研究代理,使用 Scavio 搜索 Google、获取新闻并自动将研究结果合成为结构化报告。

获取免费API密钥阅读文档
ScavioScavio

面向AI智能体的实时搜索API。搜索所有平台,不仅仅是Google。

产品

  • 功能
  • 定价
  • 控制台
  • 联盟计划

开发者

  • 文档
  • API参考
  • 快速开始
  • MCP集成
  • Python SDK

替代方案

  • Tavily替代方案
  • SerpAPI替代方案
  • Firecrawl替代方案
  • Exa替代方案

工具

  • JSON格式化
  • cURL转代码
  • Token计数器
  • 全部工具

© 2026 Scavio. 保留所有权利。

Featured on TAAFT
服务条款隐私政策