Documentation
¶
Overview ¶
Package blackboard 黑板(Blackboard)架构原语:共享状态板 + 多专家轮转读写。
与 Supervisor(eino adk prebuilt:中心调度员指派任务)不同,Blackboard 没有 调度员——每位专家自行观察黑板增量、判断与己相关则贡献条目;循环至无人再写 或达轮次上限。适用:多视角分析(多角色并行审阅同一材料、结论互相引用), 贡献顺序不可预知、无中心指派逻辑的场景。
并发语义:Board 线程安全;Convene 每轮串行调用各专家(专家内可自行并发)。
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Board ¶
type Board struct {
// contains filtered or unexported fields
}
Board 共享黑板(线程安全;内存态——持久化由调用方按 Entries 快照自行落库)。
func (*Board) EntriesAfter ¶
EntriesAfter 增量观察:返回 seq > after 的条目(专家"自上次读过之后"的新内容)。
type ConveneOptions ¶
type ConveneOptions struct {
// MaxRounds 轮次上限(默认 3;每轮所有专家依次观察一次)。
MaxRounds int
}
ConveneOptions 召集配置。
type ConveneResult ¶
type ConveneResult struct {
Rounds int // 实际轮数
Total int // 黑板条目总数
CurrentMax int64 // 当前最大 Seq(供调用方留痕)
}
ConveneResult 召集结果。
func Convene ¶
func Convene(ctx context.Context, b *Board, specialists []Specialist, opts *ConveneOptions) (*ConveneResult, error)
Convene 召集专家轮转协作:每轮按序让每位专家观察增量并可写入; 一整轮无人贡献(共识达成)或达 MaxRounds 停止。 Specialist.Name 须非空且全局唯一(构建期 fail-fast):观察游标按 Name 键控, 重名会共享游标(后执行者读到被同名者推进的 since,跳过的增量永不重看)。
Click to show internal directories.
Click to hide internal directories.