Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

With release v5.7.0, we introduced an enhanced AI-based proofreading engine for English. It was built using modern approaches in Natural Language Processing (NLP). Unlike the classical rules or dictionary-based engines, it's based on the huge pre-trained language model. Its accuracy is at least 3 three times better.

However, at the same time, there are some cons that should be taken into consideration:

  • It is available for general English. It doesn't distinguish dialects for now. Thus, offered as a separate language.
  • Suggestions can be somewhat unpredictable and inconsistent. Output of the neural network depends a lot on the context and is very sensitive to even slight changes in the sentence.
  • There and there is no option to ignore a rule as all suggestions are generated with unique IDs.
  • AI technology consumes more resources to provide the results. It's Its response time is longer compared to classical engines. Check the updated WebSpellChecker Server Hardware requirements for v5.7.0 hardware requirements+.
  • It is available only for modern products, such as the WProofreader add-on for rich text editors and API.
  • There are no tips types or differentiation by problem error type (spelling, grammar, style, punctuation). All are combined in one. Later we will add types.

...

6. Start AppServer to apply changes.

Mixed grammar check provider: classical grammar check and AI-based engines

There is an option that also allows using two grammar checking engines at the same time. Though one engine suggestion will take precedence over the other.

Again, all the changes should be made in the AppServerX.xml file.

1. Stop AppServer before making any changes in AppServerX.xml.

2. Go to AppServerX.xml file and open it for editing.

3. Locate <GrammarCheckEngine>...</GrammarCheckEngine> tag. Inside this tag you will find <GrammarCheckProvider>...</GrammarCheckProvider> tag. Set the default value to mixed.

Code Block
languagexml
themeEmacs
<GrammarCheckEngine>
    <!-- The grammar provider, can be one of langtool (default), atd, neural, mixed. -->
    <GrammarCheckProvider>mixed</GrammarCheckProvider>
    ...
</GrammarCheckEngine>

4. Uncomment <MixedProvider>...</MixedProvider> and inside <Providers>...</Providers>, specify neural,langtool separated by comma.

Code Block
languagexml
themeEmacs
<GrammarCheckEngine>
    <!-- The grammar provider, can be one of langtool (default), atd, neural, mixed. -->
    <GrammarCheckProvider>mixed</GrammarCheckProvider>

    <MixedProvider>
        <Providers>neural,langtool</Providers>
        <!-- <CustomPrioritiesFile>CustomPriorities.xml</CustomPrioritiesFile> -->
    </MixedProvider>
    ...
</GrammarCheckEngine>

5. Now you can apply the mixed approauch with the grammar engines to one of the languages.

Let's try to enable the mixed engines for American English. for Scroll down to the section with language tags. Locate the language tag <Language Id="en_US">...</Language> for American English.

6. Add an extra tag, <GrammarCheckProvider>neural</GrammarCheckProvider>, inside the language tag. The value should be mixed.

Code Block
languagexml
themeEmacs
titleAppServerX.xml
<Language Id="en_US">
    ...
    <GrammarCheckProviderOptions>en-US</GrammarCheckProviderOptions>
    <-- Enabling a few engines as grammar check providers. -->
    <GrammarCheckProvider>mixed</GrammarCheckProvider>
     ...
</Language>

7. Fix the default value inside <GrammarCheckProviderOptions>...</GrammarCheckProviderOptions> from en-US to en.

Code Block
languagexml
themeEmacs
titleAppServerX.xml
<Language Id="en_US">
    ...
    <GrammarCheckProviderOptions>en</GrammarCheckProviderOptions>
    <-- Enabling a few engines as grammar check providers. -->
    <GrammarCheckProvider>mixed</GrammarCheckProvider>
    ...
</Language>

8. Save changes in AppServerX.xml file and start AppServer.

Now you will have the results generated by two engines as green underlines.