Overview
Source configuration tells Geval how to parse and aggregate metrics from CSV and JSON files. This is especially useful when working with exports from tools like LangSmith, Braintrust, or custom eval scripts.CSV Source Configuration
Basic Configuration
Advanced Configuration
Example: LangSmith Export
Example: Multiple Metrics
JSON Source Configuration
Basic JSON Config
JSON with Nested Paths
Auto-Detection
JSON files in normalized format are auto-detected and don’t require source config:Working with Different Eval Tools
Promptfoo
Promptfoo outputs are auto-detected. No source config needed for standard format.LangSmith
Use CSV source config for LangSmith exports:Braintrust
Similar to LangSmith, use CSV source config:Custom JSON Formats
For custom JSON formats, use JSON source config:Best Practices
1. Use Descriptive Eval Names
2. Rename Metrics for Clarity
3. Extract from Columns When Possible
4. Combine Multiple Aggregations
Troubleshooting
CSV Not Parsing
- Verify column names match exactly (case-sensitive)
- Check for extra spaces in column names
- Ensure CSV has headers
Metrics Not Found
- Verify column names in source config match CSV columns
- Check that aggregation method is valid
- Ensure data types are compatible
JSON Path Issues
- Verify
resultsPathpoints to an array - Check JSON structure matches expected format
- Use dot notation for nested paths