The pipeline is executed in three main stages using Python scripts. You can specify configurations via command line arguments or by passing a YAML configuration file (examples are located in the configs/ directory).
Important: Ensure you update the data file paths in your YAML configurations to match your local environment. If you do not have a MongoDB instance, ensure local_cache: true is set in your configuration to use local files for caching.
Pipeline Stages:
- Data Conversion: Process raw data formats (including those from the
martian-evals repo) into a common format. - Router Evaluation: Evaluate different routers using the processed data. This generates a long-format CSV file and an
EvaluationCollection containing the results. - Visualization: Generate performance-vs-cost plots using the
EvaluationCollection.
# 1. Convert data
python convert_data.py --config=configs/convert_data.yaml
# 2. Evaluate routers
python evaluate_routers.py --config=configs/evaluate_routers.yaml
# 3. Visualize results
python visualize_results.py --config=configs/visualize.yaml