6c72b7d048
- Add docs/DATA_SOURCE_FLOW.md: end-to-end source -> NotebookLM -> storage -> App flow, source list with publish frequency, institution intro status, ingestion artifact structure, and known cadence gaps - Link the new doc from README and PROJECT_OVERVIEW indexes - Localize top-level and subproject READMEs to Chinese for handoff (pre-existing working-tree changes) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
63 lines
2.1 KiB
Markdown
63 lines
2.1 KiB
Markdown
# report-notebooklm-api
|
||
|
||
report-notebooklm 第一阶段对外只读接口的 FastAPI 服务。
|
||
|
||
这个目录是 API、数据模型、种子数据导入,以及由 NotebookLM 支撑的内容流水线的主要工程交接入口。配套的 Flutter 应用在同一个 monorepo 的 `../report-notebooklm-app/` 里。
|
||
|
||
## 先读这些
|
||
|
||
- [docs/HANDOFF.md](docs/HANDOFF.md):当前进度、已解决的问题、待解决的问题,以及交接顺序。
|
||
- [docs/PROJECT_BRIEF.md](docs/PROJECT_BRIEF.md):产品和第一阶段范围速览。
|
||
- [docs/API_AND_DATA.md](docs/API_AND_DATA.md):数据表、接口,以及已实现 / 计划中的 API。
|
||
- [docs/CONTENT_PIPELINE.md](docs/CONTENT_PIPELINE.md):研报来源和 NotebookLM 产物的流转。
|
||
- [docs/RUNBOOK.md](docs/RUNBOOK.md):本地搭建、种子数据导入、冒烟检查和部署检查。
|
||
- [docs/ROADMAP_AND_OPEN_ISSUES.md](docs/ROADMAP_AND_OPEN_ISSUES.md):下一步的工程工作。
|
||
- [docs/SOURCE_INDEX.md](docs/SOURCE_INDEX.md):本次交接快照所用到的源文档名称。
|
||
|
||
## 产品边界
|
||
|
||
这个仓库装的是代码和一份工程交接快照,不是产品的唯一真源。
|
||
|
||
产品 SSOT:mall-docs 里的 report-notebooklm 文档。快照日期:2026-06-03。
|
||
|
||
技术标识符用 `report-notebooklm` 和 `rnb`,面向用户的产品名是 `研听`。
|
||
|
||
## 本地快速上手
|
||
|
||
按你环境里可用的后端服务,创建一个 `.env` 文件:
|
||
|
||
```bash
|
||
RNB_DATABASE_URL=mysql+asyncmy://<db-user>:<db-pass>@<db-host>:<db-port>/report_notebooklm
|
||
RNB_REDIS_URL=redis://<host>:<port>/0
|
||
RNB_REDIS_KEY_PREFIX=rnb:
|
||
```
|
||
|
||
然后运行:
|
||
|
||
```bash
|
||
python -m venv .venv
|
||
source .venv/bin/activate
|
||
pip install -e ".[dev]"
|
||
alembic upgrade head
|
||
python scripts/import_seed_content.py
|
||
uvicorn app.main:app --reload --host <bind-host> --port <port>
|
||
```
|
||
|
||
API 前缀:`/api/report-notebooklm/v1`
|
||
|
||
## 验证
|
||
|
||
```bash
|
||
source .venv/bin/activate
|
||
pytest -q
|
||
```
|
||
|
||
服务启动后,建议做这些冒烟检查:
|
||
|
||
```bash
|
||
API_BASE_URL=http://<api-host>:<port>/api/report-notebooklm/v1
|
||
curl "$API_BASE_URL/health"
|
||
curl "$API_BASE_URL/feed/recommended"
|
||
curl "$API_BASE_URL/reports/rep_ssga_gold"
|
||
```
|