Installation and Setup

This guide assumes you are familiar with Python and JSON config files. It also assumes that you have worked through the prerequisite sections.

This section shows you how to run the service from the command line, which is useful for testing. It also shows you how to run it as a service, which is best suited to a production environment.

The AI Enrichment Service should be found in the InsightMaker.Python folder that you created in the prerequisites step.

AI Enrichment Service

From The Command Line

We recommend you get the service running from the command line first so you can easily spot and resolve issues.

Activate Python Virtual Machine

  1. Activate your virtual environment by navigating to the AIEnrichmentService/venv/Scripts folder and running: activate.bat

    • You should now see (venv) at the start of your command line.

  2. On the command line navigate back to InsightMaker.Python\AIEnrichmentService

Python Torch run-time prerequisites.

For Windows - Visual Studio runtime must be installed. https://visualstudio.microsoft.com/visual-cpp-build-tools/

Other Operating Systems - Check requirements https://pypi.org/project/torch/

Install Requirements

  1. Use ‘pip’ to install all the requirements in the latest requirements file:

    1. Online: pip install -r requirements_3.12.8.txt

    2. Offline: From an internet connected machine:

      1. Create a temporary folder.

      2. Navigate to the temporary folder.

      3. Run pip download -r requirements_3.12.8.txt

      4. Copy the resulting contents of the temporary folder to the target server.

      5. Run the following on the target server, replacing the path to the temporary folder as appropriate.

        1. pip install --no-index --find-links C:/tmp/libs -r requirements_3.12.8.txt

  2. Run pip install AiimiInsightEngine-0.4.2-py3-none-any.whl

    • This will install the Aiimi Insight Engine library.

  3. If you have a GPU ad you plan to use that to accelerate steps such as vectorisation:

    1. Uninstall torch with

      1. pip uninstall torch

    2. Reinstall torch using the pip command generated by this link: https://pytorch.org/get-started/locally/

      1. For example:

        1. pip install torch --index-url https://download.pytorch.org/whl/cu118

  4. Edit run.bat in the root of ‘InsightMaker.Python\AIEnrichmentService’ to point at the correct location for your virtual environment.


Register the AI Enrichment Service

Edit the main configuration to the service can register itself:

  1. Open the following in an editor config/config.json

  2. Edit the following fields:

    1. Scheme should remain http, unless you plan to proxy requests through a HTTPS reverse proxy (IIS ARR for example) - in his case see the using SSL section.

    2. Address should be the IP address or host name of the server (do not use localhost).

    3. Port should not need changing.

    4. Threads, maxRequestHeaderSize, and maxRequestBodySize should not need changing at this stage.

    5. System secret should contain the AIE system secret.

      • if your secrets are encrypted, set skipSecretDecrypt to false.

    6. Skip System Decrypt: If skipSecretDecrypt is false the systemSecret parameter will be treated as encrypted.

    7. Key Vault: If an Azure KeyVault URL is added system secret and certificate configurations will be treated as Keyvault secret/certificate names. Python will attempt to read them using Azure Default Authentication.

    8. Admin API should point at the Admin API URL.

    9. caCerts & caPassword: These are the parameters for a certificate authority.

      1. They are only used to authenticate the connection to Content Agent for thumbnail vectorisation (HFVisionTransformer enrichment step).

      2. These are optional parameters where required.

    10. Trusted IPs should contain the IP Address of all of your enrichment agents.

config.json

Now you can start the service by running run.bat.

Note that the first time the service starts no enrichment steps will actually load, as they are disabled by default. In the next section we enable the steps that we want to use.

AI Enrichment Service

Last updated