76 const QStringList& args)
78 if (!m_runner.isPythonAvailable()) {
80 result.
stdErr = QStringLiteral(
"Python interpreter not found: ") + m_runner.config().pythonExe;
81 qWarning() <<
"[MLTrainer]" << result.
stdErr;
85 qDebug() <<
"[MLTrainer] Running training script:" << scriptPath;
88 if (!m_runner.config().venvDir.isEmpty()) {
89 return m_runner.runInVenv(scriptPath, args);
92 return m_runner.run(scriptPath, args);
100 for (
const QString& pkg : packages) {
101 if (!m_runner.isPackageAvailable(pkg)) {
105 if (!missing.isEmpty()) {
106 qWarning() <<
"[MLTrainer] Missing Python packages:" << missing.join(QStringLiteral(
", "));
MLLIB::MLTrainer convenience wrapper that drives Python training scripts via UTILSLIB::PythonRunner.
Shared utilities (I/O helpers, spectral analysis, layout management, warp algorithms).
Tensors, model abstraction, ONNX Runtime inference and Python training drivers used across mne-cpp.
UTILSLIB::PythonRunner & runner()
QStringList checkPrerequisites(const QStringList &packages) const
UTILSLIB::PythonRunnerResult run(const QString &scriptPath, const QStringList &args={})
Script execution result container.
Script execution configuration.
Python script launcher with logging and progress support.