Configuration and maintenance of the AI Media Server
This section covers how to configure the AI Media Server (AIMS) to support custom features and functionality, and the commands used for maintenance purposes.
Do not make any changes to the AIMS VM via the terminal interface (other than as described when running the initial Pexip installation wizard) unless directed to do so by Pexip support. This includes (but is not limited to) changes to the time zone, changes to IP tables, configuration of Ethernet interfaces, or the installation of any third-party code/applications.
This section includes:
- Installing / updating TLS certificates
- Re-running the installation wizard
- Configuring services and languages
- Word boosting
- Configuring Pexip Infinity instances
Installing / updating TLS certificates
After you have completed the initial installation of the AIMS VM and it has restarted, you must install valid TLS certificates. These certificates must be trusted by the Pexip Infinity instance that is connecting to AIMS, so you can either use a public TLS certificate, or upload your private CA to Pexip Infinity as a trusted CA certificate. The AIMS server's public.pem file must contain the full certificate chain, and the root of the chain must be trusted by Pexip Infinity.
This same procedure is followed when you need to update or replace any expiring or expired certificates.
- Log in to the AIMS server via SSH as the user admin@IP.
- Copy your TLS certificates to the home directory of the admin user:
scp public.pem admin@IP: scp private.pem admin@IP:
- At the command prompt, run
aims-config tls-certs-set public.pem private.pem
-
Check that when you connect to https://<IP>, you get a holding page and the correct certificates are in use.
Re-running the installation wizard
To rerun the installation wizard:
- Log in to the AIMS server as the user admin, either through SSH or the VMware console.
- At the command prompt, run the command installwizard
-
At each step, the default values are the answers from the previous run (if they are still valid).
Press ENTER to accept the default value, or enter the value you want to use instead.
When all installation wizard steps have been completed, the appliance automatically reboots.
Configuring services and languages
AIMS supports a number of different language services. Each service provides either speech-to-text transcription in a single language (referred to as Automatic Speech Recognition / ASR), or text-to-text translation between different languages (referred to as Neural Machine Translation / NMT). AIMS ships with English speech-to-text installed by default, and you install additional services via language bundles provided by Pexip. These additional services are not enabled by default; after installation of one or more language bundles you must enable the language model(s) you require.
We recommend that all AIMS servers associated with the same Pexip Infinity deployment have the same set of language services installed.
Supported services and language bundles
The table below lists each of the language services supported by AIMS and shows whether it is available for speech-to-text transcription or text-to-text translation; the name of the Pexip bundle used to install it; the NVIDIA language model used; and a link to the relevant NVIDIA AI model card (which provides detailed information about each model, including the training dataset, intended use, and other compliance information).
Each language uses its own Language Model, Punctuation and Capitalization Model, and Inverse Text Normalization Model.
| Service description | Pexip bundle name | Model name | GPU memory (MiB) |
Approx installed disk usage (GiB) |
|---|---|---|---|---|
| Supported in AIMS v2 | ||||
| English (US) speech-to-text service | (installed by default) | en-US-parakeet | 4000 | n/a |
| Arabic speech-to-text service | aims-model-ar-ar-conformer | ar-AR-conformer | 4000 | 2.0 |
| Dutch speech-to-text service | aims-model-nl-nl-conformer | nl-NL-conformer | 4000 | 2.5 |
| French speech-to-text service | aims-model-fr-fr-vad-conformer | fr-FR_vad-conformer
(see also Multilingual Silero VAD) |
4000 | 2.0 |
| German speech-to-text service | aims-model-de-de-conformer | de-DE-conformer | 4000 | 2.5 |
| Italian speech-to-text service | aims-model-it-it-conformer | it-IT-conformer | 4000 | 1.8 |
| Japanese speech-to-text service | aims-model-ja-jp-conformer | ja-JP-conformer | 4000 | 1.0 |
| Korean speech-to-text service | aims-model-ko-kr-conformer | ko-KR-conformer | 4000 | 2.0 |
| Mandarin speech-to-text service | aims-model-zh-cn-parakeet | zh-CN-parakeet | 6000 | 4.5 |
| Portuguese (Brazilian) speech-to-text service | aims-model-pt-br-conformer | pt-BR-conformer | 4000 | 2.0 |
| Spanish speech-to-text service | aims-model-es-es-conformer | es-ES-conformer | 4000 | 2.0 |
| Spanish (US) speech-to-text service | aims-model-es-us-conformer | es-US-conformer | 4000 | 2.0 |
| Tech preview in AIMS v2 | ||||
| Multi-language text-to-text translation service | aims-model-any-any-nmt-megatron | any-any-nmt-megatron | 11000 | 16.0 |
| Experimental in AIMS v2 | ||||
| Multi-language speech-to-text service | aims-model-ml-cs-universal-multi-parakeet | ml-cs-universal-multi | 7000 | 10.0 |
Installing language bundles
Installation of a language bundle (also referred to as language pack) requires more temporary disk space than the installed size noted in the table above. This is because temporary space will be required for the downloaded bundle and the temporary unpacked copy, in addition to the disk space for the actual installation.
You will receive a warning if you do not have enough disk space to safely install the bundle. If this is the case, you can resize the underlying virtual disk in your hypervisor and then reboot — the system will automatically pick up the extra disk space and you can then continue.
To install a language bundle:
-
Go to https://dl.pexip.com/aims/index.html, select the version of AIMS you are using, and navigate to the /bundles/ folder. Select and download the language bundle.
-
Use SFTP to upload the language bundle to your AIMS server.
-
Run:
aims-bundle install /PATH/TO/FILE
Getting available language bundles
To get a list of the Pexip language bundles currently installed, run:
aims-bundle list
This will output the loaded language bundles, for example:
aims-bundle list Bundles installed (2): Name Revision #pkgs Installed Size ----------------------------------------------------------------------------------- aims-model-de-de-conformer 2-2.0 1 2399710 aims-model-fr-fr-conformer 2-2.0 1 2006656
Removing a language bundle
To remove a language bundle, run:
aims-bundle remove <bundle>
for example:
aims-bundle remove aims-model-de-de-conformer
Configuration commands overview
All service and language configuration is performed via aims-config commands run from the command prompt. To access this, log in to the AIMS server as the user admin, either through SSH or the VMware console.
The full list of service and language configuration commands is given below; click on the link for more information.
Getting the available language models
To get a list of all the language models that are currently installed and available for enabling on the server, run:
aims-config services-list-available
This will output a list of available language models, for example:
de-DE-conformer en-US-parakeet es-US-conformer fr-FR-conformer
Getting the enabled language models
To get a list of the language models that are currently enabled, run
aims-config services-list-default
This will output the enabled language models, for example:
default_services: de-DE-conformer,en-US-parakeet,fr-FR_vad-conformer,ml-cs-universal-multi-parakeet
Setting the enabled language models
To enable selected language models, run
aims-config services-set-default <language-model_1> <language-model_2>
For example:
aims-config services-set-default en-US-parakeet es-US-conformer
You will be prompted to reboot the appliance, and this will terminate all active sessions.
Changing the list of loaded services will reboot the box and terminate all running sessions (Y/N)
Setting the languages on specific cards
To set the languages loaded on a specific card, run
aims-config services-set-card "<GPU>" <index> <language>
where:
- <GPU> is the name of the GPU card type
- <index> is the index of the logical card
- <language> is the language model to be loaded
For example, if you have an H100 with 8 logical cards, and want to use en-US on the first one, de-DE on the second and fr-FR and en-US on the rest, run:
aims-config services-set-card "NVIDIA H100 80GB HBM3" 0 en-US-parakeet aims-config services-set-card "NVIDIA H100 80GB HBM3" 1 de-DE-conformer aims-config services-set-card "NVIDIA H100 80GB HBM3" 2 fr-FR-conformer en-US-parakeet aims-config services-set-card "NVIDIA H100 80GB HBM3" 3 fr-FR-conformer en-US-parakeet aims-config services-set-card "NVIDIA H100 80GB HBM3" 4 fr-FR-conformer en-US-parakeet aims-config services-set-card "NVIDIA H100 80GB HBM3" 5 fr-FR-conformer en-US-parakeet aims-config services-set-card "NVIDIA H100 80GB HBM3" 6 fr-FR-conformer en-US-parakeet aims-config services-set-card "NVIDIA H100 80GB HBM3" 7 fr-FR-conformer en-US-parakeet
Listing the languages loaded on specific cards
To list the language models loaded on a specific card, run:
aims-config services-list-card
This will output a list of available language models on that card, for example:
aims-config services-list-card card_services: NVIDIA H100 80GB HBM3,0,en-US-parakeet NVIDIA H100 80GB HBM3,1,de-DE-conformer NVIDIA H100 80GB HBM3,2,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,3,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,4,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,5,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,6,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,7,fr-FR-conformer,en-US-parakeet
Removing a language from a specific card
To remove a language from a specific card, run:
aims-config services-rm-card "<GPU>" <index>
where:
- <GPU> is the name of the GPU card type
- <index> is the index of the logical card
For example:
aims-config services-rm-card "NVIDIA H100 80GB HBM3" 1
would result in services-list-card giving the following output:
aims-config services-list-card card_services: NVIDIA H100 80GB HBM3,0,en-US-parakeet NVIDIA H100 80GB HBM3,2,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,3,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,4,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,5,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,6,fr-FR-conformer,en-US-parakeet NVIDIA H100 80GB HBM3,7,fr-FR-conformer,en-US-parakeet
If a given combination of card type and index cannot be found (e.g. index 1 in the example above), the default languages set by aims-config services-set-default will be used.
Getting the available languages
To get a list of all the languages that are currently installed and available for enabling on the server, run:
aims-config languages-list-available
This will output a list of available language models, for example:
de-DE,en-US,fr-FR
Getting the enabled languages
To get a list of all the languages that are currently enabled on the server, run:
aims-config languages-list-enabled
This will output a list of enabled languages, for example:
de-DE,en-US
Setting the default language
To set the default language for a particular Pexip Infinity instance, which is used for all calls from VMRs that do not have a specific language configured), run
aims-config infinity-instance-set-default-language <infinity-instance_name> <language>
where <infinity-instance_name> is the name of a Pexip Infinity instance registered with AIMS.
For example:
aims-config infinity-instance-set-default-language Pexip1 es-US
You will be prompted to reboot the appliance, and this will terminate all active sessions.
Word boosting
The "word boosting" capability allows administrators to enhance and extend the vocabulary of a language by uploading a word boosting file. This file is used to improve every Automatic Speech Recognition (ASR) interaction for live captions, ensuring the system recognizes proper names, products, and domain-specific terminologies more accurately.
When enabling or removing word boosting, any changes will take effect without needing to restart the AIMS server, but will only apply to newly-placed calls.
Enabling word boosting
To enable word boosting:
-
Create text file(s) containing the list of words to be boosted. You must create a separate file for each language you wish to support.
For a list of supported languages in AIMS v2, see Configuring services and languages.
Each file must meet the following requirements:
- one word per line, with no spaces
- alphabetic characters only (including capital letters)
- no numbers or symbols
- UTF-8 encoded.
For example, Pexip's en-US.txt file might include the following:
Pexip Infinity AIMS VMR WebRTC
- Copy each file onto the AIMS server using SFTP/SCP.
- Log in to the AIMS server as the user admin, either through SSH or the VMware console.
- For each file, run the following command:
aims-config wordboost-add <language> <file>
For example:
aims-config wordboost-add en-US /wordboost/en-US.txt
The tool will tell you that it has imported the word boost information, for example:
I: Wordboost file for en-US updated with 3 words I: Updated livecaption config file
Removing word boosting
To remove any existing word boost configuration for a given language, run:
aims-config wordboost-rm <language>
For example:
aims-config wordboost-rm en-US
Expected response:
I: Wordboost file for en-US updated with 0 words I: Updated livecaption config file
Listing languages
To list the languages for which a word boost file has been configured on the system, run:
aims-config wordboost-list
This will return a list of languages, for example:
de-DE en-US es-US fr-FR
Listing boosted words
To obtain the list of words configured in the word boost list for a given language, run:
aims-config wordboost-show <language>
For example:
aims-config wordboost-show en-US
might return:
Pexip AIMS
Configuring Pexip Infinity instances
Getting the registered Pexip Infinity instances
To get a list of Pexip Infinity instances registered with this AIMS server:
- Log in to the AIMS server as the user admin, either through SSH or the VMware console.
- At the command prompt, run:
aims-config infinity-instance-list
Adding additional Pexip Infinity instances
To add additional Pexip Infinity instances:
- Log in to the AIMS server as the user admin, either through SSH or the VMware console.
- At the command prompt, run:
aims-config infinity-instance-add
- At the prompt, enter a user-friendly name for this instance. This must be a single line with no spaces:
Infinity Instance Name (user-friendly):
- At the prompt, paste the file containing the Live Captions App-Id and Live captions JWT public key that you copied when configuring Pexip Infinity with a media processing server:
Paste the output from your Infinity node:
The format should be similar to the following:
{"appId":"00abc000-111a-1234-1abc-a11122b3c444","pubKey":"-----BEGIN PUBLIC KEY-----\naaBBccDD2211NNddejj22pp0044mmMMeEEpppqqJJ2jj2kkkkeeddii99EE11nneedjj==\n-----END PUBLIC KEY-----","defaultLanguageCode": "en-US"}
Removing a configured Pexip Infinity instance
To remove a Pexip Infinity instance:
- Log in to the AIMS server as the user admin, either through SSH or the VMware console.
- At the command prompt, run:
aims-config infinity-instance-rm <infinity-instance_name>
The name must match the name of an existing instance.
For example:
aims-config infinity-instance-rm Pexip1
would return:
I: Removed instance Pexip1 I: Updated livecaption config file