[ PROMPT_NODE_23782 ]
brightdata-local-search
[ SKILL_DOCUMENTATION ]
# Bright Data 本地搜索
使用 Bright Data 的 SERP API 在本地运行强大的网络搜索。此技能设置了 [unfancy-search](https://github.com/yaronbeen/unfancy-search) 流水线——一个包含查询扩展、多引擎 SERP 检索、RRF 重排序、去重和域名聚类的本地搜索引擎。
**重要:此技能仅使用本地版本。请勿使用托管端点。**
## 先决条件
- 拥有 SERP API 访问权限的 [Bright Data](https://brightdata.com) 账户
- [Anthropic API 密钥](https://console.anthropic.com) (用于查询扩展,可选)
- Docker (推荐) 或 Node.js 18+ 及 pnpm
## 设置
### 第 1 步:克隆并配置
bash
git clone https://github.com/yaronbeen/unfancy-search.git
cd unfancy-search
cp .env.example .env
### 第 2 步:设置环境变量
使用你的凭据编辑 `.env`:
env
BRIGHT_DATA_API_TOKEN=your_brightdata_token
BRIGHT_DATA_SERP_ZONE=serp_api1
ANTHROPIC_API_KEY=your_anthropic_key # 可选:启用 AI 查询扩展
从 https://brightdata.com (SERP API 部分) 获取你的 Bright Data 令牌。
### 第 3 步:启动本地服务器
**Docker (推荐):**
bash
docker compose up -d
# 服务器运行在 http://localhost:3000
**Node.js:**
bash
pnpm install
pnpm dev
# 服务器运行在 http://localhost:3000
## API 端点
所有请求均发送至 `http://localhost:3000`:
| 端点 | 方法 | 描述 |
|----------|--------|-------------|
| `/api/search` | POST | 启动搜索任务 |
| `/api/search-status/{jobId}` | GET | 轮询结果 |
| `/api/baseline` | POST | 触发基准收集 |
| `/api/baseline-status/{id}` | GET | 轮询基准进度 |
## 运行搜索
### 第 1 步:提交搜索
bash
curl -X POST http://localhost:3000/api/search
-H "Content-Type: application/json"
-d '{"query": "your search term"}'
响应返回一个 `jobId`。
### 第 2 步:轮询结果
bash
curl http://localhost:3000/api/search-status/{jobId}
每 3 秒轮询一次,直到 `status` 为 `"done"`。
### 搜索参数
| 参数 | 类型 | 默认值 | 描述 |
|-----------|------|---------|-------------|
| `query` | string | 必填 | 搜索查询 |
| `expand` | boolean | `false` | 通过 Claude 启用 AI 查询扩展 |
| `research` | boolean | `false` | 研究模式 (12 个子查询以实现最大覆盖率) |
| `engines` | string[] | all | 使用的 SERP 引擎 |
| `geo` | string | — | 地理区域过滤器 |
| `count` | number | 10 | 最大结果数