Files
news/docs/optimization_plan.md
T
2026-07-18 15:51:01 +08:00

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 单源
参数 类型 默认 说明
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 # 从快照恢复