Skip to content

Add support for agentic workflow optimization and cost-aware model routing #28

@aanshshah

Description

@aanshshah

Feature Request: Agentic workflow optimization support

Problem

Current optimization targets single prompts, but modern LLM apps use multi-step agent workflows. These have different challenges:

  • Agents make 10-100x more API calls than single prompts
  • Need to optimize entire workflows, not just individual steps
  • Different models work better for different workflow steps
  • Hard to evaluate multi-step success vs. individual responses

Proposed Solution

Add workflow optimization that can optimize multi-step agent pipelines with cost-aware model routing.

Basic Usage

# Define multi-step workflow
workflow = AgentWorkflow([
    PlanningStep(models=["nova-pro", "claude-sonnet"]),
    ReasoningStep(models=["claude-sonnet", "gpt-4o"]),
    ToolCallingStep(models=["gpt-4o", "nova-lite"]),
    SynthesisStep(models=["nova-pro"])
])

# Optimize entire workflow
optimizer = WorkflowOptimizer(
    workflow=workflow,
    cost_budget=50.0,
    metric=workflow_success_metric
)

optimized_workflow = optimizer.optimize(dataset, metric)

Cost-Aware Model Routing

# Automatically route based on task complexity and cost
router = CostAwareRouter({
    "simple_tasks": "nova-lite",      # $0.0006/1k tokens
    "reasoning": "claude-sonnet",     # $0.003/1k tokens  
    "complex_coding": "gpt-4o"        # $0.005/1k tokens
})

workflow.add_router(router)

Key Features Needed

  • Workflow adapter: Execute and track multi-step workflows
  • Step-level optimization: Optimize prompts for each workflow step
  • Model routing: Assign optimal models to different steps
  • Workflow metrics: Evaluate entire pipeline success
  • Cost tracking: Monitor costs across all workflow steps
  • Context management: Optimize data passing between steps

Example Use Cases

Research Agent: Search (nova-lite) → Analysis (claude-sonnet) → Synthesis (nova-pro)
Coding Agent: Planning (claude-sonnet) → Implementation (gpt-4o) → Testing (nova-pro)
Support Agent: Classification (nova-lite) → Retrieval (nova-pro) → Response (claude-sonnet)

Why This Matters

  1. Agent workflows are becoming standard - single prompts are less common/for prototypes
  2. Cost explosion problem - agents can easily burn through budgets
  3. No existing tools optimize multi-step workflows end-to-end
  4. Model specialization - different models excel at different workflow steps

Consider

  • Extend existing PromptAdapter to support workflow definitions
  • Add WorkflowOptimizer that uses MIPROv2 across multiple steps
  • Create workflow-specific metrics and evaluation methods
  • Add cost tracking and budget allocation across steps

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions