深色
风格
视觉表达
S 循环切换
经典
稳定的技术默认风格
信号流
突出动态流向
蓝图
工程评审
编辑风格
适合发布与上线说明
动态
演示
导出
导出图表
便携、整洁的输出
E
分享
分享卡片
1200×630 PNG
路径分享卡片
1200×630 PNG
可达范围分享卡片
1200×630 PNG
复制分享卡片
复制 PNG 到剪贴板
复制图表
复制 PNG 到剪贴板
图像
PNG
无损图像
JPEG
紧凑图像
WebP
现代图像格式
矢量与动效
SVG
可编辑矢量图
WebM
6 秒动效
HTTP 出站链:Configuration → SPI 装配 → 拦截器 → Provider
←
引导视图
探索此系统
沿精选路径逐步查看,而不改变源图表。
节点
下一步
→
▶
播放故事
#
复制此刻
显示全部
HTTP 出站链:Configuration → SPI 装配 → 拦截器 → Provider
由 Archify 生成的时序图。
① getOkHttpClient() / createRequestFactory()
② SPI 覆盖 Pool/Dispatcher + 挂拦截器
③ Request.Builder → newCall().execute()
④ ContentType→Error→Logging 依次过链
⑤ HTTPS 请求(鉴权头+JSON 体)
⑥ 200 JSON 体 / 非 2xx
⑦ mapper.readValue → 响应实体
⑧ 非 2xx → HttpErrorDecoder → AiHttpException
⑨ 流式:factory.newEventSource(req, sseListener)
⑩ data: 帧 → onEvent 增量 ×N → 收尾
服务实现 · 如 OpenAiChatService · 时序参与者
服务实现
如 OpenAiChatService
Configuration · client+SPI 装配 · 时序参与者
Configuration
client+SPI 装配
OkHttpClient · 连接池/调度器 · 时序参与者
OkHttpClient
连接池/调度器
拦截器链 · ContentType/Error · 时序参与者
拦截器链
ContentType/Error
Provider · JSON / SSE 帧 · 时序参与者
Provider
JSON / SSE 帧
SseListener · 逐帧回调 · 时序参与者
SseListener
逐帧回调
图例
默认消息
就绪
章节 01 / 01
引导章节
图表指南
探索此系统
×
正在检查已编译语义
01
查找任意节点
搜索标签、职责、类型和稳定 ID。
/
02
追踪路径
查看两个语义节点如何按编写方向连接。
R
03
查看完整系统
打开带实时视口和稳定节点的语义雷达。
M
04
比较语义类型
统计角色、显示流量并比较直接编写的连接。
L
05
播放引导故事
浏览已编写的章节和真实关系。
P
06
进入演示模式
让实时图表占满视口,同时不改变导出。
F
E
导出
T
主题
S
风格
0
重置
+
放大
-
缩小
Esc
关闭
查找节点
×
⌕
/
没有匹配的节点
语义护照
已验证来源
编写可达范围
上游
0
下游
0
×
复制链接
关系
路径探测
选择起点节点
查找起点
复制链接
清除
在图表中选择两个语义节点
←
▶
旅程
→
总览
先选择来源,再选择目标;方向很重要。
语义透镜
比较系统角色
×
最多选择两种语义类型。选择一种可显示其真实流量;选择两种只比较直接编写的关系。
选择一种类型以检查其节点和相连关系。
复制链接
清除
语义雷达
正在构建总览
打开雷达
×
点击节点
拖动平移
语义雷达需要更多地图可见空间。
路径
地图
透镜
阅读
100%
统一客户端底座
• Configuration 内置 OkHttpClient(连接 10s / 读 300s / 写 60s);可整体替换,也可注入 OkHttpConfig 日志级别
• createRequestFactory() 把同一 client 包成 EventSource.Factory,供 SSE 流式复用
SPI 扩展点
• META-INF/services 注册 ConnectionPoolProvider / DispatcherProvider 即可替换连接池与调度器
• ContentType/ErrorInterceptor 是 OkHttp Interceptor:可在自定义 client 上按顺序挂载
错误与流式出口
• 非 2xx 统一 HttpErrorDecoder.decode → AiHttpException;所有平台服务共用此出口
• 流式经 StreamExecutionSupport.execute:首帧/空闲超时、可配重试(ai4j.stream.* 属性),SseListener 回调增量与收尾