-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathconfig.yaml
More file actions
225 lines (186 loc) · 8.52 KB
/
config.yaml
File metadata and controls
225 lines (186 loc) · 8.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
# GNN Processing Pipeline Configuration
# This file contains configuration settings for the GNN processing pipeline
# Pipeline execution settings
pipeline:
# Enable/disable pipeline execution
enabled: true
# Pipeline steps to execute (0-24)
# Leave empty to run all steps
steps: []
# Skip specific steps by number (e.g. [13] to skip LLM). Default: run all steps.
# Step 13 needs a local LLM (e.g. Ollama) and the model from src/llm/defaults.py or OLLAMA_MODEL.
skip_steps: []
# Step 2 test mode when not overridden on CLI (see src/utils/pipeline_config_merge.py)
fast_only: true
# comprehensive: false # set true to run the full pytest suite in step 2
# Force execution of specific steps
force_steps: []
# Parallel execution settings
parallel:
enabled: false
max_workers: 4
# Timeout settings (in seconds)
timeout:
step: 3600 # 1 hour per step
total: 7200 # 2 hours total
# Step 1 defaults (read by main.py → 1_setup). CLI flags override these when present.
setup:
# uv sync --extra dev (pytest-cov, xdist, coverage, linters, …)
dev: true
recreate_venv: false
# install_all_extras: false # if true: uv sync --all-extras (every optional group; heavy)
# Legacy / documentation only: main.py does not read uv.sync.* (use ``setup:`` above).
# For manual installs: uv sync --extra dev | uv sync --all-extras
uv:
recreate_uv_env: false
uv_env_dir: ".venv"
# Input/output settings
io:
# Input directory for GNN files
input_dir: "input/gnn_files"
# Output directory for pipeline artifacts
output_dir: "output"
# Temporary directory
temp_dir: "temp"
# Log directory
log_dir: "logs"
# ═══════════════════════════════════════════════════════════════════════════════
# Testing Matrix Configuration
# Maps subdirectories in input/gnn_files/ to specific pipeline steps.
# Edit the lists below to control which steps run on which folders.
# ═══════════════════════════════════════════════════════════════════════════════
#
# ┌──────────────────────────────────────────────────────────────────────────────
# │ STEP REFERENCE (select by number)
# ├──────┬──────────────────────────┬──────────────────────────────────────────
# │ Step │ Script (src/) │ Purpose
# ├──────┼──────────────────────────┼──────────────────────────────────────────
# │ 0 │ 0_template.py │ Pipeline template & initialization
# │ 1 │ 1_setup.py │ Environment setup & dependency install
# │ 2 │ 2_tests.py │ Test suite execution
# │ 3 │ 3_gnn.py │ GNN file discovery & parsing
# │ 4 │ 4_model_registry.py │ Model registry & versioning
# │ 5 │ 5_type_checker.py │ GNN type validation
# │ 6 │ 6_validation.py │ Consistency & quality checking
# │ 7 │ 7_export.py │ Multi-format export (JSON, XML, GraphML)
# │ 8 │ 8_visualization.py │ Graph & matrix visualization
# │ 9 │ 9_advanced_viz.py │ Interactive / advanced visualization
# │ 10 │ 10_ontology.py │ Active Inference ontology processing
# │ 11 │ 11_render.py │ Code generation (PyMDP, RxInfer, JAX…)
# │ 12 │ 12_execute.py │ Execute rendered simulation scripts
# │ 13 │ 13_llm.py │ LLM-enhanced analysis
# │ 14 │ 14_ml_integration.py │ Machine learning integration
# │ 15 │ 15_audio.py │ Audio sonification generation
# │ 16 │ 16_analysis.py │ Statistical analysis & reporting
# │ 17 │ 17_integration.py │ System integration checks
# │ 18 │ 18_security.py │ Security validation
# │ 19 │ 19_research.py │ Research tools & literature
# │ 20 │ 20_website.py │ Static HTML website generation
# │ 21 │ 21_mcp.py │ Model Context Protocol processing
# │ 22 │ 22_gui.py │ Interactive GNN constructor GUI
# │ 23 │ 23_report.py │ Comprehensive report generation
# │ 24 │ 24_intelligent_analysis │ AI-powered pipeline analysis
# └──────┴──────────────────────────┴──────────────────────────────────────────
#
# NOTE: Global steps run once before folder-specific steps (not folder-routed).
# Steps not in any folder's list run once on the root input directory.
# ═══════════════════════════════════════════════════════════════════════════════
testing_matrix:
enabled: true
# ─────────────────────────────────────────────────────────────────────────────
# GLOBAL STEPS — run once (not per-folder), togglable independently
# Set individual steps to true/false to include/exclude them from the pipeline
# ─────────────────────────────────────────────────────────────────────────────
global_steps:
0_template: true # Pipeline template & initialization
1_setup: true # Environment setup & dependency install
2_tests: true # Test suite execution
# Default steps for folders not explicitly listed below
default_steps: [3, 5, 6, 10]
# Folder-specific step configurations
# Each key = subdirectory name in input/gnn_files/
# Each value = list of step numbers to run on that folder
folders:
# POMDP agents (full pipeline — all steps)
discrete: [
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
# 13, # LLM — disabled (slow Ollama calls); re-enable when needed
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
]
# Basic perception models
basics: [3, 5, 6, 10] # Parse, type-check, validate, ontology
# Continuous-space models
continuous: [3, 5, 6] # Parse and type-check
# Hierarchical models
hierarchical: [3, 5, 6] # Parse and type-check
# Multi-agent models
multiagent: [3, 5, 6] # Parse and type-check
# Precision-weighted models
precision: [3, 5, 6] # Parse and type-check
# Structured / factor graph models
structured: [3, 5, 6] # Parse and type-check
# LLM settings (Step 13)
llm:
# Default model for Ollama (overridden by OLLAMA_MODEL env var)
model: "smollm2:135m-instruct-q4_K_S"
# Total budget for LLM processing in seconds (pipeline kills at 900s)
timeout_seconds: 600
# Per-prompt timeout in seconds
prompt_timeout: 45
# Logging settings
logging:
# Log level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
level: "INFO"
# Log format
format: "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
# Log file settings
file:
enabled: true
max_size: "10MB"
backup_count: 5
# Validation settings
validation:
# Enable validation checks
enabled: true
# Strict validation mode
strict: false
# Validation timeout (seconds)
timeout: 300
# Performance settings
performance:
# Memory limit (MB)
memory_limit: 4096
# CPU limit (cores)
cpu_limit: 4
# Cache settings
cache:
enabled: true
max_size: "1GB"
ttl: 3600 # 1 hour
# Security settings
security:
# Enable security checks
enabled: true
# Allow network access
network_access: true
# File permissions
file_permissions: "644"