3.8 KiB
3.8 KiB
项目优化计划
版本:v1.0 | 创建:2026-06-17
优化总览
| 序号 | 优化项 | 工作量 | 收益 | 状态 |
|---|---|---|---|---|
| 1 | 统一 CLI a-share |
1.5h | 🔴 每天用 | ✅ 已完成 |
| 2 | CLI 直接检索 a-share search |
0.5h | 🔴 高频 | ✅ 已完成 |
| 3 | 站点发现 a-share discover |
1h | 🟡 加源时用 | ✅ 已完成 |
| 4 | Prompt 调优工具 | 1h | 🟡 调参时用 | 📋 计划中 |
| 5 | 每日摘要报告 | 0.5h | 🟢 锦上添花 | ✅ 已完成 |
| 6 | 健康检查 a-share health |
0.5h | 🟢 运维用 | 📋 计划中 |
| 7 | 数据清理策略 | 0.5h | 🟢 长期必要 | 📋 计划中 |
| 8 | 备份恢复 | 1h | 🟢 生产必须 | 📋 计划中 |
1+2. 统一 CLI a-share + 直接检索 ✅
目标
用一个命令替代 8 个脚本入口,降低日常使用记忆成本;支持直接在终端检索知识库。
设计
# 模块操作(替代 scripts/run_*.py)
uv run a-share crawl # M1 抓取全部源
uv run a-share crawl --source cls # 单源
uv run a-share extract --date 20260616 # M2 提取
uv run a-share dedup --date 20260616 # M3 去重
uv run a-share events --date 20260616 # M4 LLM 抽取
uv run a-share embed --date 20260616 # M5 向量化
uv run a-share ingest --date 20260616 # M6 入库
# 全链路
uv run a-share pipeline --once # 立即执行一次
uv run a-share pipeline # 启动定时守护
# 检索(新增,不走 MCP)
uv run a-share search "宁德时代" # 纯语义
uv run a-share search "宁德时代" --source cls --top 5 # 过滤
uv run a-share search "芯片" --sentiment positive --min-importance 3
# 运维
uv run a-share status # 查看各层数据量 + 今天摘要
实现文件
a_share_cli/__init__.py— 空a_share_cli/main.py— argparse 子命令路由pyproject.toml—[project.scripts] a-share = "a_share_cli.main:main"
子命令详情
a-share crawl
| 参数 | 类型 | 默认 | 说明 |
|---|---|---|---|
--source |
str | None | 单源 id |
--no-save |
flag | False | 试跑不写文件 |
a-share extract
| 参数 | 类型 | 默认 | 说明 |
|---|---|---|---|
--date |
str | today | YYYYMMDD |
--source |
str | None | 单源 |
a-share search
| 参数 | 类型 | 默认 | 说明 |
|---|---|---|---|
query |
positional | — | 自然语言查询 |
--top |
int | 10 | 返回条数 |
--source |
str | None | 按源过滤 |
--sentiment |
str | None | positive/negative/neutral |
--min-importance |
int | None | 最低影响程度 |
--stock |
str | None | 股票代码 |
--industry |
str | None | 行业 |
a-share status
无参数,输出各数据层统计 + 今天事件摘要。
3. 站点发现 a-share discover 📋
uv run a-share discover https://wallstreetcn.com/news/global
内部:抓首页 → 提取 <a href> → 按 URL 模式聚类 → 输出 yaml 配置建议。
4. Prompt 调优工具 📋
uv run a-share tune-prompt --sample 5 # 样本抽取,展示结果
uv run a-share tune-prompt --diff # 对比新旧 prompt
5. 每日摘要报告 📋
M7 pipeline 末尾追加一步:生成 data/reports/{YYYYMMDD}.md,含各层统计 + 高重要性事件列表。
6. 健康检查 📋
uv run a-share health
检查:Qdrant 连通性 / LLM API 可达 / 各层数据完整性 / 磁盘空间。
7. 数据清理策略 📋
.env 新增:
DATA_RETENTION_DAYS=90
M7 pipeline 中加 cleanup 步骤:删除超过保留期的 raw/processed 目录。
8. 备份恢复 📋
uv run a-share backup # → data/backups/20260617/
uv run a-share restore 20260617 # 从快照恢复