Solidway v0.1.0 已以 AGPL-3.0 发布,源码与 Releases 在 GitHub 上。文档正在按发布版本重写:除「快速开始」与「参考」外,其余页面仍在描述计划中的行为。当前权威说明见仓库内的 docs/getting-started.md 与 docs/architecture.md。
选号策略
轮询、可用性、延迟与加权选号——各自优化什么。
选号决定由哪条凭据服务本次请求。它在每个请求上运行,范围是路由池里当时健康的凭据。
策略
| 策略 | 做什么 |
|---|---|
| 轮询(默认) | 在健康凭据间按顺序轮转。可预测,也是引入策略之前的行为。 |
| 可用性优先 | 偏好观测成功率最高的凭据,权重由可用性信号主导。 |
| 首字节优先 | 偏好观测首字节延迟最低的凭据,权重由延迟信号主导。 |
| 综合加权 | 可用性、延迟、价格与吞吐的加权混合,并按比例随机探索。 |
策略按路由设置,位置在「路由 → 选号」。
权重与阈值
加权策略暴露四个权重与四个阈值,可按路由修改,未修改时使用按策略的默认值:
| 权重 | 信号 |
|---|---|
uptime |
观测成功率 |
latency |
观测首字节延迟 |
price |
按 token 的价格(凭据声明时) |
throughput |
观测吞吐(tokens/秒) |
| 阈值 | 含义 |
|---|---|
uptime_penalty |
失败凭据被惩罚的强度 |
default_uptime |
还没有样本时的起始值 |
default_latency_ms |
同上,用于延迟 |
exploration_rate |
由随机探索分配出去的请求比例 |
如果权重解析后全为 0,数据面回退到轮询。
为什么不总是挑最好的
选号是概率式的,不是贪心的。刚恢复的凭据会保留一小部分流量,网关因此能发现它已经恢复,而不是永远跳过它。 探索率控制这部分流量的大小。
会话粘性
粘性把一段对话固定在同一个凭据上,TTL 可配置且滑动续期。健康优先:冷却中或已退役的凭据即使被粘性指向也会 被跳过,映射会重新指向实际服务的凭据。
控制台
路由页展示每条凭据的配置优先级、实时健康状态与选号快照(可用性、延迟、评分)。快照来自周期性刷新的缓存, 所以选号在热路径上没有额外计算。
选号永远不会做的事
不检查提示词内容。决策只基于观测行为、配置权重与健康状态。