amd-gaia 0.15.0__py3-none-any.whl → 0.15.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {amd_gaia-0.15.0.dist-info → amd_gaia-0.15.2.dist-info}/METADATA +222 -223
- amd_gaia-0.15.2.dist-info/RECORD +182 -0
- {amd_gaia-0.15.0.dist-info → amd_gaia-0.15.2.dist-info}/WHEEL +1 -1
- {amd_gaia-0.15.0.dist-info → amd_gaia-0.15.2.dist-info}/entry_points.txt +1 -0
- {amd_gaia-0.15.0.dist-info → amd_gaia-0.15.2.dist-info}/licenses/LICENSE.md +20 -20
- gaia/__init__.py +29 -29
- gaia/agents/__init__.py +19 -19
- gaia/agents/base/__init__.py +9 -9
- gaia/agents/base/agent.py +2132 -2177
- gaia/agents/base/api_agent.py +119 -120
- gaia/agents/base/console.py +1967 -1841
- gaia/agents/base/errors.py +237 -237
- gaia/agents/base/mcp_agent.py +86 -86
- gaia/agents/base/tools.py +88 -83
- gaia/agents/blender/__init__.py +7 -0
- gaia/agents/blender/agent.py +553 -556
- gaia/agents/blender/agent_simple.py +133 -135
- gaia/agents/blender/app.py +211 -211
- gaia/agents/blender/app_simple.py +41 -41
- gaia/agents/blender/core/__init__.py +16 -16
- gaia/agents/blender/core/materials.py +506 -506
- gaia/agents/blender/core/objects.py +316 -316
- gaia/agents/blender/core/rendering.py +225 -225
- gaia/agents/blender/core/scene.py +220 -220
- gaia/agents/blender/core/view.py +146 -146
- gaia/agents/chat/__init__.py +9 -9
- gaia/agents/chat/agent.py +809 -835
- gaia/agents/chat/app.py +1065 -1058
- gaia/agents/chat/session.py +508 -508
- gaia/agents/chat/tools/__init__.py +15 -15
- gaia/agents/chat/tools/file_tools.py +96 -96
- gaia/agents/chat/tools/rag_tools.py +1744 -1729
- gaia/agents/chat/tools/shell_tools.py +437 -436
- gaia/agents/code/__init__.py +7 -7
- gaia/agents/code/agent.py +549 -549
- gaia/agents/code/cli.py +377 -0
- gaia/agents/code/models.py +135 -135
- gaia/agents/code/orchestration/__init__.py +24 -24
- gaia/agents/code/orchestration/checklist_executor.py +1763 -1763
- gaia/agents/code/orchestration/checklist_generator.py +713 -713
- gaia/agents/code/orchestration/factories/__init__.py +9 -9
- gaia/agents/code/orchestration/factories/base.py +63 -63
- gaia/agents/code/orchestration/factories/nextjs_factory.py +118 -118
- gaia/agents/code/orchestration/factories/python_factory.py +106 -106
- gaia/agents/code/orchestration/orchestrator.py +841 -841
- gaia/agents/code/orchestration/project_analyzer.py +391 -391
- gaia/agents/code/orchestration/steps/__init__.py +67 -67
- gaia/agents/code/orchestration/steps/base.py +188 -188
- gaia/agents/code/orchestration/steps/error_handler.py +314 -314
- gaia/agents/code/orchestration/steps/nextjs.py +828 -828
- gaia/agents/code/orchestration/steps/python.py +307 -307
- gaia/agents/code/orchestration/template_catalog.py +469 -469
- gaia/agents/code/orchestration/workflows/__init__.py +14 -14
- gaia/agents/code/orchestration/workflows/base.py +80 -80
- gaia/agents/code/orchestration/workflows/nextjs.py +186 -186
- gaia/agents/code/orchestration/workflows/python.py +94 -94
- gaia/agents/code/prompts/__init__.py +11 -11
- gaia/agents/code/prompts/base_prompt.py +77 -77
- gaia/agents/code/prompts/code_patterns.py +2034 -2036
- gaia/agents/code/prompts/nextjs_prompt.py +40 -40
- gaia/agents/code/prompts/python_prompt.py +109 -109
- gaia/agents/code/schema_inference.py +365 -365
- gaia/agents/code/system_prompt.py +41 -41
- gaia/agents/code/tools/__init__.py +42 -42
- gaia/agents/code/tools/cli_tools.py +1138 -1138
- gaia/agents/code/tools/code_formatting.py +319 -319
- gaia/agents/code/tools/code_tools.py +769 -769
- gaia/agents/code/tools/error_fixing.py +1347 -1347
- gaia/agents/code/tools/external_tools.py +180 -180
- gaia/agents/code/tools/file_io.py +845 -845
- gaia/agents/code/tools/prisma_tools.py +190 -190
- gaia/agents/code/tools/project_management.py +1016 -1016
- gaia/agents/code/tools/testing.py +321 -321
- gaia/agents/code/tools/typescript_tools.py +122 -122
- gaia/agents/code/tools/validation_parsing.py +461 -461
- gaia/agents/code/tools/validation_tools.py +806 -806
- gaia/agents/code/tools/web_dev_tools.py +1758 -1758
- gaia/agents/code/validators/__init__.py +16 -16
- gaia/agents/code/validators/antipattern_checker.py +241 -241
- gaia/agents/code/validators/ast_analyzer.py +197 -197
- gaia/agents/code/validators/requirements_validator.py +145 -145
- gaia/agents/code/validators/syntax_validator.py +171 -171
- gaia/agents/docker/__init__.py +7 -7
- gaia/agents/docker/agent.py +643 -642
- gaia/agents/emr/__init__.py +8 -8
- gaia/agents/emr/agent.py +1504 -1506
- gaia/agents/emr/cli.py +1322 -1322
- gaia/agents/emr/constants.py +475 -475
- gaia/agents/emr/dashboard/__init__.py +4 -4
- gaia/agents/emr/dashboard/server.py +1972 -1974
- gaia/agents/jira/__init__.py +11 -11
- gaia/agents/jira/agent.py +894 -894
- gaia/agents/jira/jql_templates.py +299 -299
- gaia/agents/routing/__init__.py +7 -7
- gaia/agents/routing/agent.py +567 -570
- gaia/agents/routing/system_prompt.py +75 -75
- gaia/agents/summarize/__init__.py +11 -0
- gaia/agents/summarize/agent.py +885 -0
- gaia/agents/summarize/prompts.py +129 -0
- gaia/api/__init__.py +23 -23
- gaia/api/agent_registry.py +238 -238
- gaia/api/app.py +305 -305
- gaia/api/openai_server.py +575 -575
- gaia/api/schemas.py +186 -186
- gaia/api/sse_handler.py +373 -373
- gaia/apps/__init__.py +4 -4
- gaia/apps/llm/__init__.py +6 -6
- gaia/apps/llm/app.py +184 -169
- gaia/apps/summarize/app.py +116 -633
- gaia/apps/summarize/html_viewer.py +133 -133
- gaia/apps/summarize/pdf_formatter.py +284 -284
- gaia/audio/__init__.py +2 -2
- gaia/audio/audio_client.py +439 -439
- gaia/audio/audio_recorder.py +269 -269
- gaia/audio/kokoro_tts.py +599 -599
- gaia/audio/whisper_asr.py +432 -432
- gaia/chat/__init__.py +16 -16
- gaia/chat/app.py +428 -430
- gaia/chat/prompts.py +522 -522
- gaia/chat/sdk.py +1228 -1225
- gaia/cli.py +5659 -5632
- gaia/database/__init__.py +10 -10
- gaia/database/agent.py +176 -176
- gaia/database/mixin.py +290 -290
- gaia/database/testing.py +64 -64
- gaia/eval/batch_experiment.py +2332 -2332
- gaia/eval/claude.py +542 -542
- gaia/eval/config.py +37 -37
- gaia/eval/email_generator.py +512 -512
- gaia/eval/eval.py +3179 -3179
- gaia/eval/groundtruth.py +1130 -1130
- gaia/eval/transcript_generator.py +582 -582
- gaia/eval/webapp/README.md +167 -167
- gaia/eval/webapp/package-lock.json +875 -875
- gaia/eval/webapp/package.json +20 -20
- gaia/eval/webapp/public/app.js +3402 -3402
- gaia/eval/webapp/public/index.html +87 -87
- gaia/eval/webapp/public/styles.css +3661 -3661
- gaia/eval/webapp/server.js +415 -415
- gaia/eval/webapp/test-setup.js +72 -72
- gaia/installer/__init__.py +23 -0
- gaia/installer/init_command.py +1275 -0
- gaia/installer/lemonade_installer.py +619 -0
- gaia/llm/__init__.py +10 -2
- gaia/llm/base_client.py +60 -0
- gaia/llm/exceptions.py +12 -0
- gaia/llm/factory.py +70 -0
- gaia/llm/lemonade_client.py +3421 -3221
- gaia/llm/lemonade_manager.py +294 -294
- gaia/llm/providers/__init__.py +9 -0
- gaia/llm/providers/claude.py +108 -0
- gaia/llm/providers/lemonade.py +118 -0
- gaia/llm/providers/openai_provider.py +79 -0
- gaia/llm/vlm_client.py +382 -382
- gaia/logger.py +189 -189
- gaia/mcp/agent_mcp_server.py +245 -245
- gaia/mcp/blender_mcp_client.py +138 -138
- gaia/mcp/blender_mcp_server.py +648 -648
- gaia/mcp/context7_cache.py +332 -332
- gaia/mcp/external_services.py +518 -518
- gaia/mcp/mcp_bridge.py +811 -550
- gaia/mcp/servers/__init__.py +6 -6
- gaia/mcp/servers/docker_mcp.py +83 -83
- gaia/perf_analysis.py +361 -0
- gaia/rag/__init__.py +10 -10
- gaia/rag/app.py +293 -293
- gaia/rag/demo.py +304 -304
- gaia/rag/pdf_utils.py +235 -235
- gaia/rag/sdk.py +2194 -2194
- gaia/security.py +183 -163
- gaia/talk/app.py +287 -289
- gaia/talk/sdk.py +538 -538
- gaia/testing/__init__.py +87 -87
- gaia/testing/assertions.py +330 -330
- gaia/testing/fixtures.py +333 -333
- gaia/testing/mocks.py +493 -493
- gaia/util.py +46 -46
- gaia/utils/__init__.py +33 -33
- gaia/utils/file_watcher.py +675 -675
- gaia/utils/parsing.py +223 -223
- gaia/version.py +100 -100
- amd_gaia-0.15.0.dist-info/RECORD +0 -168
- gaia/agents/code/app.py +0 -266
- gaia/llm/llm_client.py +0 -723
- {amd_gaia-0.15.0.dist-info → amd_gaia-0.15.2.dist-info}/top_level.txt +0 -0
gaia/eval/webapp/README.md
CHANGED
|
@@ -1,168 +1,168 @@
|
|
|
1
|
-
# Gaia Evaluation Results Visualizer
|
|
2
|
-
|
|
3
|
-
A simple Node.js web application for visualizing and comparing Gaia evaluation experiment results.
|
|
4
|
-
|
|
5
|
-
## Features
|
|
6
|
-
|
|
7
|
-
- **Load Multiple Reports**: View experiment results (`.experiment.json`) and evaluation reports (`.experiment.eval.json`)
|
|
8
|
-
- **Side-by-Side Comparison**: Compare multiple reports simultaneously in a clean grid layout
|
|
9
|
-
- **Key Metrics Dashboard**: View costs, token usage, quality scores, and performance metrics
|
|
10
|
-
- **Quality Analysis**: Detailed breakdown of evaluation criteria and ratings
|
|
11
|
-
- **Responsive Design**: Works on desktop and mobile devices
|
|
12
|
-
|
|
13
|
-
## Quick Start
|
|
14
|
-
|
|
15
|
-
### Prerequisites
|
|
16
|
-
|
|
17
|
-
- Node.js (v14 or higher)
|
|
18
|
-
- npm
|
|
19
|
-
|
|
20
|
-
### Using the GAIA CLI (Recommended)
|
|
21
|
-
|
|
22
|
-
The easiest way to launch the visualizer is using the GAIA CLI command:
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
gaia visualize
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
This will automatically:
|
|
29
|
-
- Install npm dependencies if needed (first time only)
|
|
30
|
-
- Start the server on port 3000
|
|
31
|
-
- Open your browser to the visualizer
|
|
32
|
-
|
|
33
|
-
Options:
|
|
34
|
-
```bash
|
|
35
|
-
# Use custom port
|
|
36
|
-
gaia visualize --port 8080
|
|
37
|
-
|
|
38
|
-
# Don't open browser automatically
|
|
39
|
-
gaia visualize --no-browser
|
|
40
|
-
|
|
41
|
-
# Specify custom data directories
|
|
42
|
-
gaia visualize --experiments-dir ./my_experiments --evaluations-dir ./my_evaluations
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
### Manual Installation
|
|
46
|
-
|
|
47
|
-
If you prefer to run the server manually:
|
|
48
|
-
|
|
49
|
-
1. Navigate to the webapp directory:
|
|
50
|
-
```bash
|
|
51
|
-
cd src/gaia/eval/webapp
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
2. Install dependencies (only needed once):
|
|
55
|
-
```bash
|
|
56
|
-
npm install
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
3. Start the server:
|
|
60
|
-
```bash
|
|
61
|
-
npm start
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
4. Open your browser and go to:
|
|
65
|
-
```
|
|
66
|
-
http://localhost:3000
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
## Usage
|
|
70
|
-
|
|
71
|
-
### Loading Reports
|
|
72
|
-
|
|
73
|
-
1. **Select Files**: Use the file selectors to choose experiment and/or evaluation files
|
|
74
|
-
- **Experiments**: Shows `.experiment.json` files from the `experiments/` folder
|
|
75
|
-
- **Evaluations**: Shows `.experiment.eval.json` files from the `evaluation/` folder
|
|
76
|
-
|
|
77
|
-
2. **Add Reports**: Click "Add Report" to load selected files into the visualization
|
|
78
|
-
|
|
79
|
-
3. **Compare**: Reports will appear side-by-side in the main view for easy comparison
|
|
80
|
-
|
|
81
|
-
### Understanding the Data
|
|
82
|
-
|
|
83
|
-
#### Experiment Reports Show:
|
|
84
|
-
- **Total Cost**: Cost breakdown (input/output tokens)
|
|
85
|
-
- **Token Usage**: Total tokens consumed
|
|
86
|
-
- **Model Details**: LLM model, temperature, max tokens
|
|
87
|
-
- **Experiment Metadata**: Timestamp, parameters, errors
|
|
88
|
-
|
|
89
|
-
#### Evaluation Reports Show:
|
|
90
|
-
- **Quality Scores**: Overall quality metrics
|
|
91
|
-
- **Rating Distribution**: Excellent/Good/Fair/Poor counts
|
|
92
|
-
- **Detailed Analysis**: Per-criteria quality ratings
|
|
93
|
-
- **Sample Quality Breakdown**: Executive summary, completeness, etc.
|
|
94
|
-
|
|
95
|
-
### Controls
|
|
96
|
-
|
|
97
|
-
- **Add Report**: Load selected files from the lists
|
|
98
|
-
- **Compare Selected**: Scroll to view all loaded reports (shows message if <2 reports)
|
|
99
|
-
- **Clear All**: Remove all loaded reports
|
|
100
|
-
- **×** (on report cards): Remove individual reports
|
|
101
|
-
|
|
102
|
-
## File Structure
|
|
103
|
-
|
|
104
|
-
```
|
|
105
|
-
webapp/
|
|
106
|
-
├── package.json # Node.js dependencies
|
|
107
|
-
├── server.js # Express server with API endpoints
|
|
108
|
-
├── public/
|
|
109
|
-
│ ├── index.html # Main application interface
|
|
110
|
-
│ ├── styles.css # CSS styling
|
|
111
|
-
│ └── app.js # Frontend JavaScript logic
|
|
112
|
-
└── README.md # This file
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
## API Endpoints
|
|
116
|
-
|
|
117
|
-
The web app provides these REST endpoints:
|
|
118
|
-
|
|
119
|
-
- `GET /api/files` - List available experiment and evaluation files
|
|
120
|
-
- `GET /api/experiment/:filename` - Load specific experiment data
|
|
121
|
-
- `GET /api/evaluation/:filename` - Load specific evaluation data
|
|
122
|
-
- `GET /api/report/:experimentFile/:evaluationFile?` - Combined report data
|
|
123
|
-
|
|
124
|
-
## Data Sources
|
|
125
|
-
|
|
126
|
-
The app automatically discovers files from:
|
|
127
|
-
- `experiments/` folder: `*.experiment.json` files
|
|
128
|
-
- `evaluation/` folder: `*.experiment.eval.json` files
|
|
129
|
-
|
|
130
|
-
Make sure your experiment and evaluation files are in these locations relative to the webapp directory.
|
|
131
|
-
|
|
132
|
-
## Development
|
|
133
|
-
|
|
134
|
-
To modify the app:
|
|
135
|
-
|
|
136
|
-
1. **Backend**: Edit `server.js` for API changes
|
|
137
|
-
2. **Frontend**: Edit files in `public/` folder
|
|
138
|
-
3. **Styling**: Modify `public/styles.css`
|
|
139
|
-
4. **Logic**: Update `public/app.js`
|
|
140
|
-
|
|
141
|
-
The server automatically serves static files from the `public/` folder.
|
|
142
|
-
|
|
143
|
-
## Troubleshooting
|
|
144
|
-
|
|
145
|
-
### No Files Showing
|
|
146
|
-
- Ensure experiment/evaluation files exist in the correct folders
|
|
147
|
-
- Check the console logs for file path errors
|
|
148
|
-
- Verify file naming conventions (`.experiment.json`, `.experiment.eval.json`)
|
|
149
|
-
|
|
150
|
-
### Server Won't Start
|
|
151
|
-
- Check that port 3000 is available
|
|
152
|
-
- Ensure Node.js dependencies are installed (`npm install`)
|
|
153
|
-
- Verify you're in the correct directory (`src/gaia/eval/webapp`)
|
|
154
|
-
|
|
155
|
-
### Data Not Loading
|
|
156
|
-
- Check browser console for API errors
|
|
157
|
-
- Verify JSON file format is valid
|
|
158
|
-
- Ensure file permissions allow reading
|
|
159
|
-
|
|
160
|
-
## Future Enhancements
|
|
161
|
-
|
|
162
|
-
Potential improvements for future versions:
|
|
163
|
-
- Export comparison reports
|
|
164
|
-
- More detailed visualization charts
|
|
165
|
-
- Advanced filtering and sorting
|
|
166
|
-
- Drag and drop file uploads
|
|
167
|
-
- Real-time data updates
|
|
1
|
+
# Gaia Evaluation Results Visualizer
|
|
2
|
+
|
|
3
|
+
A simple Node.js web application for visualizing and comparing Gaia evaluation experiment results.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Load Multiple Reports**: View experiment results (`.experiment.json`) and evaluation reports (`.experiment.eval.json`)
|
|
8
|
+
- **Side-by-Side Comparison**: Compare multiple reports simultaneously in a clean grid layout
|
|
9
|
+
- **Key Metrics Dashboard**: View costs, token usage, quality scores, and performance metrics
|
|
10
|
+
- **Quality Analysis**: Detailed breakdown of evaluation criteria and ratings
|
|
11
|
+
- **Responsive Design**: Works on desktop and mobile devices
|
|
12
|
+
|
|
13
|
+
## Quick Start
|
|
14
|
+
|
|
15
|
+
### Prerequisites
|
|
16
|
+
|
|
17
|
+
- Node.js (v14 or higher)
|
|
18
|
+
- npm
|
|
19
|
+
|
|
20
|
+
### Using the GAIA CLI (Recommended)
|
|
21
|
+
|
|
22
|
+
The easiest way to launch the visualizer is using the GAIA CLI command:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
gaia visualize
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
This will automatically:
|
|
29
|
+
- Install npm dependencies if needed (first time only)
|
|
30
|
+
- Start the server on port 3000
|
|
31
|
+
- Open your browser to the visualizer
|
|
32
|
+
|
|
33
|
+
Options:
|
|
34
|
+
```bash
|
|
35
|
+
# Use custom port
|
|
36
|
+
gaia visualize --port 8080
|
|
37
|
+
|
|
38
|
+
# Don't open browser automatically
|
|
39
|
+
gaia visualize --no-browser
|
|
40
|
+
|
|
41
|
+
# Specify custom data directories
|
|
42
|
+
gaia visualize --experiments-dir ./my_experiments --evaluations-dir ./my_evaluations
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Manual Installation
|
|
46
|
+
|
|
47
|
+
If you prefer to run the server manually:
|
|
48
|
+
|
|
49
|
+
1. Navigate to the webapp directory:
|
|
50
|
+
```bash
|
|
51
|
+
cd src/gaia/eval/webapp
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
2. Install dependencies (only needed once):
|
|
55
|
+
```bash
|
|
56
|
+
npm install
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
3. Start the server:
|
|
60
|
+
```bash
|
|
61
|
+
npm start
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
4. Open your browser and go to:
|
|
65
|
+
```
|
|
66
|
+
http://localhost:3000
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Usage
|
|
70
|
+
|
|
71
|
+
### Loading Reports
|
|
72
|
+
|
|
73
|
+
1. **Select Files**: Use the file selectors to choose experiment and/or evaluation files
|
|
74
|
+
- **Experiments**: Shows `.experiment.json` files from the `experiments/` folder
|
|
75
|
+
- **Evaluations**: Shows `.experiment.eval.json` files from the `evaluation/` folder
|
|
76
|
+
|
|
77
|
+
2. **Add Reports**: Click "Add Report" to load selected files into the visualization
|
|
78
|
+
|
|
79
|
+
3. **Compare**: Reports will appear side-by-side in the main view for easy comparison
|
|
80
|
+
|
|
81
|
+
### Understanding the Data
|
|
82
|
+
|
|
83
|
+
#### Experiment Reports Show:
|
|
84
|
+
- **Total Cost**: Cost breakdown (input/output tokens)
|
|
85
|
+
- **Token Usage**: Total tokens consumed
|
|
86
|
+
- **Model Details**: LLM model, temperature, max tokens
|
|
87
|
+
- **Experiment Metadata**: Timestamp, parameters, errors
|
|
88
|
+
|
|
89
|
+
#### Evaluation Reports Show:
|
|
90
|
+
- **Quality Scores**: Overall quality metrics
|
|
91
|
+
- **Rating Distribution**: Excellent/Good/Fair/Poor counts
|
|
92
|
+
- **Detailed Analysis**: Per-criteria quality ratings
|
|
93
|
+
- **Sample Quality Breakdown**: Executive summary, completeness, etc.
|
|
94
|
+
|
|
95
|
+
### Controls
|
|
96
|
+
|
|
97
|
+
- **Add Report**: Load selected files from the lists
|
|
98
|
+
- **Compare Selected**: Scroll to view all loaded reports (shows message if <2 reports)
|
|
99
|
+
- **Clear All**: Remove all loaded reports
|
|
100
|
+
- **×** (on report cards): Remove individual reports
|
|
101
|
+
|
|
102
|
+
## File Structure
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
webapp/
|
|
106
|
+
├── package.json # Node.js dependencies
|
|
107
|
+
├── server.js # Express server with API endpoints
|
|
108
|
+
├── public/
|
|
109
|
+
│ ├── index.html # Main application interface
|
|
110
|
+
│ ├── styles.css # CSS styling
|
|
111
|
+
│ └── app.js # Frontend JavaScript logic
|
|
112
|
+
└── README.md # This file
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## API Endpoints
|
|
116
|
+
|
|
117
|
+
The web app provides these REST endpoints:
|
|
118
|
+
|
|
119
|
+
- `GET /api/files` - List available experiment and evaluation files
|
|
120
|
+
- `GET /api/experiment/:filename` - Load specific experiment data
|
|
121
|
+
- `GET /api/evaluation/:filename` - Load specific evaluation data
|
|
122
|
+
- `GET /api/report/:experimentFile/:evaluationFile?` - Combined report data
|
|
123
|
+
|
|
124
|
+
## Data Sources
|
|
125
|
+
|
|
126
|
+
The app automatically discovers files from:
|
|
127
|
+
- `experiments/` folder: `*.experiment.json` files
|
|
128
|
+
- `evaluation/` folder: `*.experiment.eval.json` files
|
|
129
|
+
|
|
130
|
+
Make sure your experiment and evaluation files are in these locations relative to the webapp directory.
|
|
131
|
+
|
|
132
|
+
## Development
|
|
133
|
+
|
|
134
|
+
To modify the app:
|
|
135
|
+
|
|
136
|
+
1. **Backend**: Edit `server.js` for API changes
|
|
137
|
+
2. **Frontend**: Edit files in `public/` folder
|
|
138
|
+
3. **Styling**: Modify `public/styles.css`
|
|
139
|
+
4. **Logic**: Update `public/app.js`
|
|
140
|
+
|
|
141
|
+
The server automatically serves static files from the `public/` folder.
|
|
142
|
+
|
|
143
|
+
## Troubleshooting
|
|
144
|
+
|
|
145
|
+
### No Files Showing
|
|
146
|
+
- Ensure experiment/evaluation files exist in the correct folders
|
|
147
|
+
- Check the console logs for file path errors
|
|
148
|
+
- Verify file naming conventions (`.experiment.json`, `.experiment.eval.json`)
|
|
149
|
+
|
|
150
|
+
### Server Won't Start
|
|
151
|
+
- Check that port 3000 is available
|
|
152
|
+
- Ensure Node.js dependencies are installed (`npm install`)
|
|
153
|
+
- Verify you're in the correct directory (`src/gaia/eval/webapp`)
|
|
154
|
+
|
|
155
|
+
### Data Not Loading
|
|
156
|
+
- Check browser console for API errors
|
|
157
|
+
- Verify JSON file format is valid
|
|
158
|
+
- Ensure file permissions allow reading
|
|
159
|
+
|
|
160
|
+
## Future Enhancements
|
|
161
|
+
|
|
162
|
+
Potential improvements for future versions:
|
|
163
|
+
- Export comparison reports
|
|
164
|
+
- More detailed visualization charts
|
|
165
|
+
- Advanced filtering and sorting
|
|
166
|
+
- Drag and drop file uploads
|
|
167
|
+
- Real-time data updates
|
|
168
168
|
- Enhanced comparison views
|