92 lines
2.6 KiB
Markdown
92 lines
2.6 KiB
Markdown
# API 说明
|
|
|
|
FastAPI 会自动生成交互式 API 文档。启动服务后访问:
|
|
|
|
```text
|
|
http://localhost:8102/docs
|
|
```
|
|
|
|
所有后台接口统一挂载在:
|
|
|
|
```text
|
|
/v1/admin
|
|
```
|
|
|
|
## 常用接口
|
|
|
|
| 接口 | 方法 | 说明 |
|
|
| --- | --- | --- |
|
|
| `/v1/admin/health` | `GET` | 健康检查 |
|
|
| `/v1/admin/auth/login` | `POST` | 管理员登录 |
|
|
| `/v1/admin/auth/me` | `GET` | 当前登录用户 |
|
|
| `/v1/admin/projects` | `GET/POST` | 项目管理 |
|
|
| `/v1/admin/ontology-schemas/current` | `GET` | 当前 schema |
|
|
| `/v1/admin/source-profiles` | `GET/POST/PATCH` | 数据源管理 |
|
|
| `/v1/admin/batches` | `GET` | 批次管理 |
|
|
| `/v1/admin/entities` | `GET` | 候选实体列表 |
|
|
| `/v1/admin/conflicts` | `GET` | 冲突列表 |
|
|
| `/v1/admin/publish-jobs` | `GET/POST` | 发布任务 |
|
|
| `/v1/admin/graph/overview` | `GET` | 图谱概览 |
|
|
| `/v1/admin/graph/query` | `POST` | 图谱查询 |
|
|
| `/v1/admin/plaza/overview` | `GET` | 图谱广场概览 |
|
|
| `/v1/admin/manual-ingest/extract` | `POST` | 手动抽取 |
|
|
| `/v1/admin/travel/assistant-query` | `POST` | 旅行客服问答 |
|
|
| `/v1/admin/super-agent/run` | `POST` | Super Agent 任务 |
|
|
| `/v1/admin/roles` | `GET/POST` | 角色管理 |
|
|
| `/v1/admin/users` | `GET/POST` | 用户管理 |
|
|
| `/v1/admin/areas/tree` | `GET` | 区域树 |
|
|
| `/v1/admin/notifications` | `GET` | 通知列表 |
|
|
|
|
## 登录示例
|
|
|
|
```bash
|
|
curl -s http://localhost:8102/v1/admin/auth/login \
|
|
-H 'Content-Type: application/json' \
|
|
-d '{"username":"admin@example.com","password":"change-me"}'
|
|
```
|
|
|
|
返回中包含 `access_token`,后续接口可使用:
|
|
|
|
```bash
|
|
TOKEN="上一步返回的 access_token"
|
|
curl http://localhost:8102/v1/admin/auth/me \
|
|
-H "Authorization: Bearer $TOKEN"
|
|
```
|
|
|
|
## 图谱查询示例
|
|
|
|
```bash
|
|
curl http://localhost:8102/v1/admin/graph/overview
|
|
```
|
|
|
|
```bash
|
|
curl http://localhost:8102/v1/admin/graph/query \
|
|
-H 'Content-Type: application/json' \
|
|
-d '{"query":"MATCH (n) RETURN n LIMIT 10"}'
|
|
```
|
|
|
|
## 旅行客服问答示例
|
|
|
|
```bash
|
|
curl http://localhost:8102/v1/admin/travel/assistant-query \
|
|
-H 'Content-Type: application/json' \
|
|
-d '{"question":"黄小西三日游多少钱?"}'
|
|
```
|
|
|
|
## 前端调用
|
|
|
|
React 管理后台通过 `admin-web/src/api.ts` 访问同源 API。Docker 部署时前端和 API 同在 `http://localhost:8102`,因此无需额外配置跨域代理。
|
|
|
|
## 外部服务
|
|
|
|
LLM 和高德地图相关能力默认关闭或留空。启用前需要在 `.env` 或 Docker Compose 环境变量中配置:
|
|
|
|
- `LLM_API_BASE`
|
|
- `LLM_API_KEY`
|
|
- `LLM_MODEL`
|
|
- `LLM_EXTRACTION_ENABLED=true`
|
|
- `AMAP_WEB_KEY`
|
|
- `AMAP_JS_KEY`
|
|
- `AMAP_SECURITY_JSCODE`
|
|
- `GAODE_CRAWLER_PATH`
|