3bea1c3d2b
Extracted from: https://github.com/jwwelbor/AgentMap.git Score: 1.0
3.9 KiB
3.9 KiB
name, version, description, inputs, steps, outputs, tags, metadata
| name | version | description | inputs | steps | outputs | tags | metadata | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| branching-agent-pattern | 1.0.0 | Define and execute AI agent workflows using CSV-based declarative definitions with configurable branching logic |
|
|
|
|
branching-agent-pattern
Define and execute AI agent workflows using CSV-based declarative definitions with configurable branching logic
Setup
Dependencies:
pip install langgraph>=1.0.0 langchain-core>=0.3.0 pyyaml>=6.0.0 fastapi>=0.111.0 uvicorn>=0.34.3
Setup steps:
- Install AgentMap: pip install agentmap[all]
- Configure llm providers in agentmap_config.yaml (OpenAI, Anthropic, Google models)
- Create CSV workflow files with graph definitions
- Initialize runtime with ensure_initialized()
- Run workflow with agentmap run <csv_file> --pretty
Key Files
agentmap_config.yaml - Main configuration with LLM and storage settingsagentmap_config_storage.yaml - Storage backend configurationhello_world.csv - Sample workflow demonstrating basic agent chainexamples/host_integration/custom_agents.py - Custom agent implementations with host service integration
Steps
- Define workflow graph in CSV with nodes representing agent steps and their connections (next_node, on_failure)
- Configure BranchingAgent with customizable success/failure values and fallback fields in the context dictionary
- Initialize the agent runtime with ensure_initialized() and configure execution tracking and state adapter services
- Execute the workflow using agentmap run with appropriate inputs and monitor the execution trace
Implementation Details
CSV format: graph_name,node_name,agent_type,next_node,on_failure,prompt,input_fields,output_field
BranchingAgent context example: {'input_fields': ['success'], 'output_field': 'result', 'success_values': ['PASSED', 'COMPLETED']}
Execution command: agentmap run hello_world.csv --pretty
Inputs
- CSV workflow files defining agent graphs with columns: graph_name, node_name, agent_type, next_node, on_failure, prompt, input_fields, output_field
- LLM provider configuration (OpenAI, Anthropic, Google) in agentmap_config.yaml
- Storage backend configuration in agentmap_config_storage.yaml
Outputs
- Executed workflow with results stored in the specified output_field
- Detailed execution trace showing success/failure decisions at each branching point
- Updated workflow state persisted in the configured storage backend
Failure Modes
- Invalid CSV format causing parsing errors during workflow loading
- Missing or misconfigured LLM provider settings leading to execution failures
- Storage backend unavailable or misconfigured preventing workflow persistence
- Agent execution timeout due to long-running operations or infinite loops
Source
Extracted from: https://github.com/jwwelbor/AgentMap.git Confidence: 0.95