Learn how to create AI agents with sequential prompt chaining for complex workflows.
A workflow where the output of one LLM call becomes the input for the next. This sequential design allows for structured reasoning and step-by-step task completion.
Set your OpenAI API key as an environment variable in your terminal:
Copy
export OPENAI_API_KEY=your_api_key_here
3
Create a file
Create a new file app.py with the basic setup:
Copy
from praisonaiagents import Agent, Task, PraisonAIAgentsimport timedef get_time_check(): current_time = int(time.time()) result = "even" if current_time % 2 == 0 else "odd" print(f"Time check: {current_time} is {result}") return result# Create agents for each step in the chainagent1 = Agent( name="Time Checker", role="Time checker", goal="Check if the time is even or odd", instructions="Check if the time is even or odd", tools=[get_time_check])agent2 = Agent( name="Advanced Analyzer", role="Advanced data analyzer", goal="Perform in-depth analysis of processed data", instructions="Analyze the processed data in detail")agent3 = Agent( name="Final Processor", role="Final data processor", goal="Generate final output based on analysis", instructions="Create final output based on analyzed data")# Create tasks for each stepinitial_task = Task( name="time_check", description="Getting time check and checking if it is even or odd", expected_output="Getting time check and checking if it is even or odd", agent=agent1, is_start=True, # Mark as the starting task task_type="decision", # This task will make a decision next_tasks=["advanced_analysis"], # Next task if condition passes condition={ "even": ["advanced_analysis"], # If passes, go to advanced analysis "odd": "" # If fails, exit the chain })analysis_task = Task( name="advanced_analysis", description="Perform advanced analysis on the processed data", expected_output="Analyzed data ready for final processing", agent=agent2, next_tasks=["final_processing"])final_task = Task( name="final_processing", description="Generate final output", expected_output="Final processed result", agent=agent3)# Create the workflow managerworkflow = PraisonAIAgents( agents=[agent1, agent2, agent3], tasks=[initial_task, analysis_task, final_task], process="workflow", # Use workflow process type verbose=True)# Run the workflowresults = workflow.start()# Print resultsprint("\nWorkflow Results:")for task_id, result in results["task_results"].items(): if result: print(f"Task {task_id}: {result.raw}")
4
Start Agents
Type this in your terminal to run your agents:
Copy
python app.py
Requirements
Python 3.10 or higher
OpenAI API key. Generate OpenAI API key here. Use Other models using this guide.