vault backup: 2026-06-03 10:30:42
This commit is contained in:
+27
-7
@@ -1,6 +1,17 @@
|
||||
# 05 - 生成管线 (Generation Pipeline)
|
||||
---
|
||||
tags: [pipeline, eino, graph-pattern, quality-check, fallback, state-machine, go]
|
||||
create time: 2026-06-03 10:20
|
||||
---
|
||||
|
||||
> **一句话概括**:基于 CloudWeGo Eino 的 4 阶段生成管线,带质量回退和降级,确保任务不阻塞。
|
||||
# 05. 生成管线 (Generation Pipeline)
|
||||
|
||||
## 概述
|
||||
|
||||
基于 CloudWeGo Eino 的 4 阶段生成管线,带质量回退和降级,确保任务不阻塞。
|
||||
|
||||
---
|
||||
|
||||
## 正文
|
||||
|
||||
## 管线拓扑
|
||||
|
||||
@@ -161,6 +172,15 @@ if imgCfg.APIKey == "" {
|
||||
4. pass=false + RetryCount >= 3 → NextNode = "format_adapter"(降级)
|
||||
```
|
||||
|
||||
> [!tip] 重试策略思考
|
||||
>
|
||||
> **为什么是 3 次?**
|
||||
> - 第 1 次失败:LLM API 波动或偶发噪声,重试大概率通过
|
||||
> - 第 2 次失败:提示词可能不够精确,重新优化后改善
|
||||
> - 第 3 次仍失败:当前参数组合确实无法生成合格图片,继续重试只会浪费资源
|
||||
>
|
||||
> 超过 3 次后 **降级到 FormatAdapter**——即使结果不完美,也比永远阻塞管线要好。这就是「宁可降级,不可阻塞」的原则。
|
||||
|
||||
**路由分支**(Eino `AddBranch`):
|
||||
|
||||
```go
|
||||
@@ -185,7 +205,7 @@ g.AddBranch(nodeQualitySupervisor, compose.NewGraphBranch(
|
||||
| `NewCountedQualityChecker(n)` | 第 n 次调用后通过 | 测试重试逻辑 |
|
||||
| `AlwaysFailQualityChecker` | 始终返回 `false` | 测试降级路径 |
|
||||
|
||||
> :bulb: **可扩展性**:`QualityChecker` 是一个可替换的函数变量,未来可接入 LLM 视觉模型进行真正的质量评估。
|
||||
> [!tip] 可扩展性:`QualityChecker` 是一个可替换的函数变量,未来可接入 LLM 视觉模型进行真正的质量评估。
|
||||
|
||||
### 4. FormatAdapter — 格式适配
|
||||
|
||||
@@ -318,7 +338,7 @@ type PipelineInput struct {
|
||||
|
||||
## 关联文档
|
||||
|
||||
- [索引](00-index.md) — 文档导航与架构总览图
|
||||
- [系统总览](01-system-overview.md) — 分层架构与 Service 层定位
|
||||
- [协程池](02-worker-pool.md) — 管线执行的并发控制
|
||||
- [任务队列](03-task-queue.md) — 管线任务的排队机制
|
||||
- [[00-索引]] — 文档导航与架构总览图
|
||||
- [[01-系统总览]] — 分层架构与 Service 层定位
|
||||
- [[02-协程池]] — 管线执行的并发控制
|
||||
- [[03-任务队列]] — 管线任务的排队机制
|
||||
|
||||
Reference in New Issue
Block a user