Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a sequential chain in AI workflows?
A sequential chain is a series of steps where the output of one step becomes the input of the next, like passing a message along a line.
Click to reveal answer
beginner
How does a router chain decide which path to take?
A router chain looks at the input and chooses the best path or model to handle it, like a traffic controller directing cars to different roads.
Click to reveal answer
intermediate
Why use chains in AI model design?
Chains help break complex tasks into smaller steps or routes, making AI easier to manage and more flexible, like following a recipe step-by-step.
Click to reveal answer
intermediate
What is the main difference between sequential and router chains?
Sequential chains run steps one after another in order, while router chains pick one path from many based on the input.
Click to reveal answer
beginner
Give a simple example of a sequential chain in AI.
An example is first cleaning text, then translating it, then summarizing it, where each step uses the previous step's output.
Click to reveal answer
What does a sequential chain do in AI?
ARuns steps one after another using previous outputs
BRandomly selects a model to run
CRuns all models at the same time
DIgnores input and outputs fixed results
✗ Incorrect
Sequential chains process steps in order, passing outputs forward.
How does a router chain choose a path?
ARuns all paths simultaneously
BAlways chooses the first path
CBased on input characteristics
DChooses randomly
✗ Incorrect
Router chains analyze input to pick the best path.
Which chain type is best for step-by-step tasks?
ARouter chain
BSequential chain
CRandom chain
DParallel chain
✗ Incorrect
Sequential chains are designed for ordered steps.
What is a key benefit of using chains in AI?
AMakes AI slower
BAlways improves accuracy
CRemoves the need for data
DSimplifies complex tasks by breaking them down
✗ Incorrect
Chains help manage complexity by dividing tasks.
In a router chain, what happens if input doesn't match any path?
AThe chain picks a default path
BThe chain crashes
CThe chain ignores the input
DThe chain runs all paths
✗ Incorrect
Router chains usually have a default path for unmatched inputs.
Explain how sequential and router chains differ and give an example of when to use each.
Think about a line of tasks versus a traffic controller.
You got /4 concepts.
Describe why chains are useful in AI workflows and how they improve task handling.
Consider how recipes or directions help in cooking or traveling.
You got /4 concepts.
Practice
(1/5)
1. What is the main purpose of a sequential chain in GenAI?
easy
A. To run all AI steps at the same time
B. To randomly select one AI step to run
C. To run multiple AI steps one after another in order
D. To stop the AI process after the first step
Solution
Step 1: Understand sequential chain behavior
A sequential chain connects AI steps so they run one after another, passing output from one to the next.
Step 2: Compare options to definition
Only To run multiple AI steps one after another in order describes running steps in order, matching the sequential chain purpose.
Final Answer:
To run multiple AI steps one after another in order -> Option C
Quick Check:
Sequential chain = run steps in order [OK]
Hint: Sequential means steps run one after another [OK]
Common Mistakes:
Thinking sequential means random step selection
Confusing sequential with parallel execution
Assuming sequential chains stop early
2. Which of the following is the correct way to define a router chain in GenAI?
easy
A. router = SequentialChain(steps=[step1, step2])
B. router = RouterChain(steps=[step1, step2], router_function=choose_step)
C. router = RouterChain(steps=step1, step2)
D. router = ChainRouter(steps=[step1, step2])
Solution
Step 1: Recall router chain syntax
A router chain requires a list of steps and a router function to decide which step to run.
Step 2: Check each option's syntax
router = RouterChain(steps=[step1, step2], router_function=choose_step) correctly uses RouterChain with steps list and router_function parameter. Others have wrong class names or syntax.
Final Answer:
router = RouterChain(steps=[step1, step2], router_function=choose_step) -> Option B
Quick Check:
RouterChain needs steps list and router_function [OK]
Hint: RouterChain needs steps list and router_function param [OK]
Common Mistakes:
Using SequentialChain instead of RouterChain
Passing steps without brackets as list
Using wrong class names like ChainRouter
3. Given the code below, what will be the output?
def router_func(input_text):
if 'weather' in input_text.lower():
return 'weather_step'
else:
return 'default_step'
steps = {
'weather_step': lambda x: 'It is sunny',
'default_step': lambda x: 'I do not understand'
}
router_chain = RouterChain(steps=steps, router_function=router_func)
result = router_chain.run('What is the weather today?')
medium
A. 'It is sunny'
B. 'I do not understand'
C. Error: router_function missing
D. 'What is the weather today?'
Solution
Step 1: Analyze router function behavior
The router_func checks if 'weather' is in the input text (case-insensitive). Input contains 'weather', so it returns 'weather_step'.
Step 2: Determine which step runs
The router_chain uses 'weather_step' key to run the lambda returning 'It is sunny'.
Final Answer:
'It is sunny' -> Option A
Quick Check:
Input contains 'weather' -> weather_step -> 'It is sunny' [OK]
Hint: Router picks step by input keyword match [OK]
Common Mistakes:
Ignoring case in input text check
Confusing step keys with output strings
Assuming default_step runs always
4. Identify the error in this router chain code snippet:
D. router_func returns a step key not in steps dictionary
Solution
Step 1: Check router_func return values
router_func returns 'step1' if 'hello' in input, else 'step3'. Input contains 'hello', so returns 'step1'.
Step 2: Verify steps dictionary keys
Steps dictionary has keys 'step1' and 'step2', but no 'step3'. Returning 'step3' would cause error if input changed.
Final Answer:
router_func returns a step key not in steps dictionary -> Option D
Quick Check:
Router returns unknown step key 'step3' [OK]
Hint: Router must return keys present in steps dict [OK]
Common Mistakes:
Ignoring missing step keys in router return
Assuming lambda needs multiple args
Forgetting to pass router_function parameter
5. You want to build a GenAI system that first summarizes a text, then translates it to French, but only if the text is longer than 100 words. Which chain setup is best?
hard
A. Use a sequential chain with a router function that skips translation if text is short
B. Use a router chain that chooses between summarization or translation only
C. Use two separate sequential chains running independently
D. Use a sequential chain that always runs summarization then translation
Solution
Step 1: Understand task requirements
The system must summarize first, then translate only if text is longer than 100 words.
Step 2: Choose chain type matching conditional flow
A sequential chain with a router function can run summarization step first, then decide to run translation step based on text length.
Step 3: Evaluate other options
Router chain alone can't enforce sequential order; two separate chains won't coordinate; always running translation ignores condition.
Final Answer:
Use a sequential chain with a router function that skips translation if text is short -> Option A
Quick Check:
Sequential + router for conditional step flow [OK]
Hint: Combine sequential steps with router for conditional logic [OK]