| # Hardware Profile JSON | |
| JackAILocal SaaS Builder accepts an optional hardware profile JSON object. | |
| If the field is empty, the selected sample profile is used. | |
| ## Minimum fields | |
| ```json | |
| { | |
| "os": "windows", | |
| "cpu_threads": 8, | |
| "ram_gb": 16, | |
| "vram_gb": 0, | |
| "gpu_name": "CPU-only office laptop", | |
| "disk": "USB 3.2 SSD", | |
| "usb_storage_gb": 128 | |
| } | |
| ``` | |
| ## RTX 3090 example | |
| ```json | |
| { | |
| "os": "windows", | |
| "cpu_threads": 24, | |
| "ram_gb": 64, | |
| "vram_gb": 24, | |
| "gpu_name": "NVIDIA RTX 3090", | |
| "disk": "USB-C NVMe", | |
| "usb_storage_gb": 512 | |
| } | |
| ``` | |
| ## Optional whichllm block | |
| ```json | |
| { | |
| "os": "windows", | |
| "cpu_threads": 24, | |
| "ram_gb": 64, | |
| "vram_gb": 24, | |
| "gpu_name": "NVIDIA RTX 3090", | |
| "disk": "USB-C NVMe", | |
| "usb_storage_gb": 512, | |
| "whichllm": { | |
| "source": "optional", | |
| "top_model": "Qwen/Qwen3.6-27B" | |
| } | |
| } | |
| ``` | |
| ## Selection behavior | |
| The current hackathon Gradio app is rule-based. It does not perform a live hardware scan inside the browser. | |
| The selected sample profile or pasted JSON is normalized, then compared against the signed model catalog. | |
| The standard pack defaults to a practical laptop baseline up to 9B. Power profiles can select compatible models up to the hackathon limit of 32B. | |