diff --git a/compose/graph/two_model_chat/two_model_chat.go b/compose/graph/two_model_chat/two_model_chat.go index 97451f3..b15c1ac 100644 --- a/compose/graph/two_model_chat/two_model_chat.go +++ b/compose/graph/two_model_chat/two_model_chat.go @@ -75,16 +75,17 @@ func main() { _ = g.AddBranch("writer", compose.NewStreamGraphBranch(func(ctx context.Context, input *schema.StreamReader[*schema.Message]) (string, error) { input.Close() - s, err := compose.GetState[*state](ctx) - if err != nil { + next := "toList1" + if err = compose.ProcessState[*state](ctx, func(ctx context.Context, state *state) error { + if state.currentRound >= 3 { + next = compose.END + } + return nil + }); err != nil { return "", err } - if s.currentRound >= 3 { - return compose.END, nil - } - - return "toList1", nil + return next, nil }, map[string]bool{compose.END: true, "toList1": true})) _ = g.AddEdge("toList1", "critic") _ = g.AddEdge("critic", "toList2") diff --git a/go.mod b/go.mod index a3584d5..e1bf09c 100644 --- a/go.mod +++ b/go.mod @@ -6,14 +6,14 @@ toolchain go1.23.6 require ( github.com/bytedance/sonic v1.12.9 - github.com/cloudwego/eino v0.3.14 + github.com/cloudwego/eino v0.3.16 github.com/cloudwego/eino-ext/components/document/parser/html v0.0.0-20250117061805-cd80d1780d76 github.com/cloudwego/eino-ext/components/document/parser/pdf v0.0.0-20250117061805-cd80d1780d76 github.com/cloudwego/eino-ext/components/model/ark v0.1.0 github.com/cloudwego/eino-ext/components/model/deepseek v0.0.0-20250221090944-e8ef7aabbe10 github.com/cloudwego/eino-ext/components/model/ollama v0.0.0-20250221090944-e8ef7aabbe10 github.com/cloudwego/eino-ext/components/model/openai v0.0.0-20250221090944-e8ef7aabbe10 - github.com/cloudwego/eino-ext/components/retriever/volc_vikingdb v0.0.0-20250221090944-e8ef7aabbe10 + github.com/cloudwego/eino-ext/components/retriever/volc_vikingdb v0.0.0-20250319082935-6219ec437e56 github.com/cloudwego/eino-ext/components/tool/duckduckgo v0.0.0-20250221090944-e8ef7aabbe10 github.com/cloudwego/eino-ext/devops v0.1.3 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc diff --git a/go.sum b/go.sum index 99bf9ac..09d6f1b 100644 --- a/go.sum +++ b/go.sum @@ -104,8 +104,8 @@ github.com/clbanning/mxj v1.8.4/go.mod h1:BVjHeAH+rl9rs6f+QIpeRl0tfu10SXn1pUSa5P github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cloudwego/base64x v0.1.5 h1:XPciSp1xaq2VCSt6lF0phncD4koWyULpl5bUxbfCyP4= github.com/cloudwego/base64x v0.1.5/go.mod h1:0zlkT4Wn5C6NdauXdJRhSKRlJvmclQ1hhJgA0rcu/8w= -github.com/cloudwego/eino v0.3.14 h1:aq2LGR1zIEF0wyqIVMcmyhuLORifz6L6Mnmzof5nGqU= -github.com/cloudwego/eino v0.3.14/go.mod h1:+kmJimGEcKuSI6OKhet7kBedkm1WUZS3H1QRazxgWUo= +github.com/cloudwego/eino v0.3.16 h1:ASN8zISyoEdjEsPnIw5GazSHtbNY97NDthQ2B69yiZw= +github.com/cloudwego/eino v0.3.16/go.mod h1:+kmJimGEcKuSI6OKhet7kBedkm1WUZS3H1QRazxgWUo= github.com/cloudwego/eino-ext/components/document/parser/html v0.0.0-20250117061805-cd80d1780d76 h1:kK4f2kunb5xlc0XTkg6wkjy8Z/BDfJjWAVm9EOdRErg= github.com/cloudwego/eino-ext/components/document/parser/html v0.0.0-20250117061805-cd80d1780d76/go.mod h1:LWR+h0EfIELl/I1tDSVH0Tgx8j2gymxa174U1C8BNps= github.com/cloudwego/eino-ext/components/document/parser/pdf v0.0.0-20250117061805-cd80d1780d76 h1:GJ4OqxyBH8la8Gu4PhTHXZNZFmrtEIrrymkCEpJ7XZU= @@ -118,8 +118,8 @@ github.com/cloudwego/eino-ext/components/model/ollama v0.0.0-20250221090944-e8ef github.com/cloudwego/eino-ext/components/model/ollama v0.0.0-20250221090944-e8ef7aabbe10/go.mod h1:zjHos5yMjmbBIZunQ1PKD6aY7F3/QjQMBI8TkOFTNU0= github.com/cloudwego/eino-ext/components/model/openai v0.0.0-20250221090944-e8ef7aabbe10 h1:DJAInsXygJKCrkahR42QODKkq91nvQCTe60o3MnjsKs= github.com/cloudwego/eino-ext/components/model/openai v0.0.0-20250221090944-e8ef7aabbe10/go.mod h1:okkkchYXfoEkv5c0GlwhMdVjIshCzmN3DCcnbOWf7DQ= -github.com/cloudwego/eino-ext/components/retriever/volc_vikingdb v0.0.0-20250221090944-e8ef7aabbe10 h1:9FrhjrSykZDPsO7gsO2//0+Xqo9E9VM5s1Omz4/aaFY= -github.com/cloudwego/eino-ext/components/retriever/volc_vikingdb v0.0.0-20250221090944-e8ef7aabbe10/go.mod h1:Fo0UBvCoAvzHTKwgix6GZ4tdf0XCyaxX+fzDbc5l8Wk= +github.com/cloudwego/eino-ext/components/retriever/volc_vikingdb v0.0.0-20250319082935-6219ec437e56 h1:yL7nTthGoz35dh7RK9lazxDedGmSmlss8HrtXmd0O3Q= +github.com/cloudwego/eino-ext/components/retriever/volc_vikingdb v0.0.0-20250319082935-6219ec437e56/go.mod h1:OPQYefu4EWAUcP0HhtzJK+UjLtQc8T9YzmxcAwFf29o= github.com/cloudwego/eino-ext/components/tool/duckduckgo v0.0.0-20250221090944-e8ef7aabbe10 h1:pXKBHcBceNHNitPqgbg8tGXW5V6klGtXfWrPU8NiyjY= github.com/cloudwego/eino-ext/components/tool/duckduckgo v0.0.0-20250221090944-e8ef7aabbe10/go.mod h1:8t2iDlxewqX7/kx0LX1QMRh6Qx9D5un5Kl/XM06COQo= github.com/cloudwego/eino-ext/devops v0.1.3 h1:wLMyWhzDIGXCgdEcNUL/7WwzPkRrNJuHC/iMFMWAy2Y=