Testing & Debugging
Ensure your flows work correctly before deployment.
The Playground
Opening Playground
- Click Run in the toolbar
- Playground opens in a panel
- Test your flow interactively
Playground Features
- Chat interface: Test conversational flows
- Input fields: Provide test values
- Output display: See results
- Reset: Clear conversation history
Testing Workflow
- Start with simple inputs
- Verify expected outputs
- Test edge cases
- Try unexpected inputs
- Check error handling
Debugging Tools
Step-by-Step Execution
Run components one at a time:
- Right-click a component
- Select Run to here
- See output at this step
- Identify where issues occur
Inspect Connections
View data flowing between components:
- Click on a connection line
- See current value
- Verify correct data passing
Component Logs
View detailed component logs:
- Click on a component
- Open Logs tab
- See inputs, outputs, errors
- Timestamps for performance
Common Issues
Component Not Producing Output
Symptoms:
- Output shows empty
- Next component errors
Debugging:
- Check input connections
- Verify input data exists
- Check component configuration
- Look for validation errors
Common causes:
- Missing required parameter
- Incorrect API key
- Model not available
Connection Type Mismatch
Symptoms:
- Connection shows red
- “Incompatible types” error
Debugging:
- Check output type of source
- Check expected input type
- Add conversion component if needed
Solutions:
- Use Text converter
- Parse JSON
- Extract specific field
LLM Not Responding
Symptoms:
- Timeout errors
- Empty responses
- Connection failures
Debugging:
- Verify API key is valid
- Check network connectivity
- Verify model exists
- Check rate limits
Solutions:
- Use correct API key
- Select available model
- Add retry logic
Memory Not Working
Symptoms:
- Bot forgets conversation
- Context not passed
Debugging:
- Check memory connected to LLM
- Verify memory type matches
- Check k parameter
Solutions:
- Use correct memory type
- Connect to memory input
- Increase history size
Slow Performance
Symptoms:
- Long response times
- Timeouts
- UI freezing
Debugging:
- Check which component is slow
- Monitor token usage
- Look for unnecessary operations
Solutions:
- Use faster models
- Reduce context size
- Cache repeated calls
- Optimize prompts
Testing Strategies
Unit Testing Components
Test each component individually:
- Isolate the component
- Provide test inputs
- Verify outputs
- Document expected behavior
Integration Testing
Test connected components:
- Create test flow subset
- Test data flow
- Verify transformations
- Check error propagation
Edge Case Testing
Test unusual inputs:
Empty input: ""
Very long input: [1000+ characters]
Special characters: "Test <script>alert(1)</script>"
Unicode: "Test 你好 🎉"
Numbers as strings: "12345"Error Case Testing
Deliberately cause errors:
- Invalid inputs
- Missing parameters
- Network failures
- Rate limit conditions
Verify graceful handling.
Monitoring in Production
Logging
Enable comprehensive logging:
- Set log level to DEBUG during development
- INFO for production
- Monitor error logs
Metrics
Track key metrics:
- Response times
- Success rates
- Token usage
- Error rates
Alerts
Set up alerts for:
- Error rate spikes
- Latency increases
- API failures
- Token budget exceeded
Debugging Checklist
Before Reporting Issues
✓ Verify API keys are valid ✓ Check network connectivity ✓ Review component configuration ✓ Check input data format ✓ Look at component logs ✓ Try simpler test case ✓ Check for similar issues in docs
Information to Gather
- Flow export (JSON)
- Error messages
- Component logs
- Input that caused issue
- Expected vs actual output
Tips for Effective Debugging
Isolate the Problem
- Disconnect components
- Test each separately
- Find which fails
- Focus debugging there
Use Test Data
Create consistent test data:
{
"simple": "Hello, how are you?",
"complex": "Analyze this dataset...",
"edge": "",
"long": "Very long text..."
}Document What Works
When something works:
- Save the configuration
- Note the working state
- Use for comparison
Version Your Flows
Save versions as you develop:
chatbot-v1.jsonchatbot-v2-memory.jsonchatbot-v3-tools.json
Roll back if needed.
Ask for Help
If stuck:
- Check documentation
- Search for similar issues
- Ask in community
- Contact support with details