返回 ppt-master
06_tool_orchestration.svg
根目录 / examples / ppt169_glassmorphism_demo / svg_output / 06_tool_orchestration.svg
1 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 720" width="1280" height="720">
2 <defs>
3 <linearGradient id="titleGradient" x1="0%" y1="0%" x2="100%" y2="0%">
4 <stop offset="0%" stop-color="#5B8DEF"/>
5 <stop offset="50%" stop-color="#A26BFA"/>
6 <stop offset="100%" stop-color="#3DDDFC"/>
7 </linearGradient>
8 <linearGradient id="bgOverlay" x1="0%" y1="0%" x2="0%" y2="100%">
9 <stop offset="0%" stop-color="#0A0E27" stop-opacity="0.62"/>
10 <stop offset="100%" stop-color="#0A0E27" stop-opacity="0.78"/>
11 </linearGradient>
12 <linearGradient id="stepGlass" x1="0%" y1="0%" x2="0%" y2="100%">
13 <stop offset="0%" stop-color="#1A2150" stop-opacity="0.78"/>
14 <stop offset="100%" stop-color="#1A2150" stop-opacity="0.4"/>
15 </linearGradient>
16 <linearGradient id="stepHi" x1="0%" y1="0%" x2="100%" y2="100%">
17 <stop offset="0%" stop-color="#5B8DEF" stop-opacity="0.65"/>
18 <stop offset="100%" stop-color="#A26BFA" stop-opacity="0.45"/>
19 </linearGradient>
20 <linearGradient id="flowLine" x1="0%" y1="0%" x2="100%" y2="0%">
21 <stop offset="0%" stop-color="#5B8DEF" stop-opacity="0"/>
22 <stop offset="10%" stop-color="#5B8DEF" stop-opacity="0.7"/>
23 <stop offset="50%" stop-color="#A26BFA" stop-opacity="0.7"/>
24 <stop offset="90%" stop-color="#3DDDFC" stop-opacity="0.7"/>
25 <stop offset="100%" stop-color="#3DDDFC" stop-opacity="0"/>
26 </linearGradient>
27 <linearGradient id="glassEdge" x1="0%" y1="0%" x2="100%" y2="0%">
28 <stop offset="0%" stop-color="#FFFFFF" stop-opacity="0"/>
29 <stop offset="50%" stop-color="#FFFFFF" stop-opacity="0.32"/>
30 <stop offset="100%" stop-color="#FFFFFF" stop-opacity="0"/>
31 </linearGradient>
32 <marker id="flowArrow" markerWidth="10" markerHeight="10" refX="9" refY="5" orient="auto">
33 <path d="M 0 1 L 9 5 L 0 9 Z" fill="#3DDDFC"/>
34 </marker>
35 </defs>
36
37 <g id="bg">
38 <rect width="1280" height="720" fill="#0A0E27"/>
39 <image href="../images/06_pipeline_flow.png" x="0" y="0" width="1280" height="720" preserveAspectRatio="xMidYMid slice"/>
40 <rect x="0" y="0" width="1280" height="720" fill="url(#bgOverlay)"/>
41 </g>
42
43 <g id="header">
44 <rect x="60" y="50" width="6" height="32" rx="3" fill="url(#titleGradient)"/>
45 <text x="80" y="76" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="34" font-weight="900" fill="#E8ECFF">让工具调用从"能跑"到"稳跑"</text>
46 <text x="80" y="108" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="600" fill="#A8B0D0" letter-spacing="3">TOOL ORCHESTRATION · A SIX-STEP DISCIPLINE</text>
47 </g>
48
49 <g id="flow-axis">
50 <line x1="60" y1="200" x2="1220" y2="200" stroke="url(#flowLine)" stroke-width="2" stroke-dasharray="6 6"/>
51 </g>
52
53 <g id="step-1">
54 <circle cx="145" cy="200" r="22" fill="#0A0E27" stroke="#5B8DEF" stroke-width="2"/>
55 <text x="145" y="207" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="900" fill="#5B8DEF" text-anchor="middle">01</text>
56 <rect x="60" y="244" width="170" height="356" rx="16" fill="url(#stepGlass)" stroke="#FFFFFF" stroke-opacity="0.14" stroke-width="1"/>
57 <rect x="78" y="245" width="134" height="1" fill="url(#glassEdge)"/>
58 <use data-icon="phosphor-duotone/magnifying-glass" x="125" y="270" width="40" height="40" fill="#5B8DEF"/>
59 <text x="145" y="346" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="18" font-weight="900" fill="#E8ECFF" text-anchor="middle">解析任务</text>
60 <line x1="92" y1="368" x2="198" y2="368" stroke="#FFFFFF" stroke-opacity="0.16"/>
61 <text x="145" y="404" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">拆解用户意图</text>
62 <text x="145" y="425" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">明确目标和约束</text>
63 <text x="145" y="475" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">输出:</text>
64 <text x="145" y="498" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="700" fill="#3DDDFC" text-anchor="middle">subtasks[]</text>
65 <rect x="80" y="560" width="130" height="24" rx="12" fill="#5B8DEF" fill-opacity="0.2" stroke="#5B8DEF" stroke-opacity="0.5" stroke-width="1"/>
66 <text x="145" y="577" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="11" font-weight="700" fill="#5B8DEF" text-anchor="middle" letter-spacing="2">PLAN</text>
67 </g>
68
69 <g id="step-2">
70 <circle cx="343" cy="200" r="22" fill="#0A0E27" stroke="#5B8DEF" stroke-width="2"/>
71 <text x="343" y="207" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="900" fill="#5B8DEF" text-anchor="middle">02</text>
72 <rect x="258" y="244" width="170" height="356" rx="16" fill="url(#stepGlass)" stroke="#FFFFFF" stroke-opacity="0.14" stroke-width="1"/>
73 <rect x="276" y="245" width="134" height="1" fill="url(#glassEdge)"/>
74 <use data-icon="phosphor-duotone/target" x="323" y="270" width="40" height="40" fill="#5B8DEF"/>
75 <text x="343" y="346" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="18" font-weight="900" fill="#E8ECFF" text-anchor="middle">选择工具</text>
76 <line x1="290" y1="368" x2="396" y2="368" stroke="#FFFFFF" stroke-opacity="0.16"/>
77 <text x="343" y="404" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">schema 匹配</text>
78 <text x="343" y="425" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">描述向量检索</text>
79 <text x="343" y="475" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">输出:</text>
80 <text x="343" y="498" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="700" fill="#3DDDFC" text-anchor="middle">tool + args</text>
81 <rect x="278" y="560" width="130" height="24" rx="12" fill="#5B8DEF" fill-opacity="0.2" stroke="#5B8DEF" stroke-opacity="0.5" stroke-width="1"/>
82 <text x="343" y="577" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="11" font-weight="700" fill="#5B8DEF" text-anchor="middle" letter-spacing="2">SELECT</text>
83 </g>
84
85 <g id="step-3">
86 <circle cx="541" cy="200" r="22" fill="#0A0E27" stroke="#A26BFA" stroke-width="2"/>
87 <text x="541" y="207" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="900" fill="#A26BFA" text-anchor="middle">03</text>
88 <rect x="456" y="244" width="170" height="356" rx="16" fill="url(#stepGlass)" stroke="#FFFFFF" stroke-opacity="0.14" stroke-width="1"/>
89 <rect x="474" y="245" width="134" height="1" fill="url(#glassEdge)"/>
90 <use data-icon="phosphor-duotone/plug" x="521" y="270" width="40" height="40" fill="#A26BFA"/>
91 <text x="541" y="346" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="18" font-weight="900" fill="#E8ECFF" text-anchor="middle">调用执行</text>
92 <line x1="488" y1="368" x2="594" y2="368" stroke="#FFFFFF" stroke-opacity="0.16"/>
93 <text x="541" y="404" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">超时控制</text>
94 <text x="541" y="425" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">幂等 key</text>
95 <text x="541" y="475" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">输出:</text>
96 <text x="541" y="498" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="700" fill="#3DDDFC" text-anchor="middle">raw_result</text>
97 <rect x="476" y="560" width="130" height="24" rx="12" fill="#A26BFA" fill-opacity="0.2" stroke="#A26BFA" stroke-opacity="0.5" stroke-width="1"/>
98 <text x="541" y="577" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="11" font-weight="700" fill="#A26BFA" text-anchor="middle" letter-spacing="2">EXECUTE</text>
99 </g>
100
101 <g id="step-4">
102 <circle cx="739" cy="200" r="22" fill="#0A0E27" stroke="#A26BFA" stroke-width="2"/>
103 <text x="739" y="207" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="900" fill="#A26BFA" text-anchor="middle">04</text>
104 <rect x="654" y="244" width="170" height="356" rx="16" fill="url(#stepGlass)" stroke="#FFFFFF" stroke-opacity="0.14" stroke-width="1"/>
105 <rect x="672" y="245" width="134" height="1" fill="url(#glassEdge)"/>
106 <use data-icon="phosphor-duotone/check-circle" x="719" y="270" width="40" height="40" fill="#A26BFA"/>
107 <text x="739" y="346" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="18" font-weight="900" fill="#E8ECFF" text-anchor="middle">验证返回</text>
108 <line x1="686" y1="368" x2="792" y2="368" stroke="#FFFFFF" stroke-opacity="0.16"/>
109 <text x="739" y="404" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">JSON schema</text>
110 <text x="739" y="425" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">业务规则</text>
111 <text x="739" y="475" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">输出:</text>
112 <text x="739" y="498" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="700" fill="#3DDDFC" text-anchor="middle">valid / fail</text>
113 <rect x="674" y="560" width="130" height="24" rx="12" fill="#A26BFA" fill-opacity="0.2" stroke="#A26BFA" stroke-opacity="0.5" stroke-width="1"/>
114 <text x="739" y="577" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="11" font-weight="700" fill="#A26BFA" text-anchor="middle" letter-spacing="2">VALIDATE</text>
115 </g>
116
117 <g id="step-5">
118 <circle cx="937" cy="200" r="22" fill="#0A0E27" stroke="#3DDDFC" stroke-width="2"/>
119 <text x="937" y="207" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="900" fill="#3DDDFC" text-anchor="middle">05</text>
120 <rect x="852" y="244" width="170" height="356" rx="16" fill="url(#stepGlass)" stroke="#FFFFFF" stroke-opacity="0.14" stroke-width="1"/>
121 <rect x="870" y="245" width="134" height="1" fill="url(#glassEdge)"/>
122 <use data-icon="phosphor-duotone/arrows-clockwise" x="917" y="270" width="40" height="40" fill="#3DDDFC"/>
123 <text x="937" y="346" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="18" font-weight="900" fill="#E8ECFF" text-anchor="middle">重试回退</text>
124 <line x1="884" y1="368" x2="990" y2="368" stroke="#FFFFFF" stroke-opacity="0.16"/>
125 <text x="937" y="404" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">指数退避</text>
126 <text x="937" y="425" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">降级路径</text>
127 <text x="937" y="475" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#A8B0D0" text-anchor="middle">输出:</text>
128 <text x="937" y="498" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="700" fill="#3DDDFC" text-anchor="middle">retry / fallback</text>
129 <rect x="872" y="560" width="130" height="24" rx="12" fill="#3DDDFC" fill-opacity="0.2" stroke="#3DDDFC" stroke-opacity="0.5" stroke-width="1"/>
130 <text x="937" y="577" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="11" font-weight="700" fill="#3DDDFC" text-anchor="middle" letter-spacing="2">RECOVER</text>
131 </g>
132
133 <g id="step-6">
134 <circle cx="1135" cy="200" r="22" fill="#0A0E27" stroke="#4ADE80" stroke-width="2"/>
135 <text x="1135" y="207" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="900" fill="#4ADE80" text-anchor="middle">06</text>
136 <rect x="1050" y="244" width="170" height="356" rx="16" fill="url(#stepHi)" stroke="#4ADE80" stroke-opacity="0.55" stroke-width="1"/>
137 <rect x="1068" y="245" width="134" height="1" fill="url(#glassEdge)"/>
138 <use data-icon="phosphor-duotone/stack" x="1115" y="270" width="40" height="40" fill="#4ADE80"/>
139 <text x="1135" y="346" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="18" font-weight="900" fill="#FFFFFF" text-anchor="middle">结果汇总</text>
140 <line x1="1082" y1="368" x2="1188" y2="368" stroke="#FFFFFF" stroke-opacity="0.18"/>
141 <text x="1135" y="404" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#E8ECFF" text-anchor="middle">多轮聚合</text>
142 <text x="1135" y="425" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#E8ECFF" text-anchor="middle">引用与可解释化</text>
143 <text x="1135" y="475" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="400" fill="#E8ECFF" text-anchor="middle">输出:</text>
144 <text x="1135" y="498" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="14" font-weight="700" fill="#4ADE80" text-anchor="middle">final answer</text>
145 <rect x="1070" y="560" width="130" height="24" rx="12" fill="#4ADE80" fill-opacity="0.25" stroke="#4ADE80" stroke-opacity="0.7" stroke-width="1"/>
146 <text x="1135" y="577" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="11" font-weight="700" fill="#4ADE80" text-anchor="middle" letter-spacing="2">DELIVER</text>
147 </g>
148
149 <g id="footer">
150 <text x="60" y="694" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="600" fill="#6B7299">每步都可观测 · 每步都有回退</text>
151 <text x="1220" y="694" font-family="&quot;Microsoft YaHei&quot;, &quot;PingFang SC&quot;, sans-serif" font-size="13" font-weight="600" fill="#6B7299" text-anchor="end">06 / 12</text>
152 </g>
153 </svg>
154
154 lines Plain Text