> For the complete documentation index, see [llms.txt](https://docs.wproofreader.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.wproofreader.com/v6.11.1/deployment/configuration/ai-engine-setup/troubleshooting-ai-model-downloads-and-configuration.md).

# Troubleshooting AI model downloads and configuration

Use this page when AppServer fails to start, or AI suggestions don't work.

### Missing model files (model wasn’t downloaded)

#### Symptoms

You may see one of these errors in logs:

```
04/03/26:16:06:15.635	#21644:0	Subsystem_General	Error	Failed to load config for model 'en'. The model is disabled until the application is restarted. Failed to open AI config file: '<Installation_path>/AppServer/grammar/neural/en/config.json'. Reason: file doesn't exist.
```

#### Cause

The AI model directory exists in config, but the model files are missing.

This usually happens when:

* the host had no outbound internet during installation
* files were copied partially during a manual/offline install

#### Fix

Pick one:

* Re-run installation and select the needed AI models.
* Install resources manually using the offline package.

Use: [Manually downloading resources (offline installation)](/v6.11.1/deployment/installation/manually-downloading-resources-offline-installation.md)

### “Unknown AI model” after disabling the model

#### Symptom

```
04/03/26:15:53:53.640	#12024:8	Subsystem_General	Error	Unhandled exception in handleRequest(): Unknown AI model id 'en'.
```

#### Cause

The model is disabled in `AppServerX.xml` under `<AIModels>`, but it is still referenced by an enabled language configuration.

Common sources of that dependency:

* an enabled check kit that includes `<Neural Enabled="true" .../>`
* an enabled `<Autocomplete Enabled="true">` block

#### Fix options

**Option A: Re-enable the model**

If you still want AI features, re-enable the model in `<AIModels>` and ensure the model files exist.

**Option B: Disable AI usage in language configuration (recommended)**

If your goal is to **turn off AI features**, disable them where they are used:

1. Back up `AppServerX.xml`.
2. In `AppServerX.xml`, for each affected `<Language ...>`:
   * disable all check kits that include `<Neural Enabled="true" .../>`
   * make a non-AI check kit the default (for example, `lt_hs`)
   * to disable autocomplete, set `<Autocomplete Enabled="false">` or remove the block
3. Disable the related model in `<AIModels>` (`Enabled="false"`).
4. Restart the application

Restart AppServer to apply changes in `AppServerX.xml`.

To restart: [stop](https://docs.wproofreader.com/v6.11.1/deployment/configuration/ai-engine-setup/pages/IA2KNQLXDh85TwDivL4y#mainappservercommands-stopappserverwindowslinux2.stopappserver) the application, then [start](https://docs.wproofreader.com/v6.11.1/deployment/configuration/ai-engine-setup/pages/IA2KNQLXDh85TwDivL4y#mainappservercommands-startappserverwindowslinux1.startappserver) it again.

Use [Main AppServer commands](/v6.11.1/deployment/configuration/application-server/main-appserver-commands.md).

<details>

<summary>Example: why disabling a model can break a language</summary>

A language can reference AI features in its check kits and autocomplete settings. If these are enabled, AppServer will expect the matching model to be available.

```xml
<Language Id="en_US" Enabled="true">
  ...
  <SupportedCheckKits>
    <CheckKit Name="ai_lt_hs1" Default="true" Enabled="true" Parent="lt_hs">
      <Neural Enabled="true" Priority="3" Locale="en"/>
      ...
    </CheckKit>
  </SupportedCheckKits>

  <Autocomplete Enabled="true">
    <Locale>en</Locale>
  </Autocomplete>
</Language>
```

</details>

{% hint style="info" %}
You can keep model files on disk after disabling AI. Remove model directories only after restart and log verification.
{% endhint %}
