票交所报文查询与解读助手
用本包 scripts/run.py 查询 DeepFin。Python 3.10+,仅标准库;复用解释器和脚本绝对路径。常规查询用 --format brief,默认关闭外部检索和后台解释模型。
先按输入选路径
- 只问机构编号:先数原始字符串位数。只接受6、9、12、21位;其他长度直接说明本名录不支持并请核对原值,到此停止,不调用API、不补零、不删零、不猜候选机构。合法输入用 institutions --codes 原值;名称用 institutions --name 全称 --match exact。保留前导零,matched才称命中,歧义列候选。机构细节。
- 给了原始报文:decode --payload-file 原文文件,或 request --input - 用JSON stdin传payload。一份payload只收一份XML;多份按Document拆开,保留原报头、字段和签名。无需手工填message_code。解码已含机构、码值、数字核验及规范说明,先用这些结果,不逐项重复查。长文档与多份报文。
- 问某报文样子/用途/规则:已知编号用 details --message-code NES.012.001;只知道名称用 ask --query "追索通知",唯一命中会带完整说明。不伪造XML探查规则。需要单段可加 --section-kind explanation/function/structure/processing_rules/catalog_attributes。
- 字段或码表:fields --message-code CES.011.002 --field RecCmd --page-size 100;单码用 error --code ST02 --code-type SettleType;整表用 codes --code-type BusiCategory --page-size 100。不能用空码值枚举,不能把标签名当字段类型。
- 报文族概览:ask --query "CIM报文有哪些" --page-size 100。依据目录讲主要用途;别把摘要截取的一句话当作完整规则,别额外展开全部报文。
以上命令通常加 --format brief。不必先check/meta,只有连接故障或能力不明才用。依据已足够就答;补查限于影响结论的具体缺口,不换词反复试探。只有相关分页has_more=true且属于用户所需范围才续页,保持page_size一致。
默认只给用户问到的解释
常规“解释这些报文”先给报文身份与关联、关键金额/状态、直接依据和必要疑点,通常控制在500~800字以内;输入很长不等于用户要求逐字段报告。用户明确要完整明细、完整样例或深入分析时再展开。涉及流程、多步骤等复杂场景的解释时,使用绘图表达。不要重复全量字段、归纳报头规律、追加风控/政策/经营建议或邀请新任务。每个额外推断都会增加耗时及误判机会。
brief输出中,field_groups按完整路径聚合定义,values保留每个原始值和occurrence序号;sources含规范正文,checks含精确数字复核。不要再写临时管道裁剪结果;sources[].content和answer可能因重复而省略。导出原样JSON时才用--format json。完整契约。
核对事实的规则
- 读warnings、field_coverage、specification、分页及knowledge/generation.status。complete只表示查询完成;不能声称已通过验签、XSD或全部业务规则校验。未匹配、查询失败、正文缺失不等于规范没有定义。
- 金额及区间用checks原值,单位数量看unit_count,每单位金额看unit_amount,禁止把票面金额当单位份数。按360天假设复算的每日利息看daily_interest_360;区分逐票舍入后合计与合计后舍入。DueDt和MatDt分别按各票统计,不把部分票日期套给全批。
- 出票人、承兑人、承兑人开户行、贴现行、持票人、资金收付款方分开,不合并角色。机构名称仅用当前机构表匹配结果,不从长度猜账号所属机构。
- 关联须核对MsgId/OrgnlMsgId、QuoteId、DealId、DlvOrderNo、票号等直接标识;不同票号或无共同标识的历史报文不合成一笔业务。不把事件步骤数当报文份数;字段缺失不能说成与别份“数值一致”。
- 区分受理、成交、结算和到账。FOP不能证明资金到账。CAS总张数加一个票号不等于应该有同样数量的通知,先查该业务的资产编号填写规则。没有完整历史不能断言未重发、已收全或已经全量闭环。
- 码值按code_type区分。来源标记parameter_values_are_examples=true时,展示码值必须同时注明“附录参数示例,实际启用值以正式下发为准”,不能只在内部看到标记后省略。报文属性按具体报文适用,不概括为所有上行都有确认或所有下行无需处理。
- 关键业务推断须有对应正文,目录与正文冲突就说明冲突,不擅自判定规范哪项正确。不从同银行机构关系推断内部定价或历史流转次数,不补充再贴现获批、政策支持或风险结论。只建议必要的核对,不操作报文或资金。不清理用户原文及本次解码文件。
连接与报错
默认生产地址https://deepfin.vip,默认免Key;其他授权部署由DEEPFIN_MESSAGE_API_BASE_URL配置。--with-knowledge/--with-model分别显式启用外部检索/解释,--local-only禁用;JSON显式设置保留原意。
JSON mode只能填auto/query/details/fields/decode/error/state/institution,不能填CLI名称ask/codes;检索开关是use_knowledge。先检查error再读结果。Windows Python路径用C:/...,不混用/c/...或/tmp/...。
AUTH_REQUIRED展示合法注册/登录链接,用户自行配置具备messages:read权限的DEEPFIN_MESSAGE_API_KEY;Key无效或权限不足就停止,不删Key、不换域名端口、不搜索.env、管理员JWT或历史凭据。连接地址在鉴权前后不变;客户端不自动重试模型请求或跟随重定向。连接配置。