用途:从 SEC EDGAR 官方 API 摄取上市公司申报文件(10-K、10-Q、8-K),解析后存入 pgvector 向量库,用于后续检索与问答,同时保留完整审计追踪。
主要能力:拉取公司 submissions 元数据;按 filing_types 与 lookback_days 过滤近期申报;下载主文档;从 XBRL/iXBRL 提取数值事实;从 HTML 中定位并抽取 MD&A(10-K Item 7、10-Q Item 2)、风险因素(Item 1A)、财务报表附注等章节;按章节切块(默认 chunk_size=1000、overlap=200);用嵌入模型向量化后写入 finserv_chunks 表,含 issuer、cik_or_code、jurisdiction、filing_type、filed_at、source_url、section、checksum 等字段。
使用方式:入口为 ingest_edgar_filings(cik=..., filing_types=[...], lookback_days=...)。请求需带 User-Agent 头,例如 InsightPulseAI FilingsBot business@insightpulseai.com。SEC 限速 ≤10 请求/秒,示例中每次请求后 sleep 0.12 秒,或用 RateLimiter(max_calls=8, period=1.0) 控制在 8 次/秒以内。失败时对 429/503 采用指数退避重试(2、4、8、16 秒)。存储依赖 POSTGRES_URL 环境变量。可通过 cron 每日运行 ingest_edgar_filings.py。附带检索命中率评估示例,要求命中率不低于 0.85。
适用场景:财报与风险披露的结构化归档、面向财务文档的向量检索与问答、审计留痕。
限制:仅覆盖 SEC EDGAR 数据;XBRL 事实提取为简化实现;必须遵守 SEC 的访问与限速要求并声明 User-Agent;检索质量依赖嵌入模型与切块参数;其余部署细节暂未提供。