Firecrawl /agent 是一个魔法般的 API,它可以在最广泛的网站范围内进行搜索、导航并收集数据,在难以触及的角落中找到数据,并以其他任何 API 都无法做到的方式发掘信息。它可以在几分钟内完成原本需要人类耗费数小时的工作——从端到端的数据采集,全程无需脚本或人工操作。
无论你只需要一个数据点,还是需要大规模的完整数据集,Firecrawl /agent 都能为你获取这些数据。
把 /agent 想象成:无论数据藏在哪里,它都能替你做深度调研!
研究预览版 :Agent 目前处于早期访问阶段。可能会有不完善之处,但它会随着时间显著变好。分享反馈 →
Agent 构建于 /extract 的全部优势之上,并在此基础上更进一步:
无需提供 URL :只需通过 prompt 参数描述你的需求,URL 是可选的。
深度网页搜索 :自主搜索并深入浏览站点以找到所需数据
可靠且准确 :适用于多种类型的查询和使用场景
更快 :并行处理多个数据源以更快返回结果
在 Playground 中体验 在交互式 Playground 中测试该 Agent,无需编写代码。
唯一必需的参数是 prompt。只需描述你想要提取的数据。要获得结构化输出,请提供一个 JSON schema。SDK 支持使用 Pydantic(Python)和 Zod(Node)来定义类型安全的 schema:
from firecrawl import Firecrawl
from pydantic import BaseModel, Field
from typing import List, Optional
app = Firecrawl( api_key = "fc-YOUR_API_KEY" )
class Founder ( BaseModel ):
name: str = Field( description = "Full name of the founder" )
role: Optional[ str ] = Field( None , description = "Role or position" )
background: Optional[ str ] = Field( None , description = "专业背景" )
class FoundersSchema ( BaseModel ):
founders: List[Founder] = Field( description = "List of founders" )
result = app.agent(
prompt = "Find the founders of Firecrawl" ,
schema = FoundersSchema,
model = "spark-1-mini" ,
maxCredits = 100
)
print (result.data)
{
"success" : true ,
"status" : "completed" ,
"data" : {
"founders" : [
{
"name" : "Eric Ciarla" ,
"role" : "Co-founder" ,
"background" : "Previously at Mendable"
},
{
"name" : "Nicolas Camara" ,
"role" : "Co-founder" ,
"background" : "Previously at Mendable"
},
{
"name" : "Caleb Peffer" ,
"role" : "Co-founder" ,
"background" : "Previously at Mendable"
}
]
},
"expiresAt" : "2024-12-15T00:00:00.000Z" ,
"creditsUsed" : 15
}
你可以选择提供 URL,让 agent 专注于特定页面:
from firecrawl import Firecrawl
app = Firecrawl( api_key = "fc-YOUR_API_KEY" )
result = app.agent(
urls = [ "https://docs.firecrawl.dev" , "https://firecrawl.dev/pricing" ],
prompt = "比较这些页面的功能和定价信息"
)
print (result.data)
Agent 任务以异步方式运行。提交任务后,你会收到一个 Job ID,用于检查任务状态:
默认方式 :agent() 会阻塞等待,并返回最终结果
先启动再轮询 :使用 start_agent(Python)或 startAgent(Node)立即获取 Job ID,然后通过 get_agent_status / getAgentStatus 进行轮询
任务结果在完成后可通过 API 获取,保留 24 小时。在此之后,你仍然可以在
activity logs 中查看你的 Agent 历史记录和结果。
from firecrawl import Firecrawl
app = Firecrawl( api_key = "fc-YOUR_API_KEY" )
# 启动一个 Agent 任务
agent_job = app.start_agent(
prompt = "Find the founders of Firecrawl"
)
# Check the status
status = app.get_agent_status(agent_job.id)
print (status)
# Example output:
# status='completed'
# success=True
# data={ ... }
# expires_at=datetime.datetime(...)
# credits_used=15
状态 描述 processing代理仍在处理你的请求 completed提取已成功完成 failed提取过程中发生错误
{
"success" : true ,
"status" : "processing" ,
"expiresAt" : "2024-12-15T00:00:00.000Z"
}
{
"success" : true ,
"status" : "completed" ,
"data" : {
"founders" : [
{
"name" : "Eric Ciarla" ,
"role" : "Co-founder"
},
{
"name" : "Nicolas Camara" ,
"role" : "Co-founder"
},
{
"name" : "Caleb Peffer" ,
"role" : "Co-founder"
}
]
},
"expiresAt" : "2024-12-15T00:00:00.000Z" ,
"creditsUsed" : 15
}
Firecrawl Agent 提供两种模型。Spark 1 Mini 成本低 60% ,并且是默认选项——适用于大多数使用场景。当你在复杂任务上需要最高准确率时,再升级到 Spark 1 Pro。
Model Cost Accuracy Best For spark-1-mini成本低 60% 标准 大多数任务(默认) spark-1-pro标准 更高 复杂调研、关键数据抽取
从 Spark 1 Mini 开始使用 (默认)——在成本降低 60% 的前提下,它就能很好地完成大部分抽取任务。仅在进行复杂的多领域调研或对准确性要求极高时,再切换到 Pro。
spark-1-mini 是我们的高效模型,非常适合简单直接的数据提取任务。
在以下情况下使用 Mini:
提取简单数据点(联系方式、价格信息等)
处理结构清晰的网站
需要优先考虑成本效率
运行大批量提取任务时
spark-1-pro 是我们的旗舰模型,专为在复杂数据提取任务中实现最高准确率而设计。
在以下场景使用 Pro:
进行复杂的竞品分析
提取需要深入推理的数据
你的用例对准确性要求极高
处理模糊或难以获取的数据
通过传入 model 参数来选择要使用的模型:
from firecrawl import Firecrawl
app = Firecrawl( api_key = "fc-YOUR_API_KEY" )
# 使用 Spark 1 Mini(默认,可省略)
result = app.agent(
prompt = "Find the pricing of Firecrawl" ,
model = "spark-1-mini"
)
# Using Spark 1 Pro for complex tasks
result = app.agent(
prompt = "Compare all enterprise features and pricing across Firecrawl, Apify, and ScrapingBee" ,
model = "spark-1-pro"
)
print (result.data)
参数 类型 必填 描述 promptstring 是 以自然语言描述你想要提取的数据(最多 10,000 个字符) modelstring 否 使用的模型:spark-1-mini(默认)或 spark-1-pro urlsarray 否 可选的 URL 列表,用于限定提取范围 schemaobject 否 可选的 JSON schema,用于定义结构化输出 maxCreditsnumber 否 在此 agent 任务中可消耗的最大 credits 数。如果未设置,默认值为 2,500 。如果达到上限,任务会失败且不会返回任何数据 ,但已消耗的 credits 仍会计费。
特性 Agent(新) Extract 是否需要提供 URL 否 是 速度 更快 标准 成本 更低 标准 可靠性 更高 标准 查询灵活性 高 中等
调研 : “找出前 5 家 AI 初创公司及其融资金额”
竞品分析 : “比较 Slack 和 Microsoft Teams 的定价方案”
数据收集 : “从公司网站中提取联系方式”
内容摘要 : “总结关于网页抓取的最新博客文章”
在 Agent Playground 中上传 CSV
Agent Playground 支持通过上传 CSV 进行批量处理。上传一个包含输入数据的 CSV(例如公司名称、URL 或任意实体),编写一个提示词,描述你希望 Agent 针对每一行获取哪些数据,定义输出字段,然后运行——Agent 会并行处理每一行并填充结果。
请参阅 Agent API Reference 以了解更多详情。
有反馈或需要帮助?请发送邮件至 help@firecrawl.com 。
Firecrawl Agent 使用 动态计费 模式,费用会随你的数据提取请求复杂度而变化。你根据 Agent 实际完成的工作量付费,无论是提取简单的数据点,还是从多个来源获取复杂的结构化信息,都能享受公平的定价。
在 Research Preview 阶段,Agent 的计费是动态的、基于 credit 的 :
简单抽取任务 (例如从单个页面提取联系方式)通常消耗更少的 credits,成本更低
复杂研究任务 (例如对多个域名进行竞品分析)会消耗更多 credits,但更能体现整体投入的工作量
用量透明 会清楚展示每个请求具体消耗了多少 credits
Credit 换算 会自动将 Agent 的 credit 使用量换算为 credits,便于计费
Credit 使用量会因 prompt 的复杂度、处理的数据量以及期望输出的结构而有所不同。大致来说,大多数 Agent 运行会消耗数百个 credits ,更简单的单页任务可能会用得更少,而复杂的多域名研究可能会用得更多。
如果你使用 Spark-1 Fast 并行运行多个 agent,费用会更加可预测:每个 cell 消耗 10 个积分。
所有用户 每天都会获得5 次免费运行 ,可以通过 playground 或 API 使用,用于在无需付费的情况下体验 Agent 的功能。
额外用量会根据 credit 消耗计费,并换算为 credits。
Agent 可能会比较昂贵,但有一些方法可以降低成本:
从免费运行开始 :利用你每天 5 次免费请求来了解定价
设置 maxCredits 参数 :通过设置你愿意花费的最⼤ credits 数来限制支出
优化提示词 :更具体的提示词通常会消耗更少的 credits
监控用量 :通过仪表盘追踪你的使用情况
设定预期 :跨多个站点/领域的复杂研究会比简单的单页抽取消耗更多 credits
现在访问 firecrawl.dev/app/agent 试用 Agent,看看在你的具体用例下 credits 的使用如何随规模变化。
随着我们从 Research Preview 过渡到正式开放,定价可能会发生变化。现有用户将在任何价格更新前提前收到通知。