资讯动态

PA Agent 架构深潜:两阶段 Orchestrator 流水线与 JSON 校验自动重试机制完全解析

发布时间:2026/10/8 22:45:37 来源:尧图企业网站定制
PA Agent 架构深潜两阶段 Orchestrator 流水线与 JSON 校验自动重试机制完全解析【免费下载链接】PA_Agent项目地址: https://gitcode.com/gh_mirrors/pa/PA_AgentPA Agent 是一个面向主观交易者的AI K线分析辅助工具它的核心是一套两阶段 Orchestrator 流水线阶段一做市场诊断阶段二做交易决策中间由JSON 校验 自动重试机制兜底保证大模型输出的每一分结论都能被程序可靠地解析、校验和落盘。这篇文章带你从源码视角看懂这条流水线的完整运转逻辑。一、PA Agent 是做什么的PA Agent 从MT5 / TradingView / yfinance / AkShare等数据源读取真实 K 线不是截图识图把结构化 K 线数据与预计算特征送入大模型完成市场诊断 → 策略路由 → 交易决策的两阶段分析。它不连接券商、不执行下单只做决策辅助。上图PA Agent 所对接的交易数据源界面K 线数据是整条分析流水线的起点。二、两阶段 Orchestrator 流水线9 步全貌整条管道由 two_stage.py 中的TwoStageOrchestrator类编排submit()方法按固定步骤执行步骤动作说明1构建部分记录先建好含元信息的AnalysisRecord骨架任何时刻终止都能落盘2取消检查每阶段前、每次 API 调用后都检查CancelToken3预检数据闸门K 线数据不足时直接返回insufficient_data4-5阶段一组装诊断 Prompt → 调用大模型6校验阶段一 JSON失败则触发自动重试见下文7策略路由根据阶段一的detected_patterns标签挑选要加载的策略文件8经验库检索按周期位置/方向/形态加载历史经验条目9阶段二组装决策 Prompt → 调用大模型 → 校验 → 落盘完整记录两个设计亮点值得新手注意闸门短路若阶段一输出gate_result wait / unknown程序会跳过阶段二的模型调用直接由 decision_tree.py 短路生成等待结果——省 Token也更符合交易纪律。全链路落盘无论成功、校验失败、用户取消还是网络错误pending_writer.py 都会把 Prompt、原始响应、Token 用量完整写入记录方便复盘。策略路由标签驱动的文件加载阶段一的detected_patterns字段是英文标签如wedge、mtr、h1pattern_routing.py 路径下 pa_agent/ai/pattern_routing.py 中的判定表决定阶段二加载哪些策略文件例如识别到楔形就加载 文件14-楔形形态分析交易.txt、识别到 MTR 就叠加 文件25-主要趋势反转MTR.txt。这套标签 → 文件映射让提示词工程模块 prompt_engineering/ 中 20 多个策略文档按需注入而不是全量塞给模型。三、JSON 校验器5 类错误的精准分类大模型输出不可信这是所有 LLM 应用的通病。json_validator.py 将每次校验结果归入 5 个类别这个分类直接决定了后续是否重试类别含义是否可重试aJSON 语法错误✅ 最多 3 次b缺少必填字段✅ 最多 3 次c字段值/一致性违规枚举错误、类型不符⚠️ 仅格式类子集最多 1 次d正文为空或纯文字没有 JSON 结构✅ 最多 3 次e服务商错误配额/计费耗尽❌ 0 次校验器还很抗造会自动剥离json围栏、把中文弯引号还原成直引号、提取文本中第一个顶层{...}对象、修复字符串内的裸换行甚至能从思考区reasoning_content里捞回模型忘写进正文的 JSON。四、自动重试机制带防作弊的反馈循环这是整套架构中最精巧的部分核心在 validation_retry.py 的validate_with_retry()1. 校验失败 → 生成结构化反馈。retry_feedback.py 会把错误打包成一条中文 user 消息追加到对话里明确列出失败类型如缺少必填字段必须修正的字段清单最多 6 项禁止为通过校验而修改的字段如direction、order_type阶段一还附带程序计算的 K 线几何表防止模型编造 bar_type2. 重新调用 API循环直到通过或耗尽次数。重试次数由 settings.py 中的ValidationSettings控制retry_enabled总开关默认开、retry_max3格式类错误、retry_max_semantic1语义类错误、retry_stage2阶段二独立开关。3. 防作弊检测detect_cheat。这是防止模型为了过校验而篡改结论的关键防线retry_policy.py 定义了不可变字段——阶段一的direction、cycle_position等。若重试后这些字段变了值、且没有增量更新的合法依据如incremental_delta.changed_fields声明程序会判定为作弊直接以cheat:错误拒绝整条结果。换句话说格式可以改观点不能改。五、决策输出从 JSON 到决策树阶段二校验通过后最终 JSON 会包含订单类型限价/突破/市价/不下单、交易者方程、下一根 K 线预测等内容。程序端还配套了决策树可视化——赛博科幻风格的交互式流程图自动播放闸门 → 策略路径的动画演示上图PA Agent 的二元决策树演示图展示从无法决定/等待到趋势延续、区间交易、突破等策略路径的完整分支。另外网络层也有自己的重试_stream_chat_resilient()在遇到连接超时/重置时会按模型配置自动切换到备用网关WorkBuddy / TRAE Work CN / Cursor / QClaw再试一次让网络抖动不至于毁掉一次分析。六、如何验证这套机制项目自带了完善的测试矩阵可以边读源码边跑test_two_stage_happy_path.py两阶段完整成功路径test_two_stage_stage1_syntax.py阶段一语法错误触发重试test_validation_retry.py重试策略与防作弊逻辑单测test_gate_shortcircuit.py闸门短路行为写在最后PA Agent 的架构给所有 LLM 应用开发者上了三堂课先建骨架再填充部分记录随时可落盘、错误分类驱动重试策略5 类错误差异化处理、程序权威优先不可变字段防篡改。如果你想进一步了解界面操作可阅读 PA_Agent使用文档.md。免责声明本工具仅供学习与研究不构成投资建议。交易有风险决策后果自负。【免费下载链接】PA_Agent项目地址: https://gitcode.com/gh_mirrors/pa/PA_Agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑