@shinyaz

サイクルがある Graph では set_entry_point が必須

Graph にフィードバックループ(reviewer → draft_writer の逆方向エッジ)を追加して build() したところ、いきなり ValueError が出た。

Output
ValueError: No entry points found - all nodes have dependencies

DAG(非循環グラフ)では問題なく動いていたのに、サイクルを追加した途端にエラーになる。GraphBuilder.build() の自動エントリポイント検出は「入力エッジがないノード」を探す仕組みだが、サイクルがあると全ノードに入力エッジが存在するため、検出に失敗する。

builder.set_entry_point("draft_writer") で明示的に指定すれば解決する。サイクルがある Graph では、これに加えて set_max_node_executions(無限ループ防止)と reset_on_revisit(True)(再訪問時の状態リセット)も必須だ。この 3 つをセットで覚えておくとよい。

共有する

田原 慎也

田原 慎也

ソリューションアーキテクト @ AWS

AWS ソリューションアーキテクトとして金融業界のお客様を中心に技術支援をしており、クラウドアーキテクチャや AI/ML に関する学びをこのサイトで発信しています。このサイトの内容は個人の見解であり、所属企業の公式な意見や見解を代表するものではありません。