9 Commits (f7ed18dd7e169a66ebe3b585aa030cc3e0afc822)

Author SHA1 Message Date
shentong.martin f7ed18dd7e refactor: use tool package interrupt APIs instead of compose package
- approval_wrapper.go: use tool.GetInterruptState, tool.GetResumeContext, tool.StatefulInterrupt
- graphtool/graph_tool.go: use tool.GetInterruptState, tool.CompositeInterrupt
- Keep compose.ExtractInterruptInfo for checking graph execution errors
- Remove ToolCallID from ApprovalInfo (compose.GetToolCallID no longer used)

Change-Id: I7c9a7f73a0e0036ab384478d1ea6770ea0031c4b
4 months ago
shentong.martin f2f7dbb918 fix: remove redundant newline in fmt.Println
Change-Id: Ia8fa3750eca3880c500e2931c6b32b18069653cf
4 months ago
shentong.martin fb76b1c544 feat(graphtool): add InvokableGraphTool and StreamableGraphTool for wrapping compose types as tools
- Add graphtool package with InvokableGraphTool and StreamableGraphTool
- Support compose.Graph, compose.Chain, and compose.Workflow via Compilable interface
- Full interrupt/resume support with checkpoint persistence
- Add 4 examples demonstrating different use cases:
  - 1_chain_summarize: Document summarization with compose.Chain
  - 2_graph_research: Multi-source research with compose.Graph + streaming
  - 3_workflow_order: Order processing with compose.Workflow + approval
  - 4_nested_interrupt: Nested interrupts (outer approval + inner risk check)
- Update InvokableApprovableTool to support nested interrupts
- Add comprehensive README documentation for package and examples

Change-Id: Ia7cceebb9e25baf6ca4db25b36eddc74eec273cb
4 months ago
shentong.martin 25b11b1a40 feat: graph tool
Change-Id: Ic523afc41e82af04c578968cc2b535c4b76ce828
4 months ago
shentong.martin d35371e0af feat(adk): add input msg log to supervisor example
Change-Id: I5befb422a92466983d00d20f87c3dd9596e1f47f
5 months ago
shentong.martin 3ce08012fd chore: update approval example to be easier to understand
Change-Id: Ia999549cce2940aee6d2e1e57ad90c28d5d2f15f
6 months ago
shentongmartin d41b497bdc
feat: add common human-in-the-loop patterns (#125)
* feat: add approval human-in-the-loop pattern

Change-Id: I8217d0b92e5df954adfbae129f945a52d9367a08

* feat: add review-and-edit human-in-the-loop pattern

Change-Id: Ifebae102fe01c6b5c1239c56d4bde9b83f89ff45

* feat: add follow-up human-in-the-loop pattern

Change-Id: I79323759e03607496b411a7e6bd06a6eac18c986

* feat: change 'review-and-edit' to 'feedback-loop'

Change-Id: I6c0a94d97a745dce9badda5b73e895ea440076e4

* feat: re-add the review-and-edit pattern

Change-Id: If2058922c3e2428ab896c5f8c59d12de79ae2ae5

* fix(adk): improve review-and-edit tool call wrapper response

Change-Id: I22b30575551f3f9d9b10a65ce11bcc2a92199a0b

* docs: update command path with actual dir name

* chore: update to eino v0.7.0 release

Change-Id: Ie61a51f9d6dc0edbc1ddac973966740f2edf466b

---------

Co-authored-by: HaotianChen <chenhaotian16@huawei.com>
6 months ago
JqRrt 3a94b9ab0d
add cozeloop callback (#115) 8 months ago
IPender 528919187f
feat(adk): add eino adk examples (#114) 8 months ago