local-ipo-advisor — IPO 投研决策顾问
让 Qoder / WorkBuddy / TRAE Work 成为企业的「IPO 情报参谋」:一条命令拿到 基于真实在审企业数据 + 招股书 PDF 原文 + 本地 LLM 的风险解读、财务核查结论、 估值对比、投资亮点与筹备简报。
为什么做这个
企业 IPO 投研需要持续跟踪在审企业的审核进展、财务数据、问询回复与招股书披露。 原系统是一套功能丰富的 IPO 监控系统,但它的 AI 分析层依赖远程 OpenAI 兼容接口, 且未被封装成可供外部 AI Agent 稳定调用的 Skill。
本 skill 把「AI 决策分析层」抽离升级为独立、纯本地、可稳定调用的 AI Skill, 同时命中参赛要求的多项能力点:
- RAG:招股书/问询函 PDF 原文 → 本地 LLM 基于原文提炼可借鉴点
- 数据分析:风险 / 财务 / 估值 / 亮点四大确定性引擎
- Client/Server + OpenVINO 本地推理:事实走规则、判断走模型,防幻觉
核心原则:事实走规则,判断走 LLM
| 层 | 职责 | 实现 | |----|------|------| | 确定性事实 | 风险规则命中、财务勾稽结果、估值中位数、6 维评分、PDF 章节提取 | SQL / 公式 / 正则,绝不交给 LLM | | 生成性判断 | 风险解读、财务解读、估值观点、投资亮点、招股书借鉴点、简报措辞 | 本地 LLM,输入是规则计算后的事实 context |
LLM 仅做「总结 + 建议」,所有数值直接引用规则计算结果,双重防幻觉。
能力清单
| 命令 | 类型 | 说明 |
|------|------|------|
| companies | 规则 | 列出所有在审企业基本信息 |
| risk | 规则 + LLM | 8 类风险规则扫描 → 本地 LLM 优先级排序 + 处置建议 |
| finance | 规则 + LLM | 4 类财务勾稽核对 → 本地 LLM 解读异常 |
| valuation | 规则 + LLM | 可比公司 PE/PB/PS 行业中位数 → 本地 LLM 分析折溢价 |
| highlight | 规则 + LLM | 6 维投资亮点评分 → 本地 LLM 生成投资观点 |
| brief <公司> | 规则 + LLM | 单公司 IPO 筹备简报(全维度) |
| rag <公司> | PDF + LLM | 招股书关键章节 → 本地 LLM 提炼 5 角度可借鉴点 |
| chat "<问题>" | LLM | IPO 场景自然语言问答 |
| status / shutdown | 服务 | 查看/关闭常驻模型服务 |
快速开始
# 进入 skill 目录
cd skills/local-ipo-advisor
# 查看在审企业(确定性,无 LLM)
.\scripts\run.ps1 companies
# 风险预警 + 本地 LLM 解读(首次会自动拉起常驻模型服务,GPU 加载约 30-60s)
.\scripts\run.ps1 risk
# 投资亮点 + 投资观点
.\scripts\run.ps1 highlight
# 单公司 IPO 筹备简报
.\scripts\run.ps1 brief "傲雷科技"
# 招股书 RAG 借鉴点提取
.\scripts\run.ps1 rag "傲雷科技"
# 查看服务状态 / 关闭
.\scripts\run.ps1 status
.\scripts\run.ps1 shutdown
数据源(全部只读,红线:绝不写入)
| 数据 | 来源 | 读写 |
|------|------|------|
| 在审企业 / 风险 / 财务 / 估值 / 亮点 | C:\ai\ipomonitor\db\ipomonitor.db(SQLite) | 只读 |
| 招股书 / 问询函原文 | C:\ai\ipomonitor\files\<公司>\*.pdf | 只读 |
| 模型 | C:\ai\OpenVINO\qwen2.5-3b-int4-ov | 只读 |
路径可用环境变量覆盖:IPO_DB_PATH / IPO_PDF_DIR / IPO_MODEL_PATH。
确定性引擎(规则计算)
- 风险 8 规则:审核停滞 / 多轮问询 / 营收下滑 / 净利为负 / 毛利率偏低 / 海外占比高 / 关税数据缺失 / 数据缺失。
- 财务 4 检查:收入利润背离 / 利润率逻辑 / 数据完整性 / 增长波动。
- 估值对比:PE/PB/PS 行业中位数(读
valuation_compare.pe_ttm/pb/ps)+ 毛利率/净利率折溢价信号。 - 投资亮点 6 维:财务质量 30% / 业务护城河 20% / 合规风险 20% / 可比公司锚定 15% / 赛道β 10% / 关注度 5%。
RAG 设计
- pypdf 提取招股书全文 → 关键词定位 6 章节(核心业务 / 主要产品 / 募集资金运用 / 风险因素 / 财务数据 / 市场地位)。
- 章节原文截断(每节 ≤1200~2000 字)作为 context 注入本地 LLM。
- 本地 LLM 从 5 角度(市场定位 / 商业模式 / 技术壁垒 / 募投项目 / 风险披露)提炼可借鉴点。
- 防幻觉:推断强制标注「(推断)」,原文缺失时明确说明。
架构(Client/Server + named pipe)
run.ps1 ──► client.py ──(named pipe \\.\pipe\local-ipo-advisor)──► server.py
│ 常驻 Qwen2.5-3B-INT4 (GPU)
▼
业务计算层 ipo_calc.py(读 SQLite)+ pdf_extract.py(RAG)
+ 本地 LLM 生成(解读/观点/简报/RAG)
- named pipe:
\\.\pipe\local-ipo-advisor,authkey 双端一致。 - 状态机:starting → loading → running → error → shutdown。
- 退出码:0 成功 / 1 一般错误 / 2 连接错误 / 3 模型加载中。
环境要求
- Python 3.12 + venv
openvino_env(已含 openvino / openvino-genai / pypdf)。 - 模型:Qwen2.5-3B-Instruct INT4(OpenVINO IR,genai 布局)。
- 依赖安装:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple。
目录结构
local-ipo-advisor/
├── SKILL.md # 本文件
├── info.json # 模型路径 / venv 配置
├── meta.json # 展示元信息
├── requirements.txt # 依赖
├── config/
│ ├── config.yaml # 数据源 / 模型路径
│ └── settings.py # 配置加载
└── scripts/
├── llm_engine.py # OpenVINO 本地推理引擎(常驻单例)
├── ipo_calc.py # 业务计算层(风险/财务/估值/亮点 4 引擎)
├── pdf_extract.py # 招股书 PDF RAG 提取
├── server.py # named pipe 常驻模型服务
├── client.py # 短生命周期客户端
├── run.py # 非 AI 命令入口(确定性)
└── run.ps1 # 固定入口(分发到 client.py / run.py)
微信扫一扫