API
Debugging Algorithms
- class Debugger(max_iter=1000, origin=None, separator='|', send='5557', receive='5558')
Creates pipeline instances to be run based on execution history and finds root causes of failure.
This is the base interface for all debugging algorithms in BugDoc library. It takes an entry point of a pipeline and a description of the parameter space to generate new instances and return root causes.
Build a new debugging algorithm object.
- max_iter: int
Maximum number of instances to be created.
- origin: None or str
Additional provenance information to be added to the history of pipeline instances.
- separator: str
Character to be used as separator between data fields that are sent as string to debugger worker.
- send: str
Socket port used to send messages to worker.
- receive: str
Socket port used to receive messages from worker.
- class StackedShortcut(created_instances=False, k=4, max_iter=1000, origin=None, separator='|', send='5557', receive='5558')
Build a new debugging algorithm object.
- max_iter: int
Maximum number of instances to be created.
- origin: None or str
Additional provenance information to be added to the history of pipeline instances.
- separator: str
Character to be used as separator between data fields that are sent as string to debugger worker.
- send: str
Socket port used to send messages to worker.
- receive: str
Socket port used to receive messages from worker.
- class Shortcut(max_iter=1000, origin=None, separator='|', send='5557', receive='5558')
Build a new debugging algorithm object.
- max_iter: int
Maximum number of instances to be created.
- origin: None or str
Additional provenance information to be added to the history of pipeline instances.
- separator: str
Character to be used as separator between data fields that are sent as string to debugger worker.
- send: str
Socket port used to send messages to worker.
- receive: str
Socket port used to receive messages from worker.
- class DebuggingDecisionTrees(return_num_instances=False, first_solution=False, num_tests=10000, use_score=False, max_iter=10000, origin=None, separator='|', send='5557', receive='5558')
Creates pipeline instances to be run based on a decision tree fitted on execution history and finds root causes of failure.
This algorithm fits a decision tree using parameters as features and results of pipelines as target. The results are boolean evaluations of success (True) or fail (False). It takes an entry point of a pipeline and a description of the parameter space to generate new instances and return root causes of failure.
Build a new debugging debugging decision trees algorithm object.
- return_num_instances: bool
Whether return the number of new instances were created or not.
- num_tests: int
Maximum number of instances to run in each iteration of the algorithm.
- use_score: bool
Whether using a goodness score to order the instances to be run. The goodness score, for each parameter-value, is defined by the ratio of successful and failing instances in which a given parameter-values appears.
Utils
- record_pipeline_run(filename, values, parameters, result, origin=None)
- Parameters
filename –
values –
parameters –
result –
origin –
- Returns