Skip to main content

A framework for distributed text analysis using gRPC and microservices-based architecture.

Project description

MTAP

nlpie.github.io/mtap

Microservice Text Analysis Platform

MTAP is a framework for distributed text analysis using gRPC and microservices-based architecture. MTAP is used to create independent, scalable, interoperable text analysis pipeline components in either Python or Java.

Requirements

  • Operating System: We test on Ubuntu 22.04 and MacOS Big Sur, but other UNIX-like distributions should work.
  • Python 3.7+ We test on Python 3.7 and the latest stable version of Python.
  • Optional: Java 8+ (If you want to create Java Processors) We test on Java 8 and the latest stable version of Java.
  • Optional: Go 13+ if you want to run the RESTful API Gateway.

Features

Ease of Use

MTAP takes care of all the communication between different components, and provides a distributed object model for text analysis artifacts. All you have to worry about is writing the text analysis code.

Flexibility

By using the microservice pattern, text analysis components can be deployed once and then mixed and matched in different pipelines. Components written in different languages can interoperate without hassle. We also provide a RESTful API gateway that lets you call components using HTTP.

Scalability

MTAP is designed to bridge the gap between prototyping new ideas and deploying them into a production environment. It supports calling components locally without using any network infastructure all the way up to deploying services and using service discovery via Consul to build pipelines.

Getting started

Installation

Python

pip install mtap

Java

Gradle:

implementation 'edu.umn.nlpie:mtap:1.0.0-rc5'

Maven:

<dependency>
  <groupId>edu.umn.nlpie</groupId>
  <artifactId>mtap</artifactId>
  <version>1.0.0-rc5</version>
</dependency>

Instructions

We make getting started tutorials available on our project website for both Python and Java.

About Us

MTAP is developed at the University of Minnesota by the NLP/IE Group in the Institute for Health Informatics.

Acknowledgements

Funding for this work was provided by:

  • 1 R01 LM011364-01 NIH-NLM
  • 1 R01 GM102282-01A1 NIH-NIGMS
  • U54 RR026066-01A2 NIH-NCRR

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mtap-1.0.0rc5.tar.gz (364.7 kB view hashes)

Uploaded Source

Built Distribution

mtap-1.0.0rc5-py3-none-any.whl (115.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page