Installation

install install

The easiest way to install is via pip and PyPI

  1. pip install txtai

Python 3.9+ is supported. Using a Python virtual environment is recommended.

Optional dependencies

txtai has the following optional dependencies that can be installed as extras. The patterns below are supported in setup.py install_requires sections.

Note: Extras are provided for convenience. Alternatively, individual packages can be installed to limit dependencies.

All

Install all dependencies.

  1. pip install txtai[all]

ANN

Additional ANN backends.

  1. pip install txtai[ann]

API

Serve txtai via a web API.

  1. pip install txtai[api]

Cloud

Interface with cloud compute.

  1. pip install txtai[cloud]

Console

Command line index query console.

  1. pip install txtai[console]

Database

Additional content storage options.

  1. pip install txtai[database]

Graph

Topic modeling, data connectivity and network analysis.

  1. pip install txtai[graph]

Model

Additional non-standard models.

  1. pip install txtai[model]

Pipeline

All pipelines - default install comes with most common pipelines.

  1. pip install txtai[pipeline]

More granular extras are available for pipeline categories: pipeline-audio, pipeline-data, pipeline-image, pipeline-llm, pipeline-text, and pipeline-train.

Scoring

Additional scoring methods.

  1. pip install txtai[scoring]

Vectors

Additional vector methods.

  1. pip install txtai[vectors]

Workflow

All workflow tasks - default install comes with most common workflow tasks.

  1. pip install txtai[workflow]

Combining dependencies

Multiple dependencies can be specified at the same time.

  1. pip install txtai[pipeline,workflow]

Environment specific prerequisites

Additional environment specific prerequisites are below.

Linux

The AudioStream and Microphone pipelines require the PortAudio system library. The Transcription pipeline requires the SoundFile system library.

macOS

Older versions of Faiss have a runtime dependency on libomp for macOS. Run brew install libomp in this case.

The AudioStream and Microphone pipelines require the PortAudio system library. Run brew install portaudio.

Windows

Optional dependencies require C++ Build Tools

The txtai build workflow occasionally has work arounds for other known but temporary dependency issues. The FAQ also has a list of common problems, including common installation issues.

CPU-only

The default install adds PyTorch with GPU support. There are a number of dependencies that come with that. When running in a CPU-only environment or using Embeddings/LLM models without PyTorch (i.e. llama.cpp or API services), the CPU-only PyTorch package can be installed with txtai as follows.

  1. pip install txtai torch==[version]+cpu \
  2. -f https://download.pytorch.org/whl/torch

Where [version] is the version of PyTorch (such as 2.4.1). The txtai-cpu image on Docker Hub uses this method to reduce the image size.

Install from source

txtai can also be installed directly from GitHub to access the latest, unreleased features.

  1. pip install git+https://github.com/neuml/txtai

Extras can be installed from GitHub by adding #egg=txtai[<name-of-extra>] to the end of the above URL.

Conda

A community-supported txtai package is available via conda-forge.

  1. conda install -c conda-forge txtai

Run with containers

Docker images are available for txtai. See this section for more information on container-based installs.