Installation

The IQVIA NLP Airflow provider is compatible with Airflow 3.2.2 and Python 3.11 or 3.12.

There are various installation options for Airflow including PyPi, Docker, and Kubernetes. There are also managed Airflow services from cloud providers such as Amazon, Google, and Azure. For more details, refer to Airflow’s installation documentation.

The process for installing Airflow providers will vary slightly depending on your Airflow installation method, but typically involves using pip to install the provider package in Airflow’s Python environment.

This section explains how to install the IQVIA NLP Airflow provider for various Airflow installation methods. In all cases, you will need the Python wheel for the provider. This is a file with a name like airflow_provider_iqvia_nlp-3.0.0-py3-none-any.whl which you can obtain from the Linguamatics Community Site.

PyPi

When using PyPi, you can install Airflow and the IQVIA NLP Airflow provider by running a pip command like this:

pip install \
  --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-3.2.2/constraints-3.11.txt" \
  "apache-airflow==3.2.2" \
  airflow_provider_iqvia_nlp-3.0.0-py3-none-any.whl

You should run this from a directory containing the Python wheel. It’s good practise to include the Airflow version in this pip command to ensure that Airflow itself isn’t unexpectedly updated or downgraded. It’s also good practise to use the Airflow constraints file that matches your Python version; the example above uses the Python 3.11 constraints, and Python 3.12 installations should use constraints-3.12.txt instead. For more details, refer to Airflow’s PyPi installation documentation.

Docker

When using Docker, you can install the IQVIA NLP Airflow provider by extending the Airflow Docker image. You can use a Dockerfile like this to copy the package into the container and install it with pip:

FROM apache/airflow:3.2.2-python3.11
COPY airflow_provider_iqvia_nlp-3.0.0-py3-none-any.whl .
RUN pip install \
    --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-3.2.2/constraints-3.11.txt" \
    "apache-airflow==3.2.2" \
    airflow_provider_iqvia_nlp-3.0.0-py3-none-any.whl

The Python wheel must be present in the Docker build context. It’s good practise to include the Airflow version in this pip command to ensure that Airflow itself isn’t unexpectedly updated or downgraded. Use the constraints file for the Python version in your Airflow image. For more details, refer to Airflow’s Docker image building documentation.

Other

For other Airflow installation methods, refer to the documentation for that method. For example, to install Airflow providers in Amazon Managed Workflows for Apache Airflow (MWAA), update the requirements.txt file stored in S3.

Installing I2E

For installing I2E, refer to the I2E installation documentation. You should use the latest available version of I2E. The only requirements for using an I2E server with the IQVIA NLP Airflow provider are:

  • Airflow workers must have access to the I2E server’s REST API (port 8334 by default).

  • The I2E server must have a user account with capabilities for running I2E tasks programmatically. These capabilities typically include Administration, Indexing, Ontology Caching, and AMP Query Task.

  • The I2E server must have sufficient resources. For more details, refer to the I2E requirements documentation.