You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# This workflow performs markdown processing as part of prepare release
2
+
# It only runs if markdown files are changed.
3
+
#
4
+
# This uses the same name and job name as prepare-release.yml.
5
+
# There is a branch protection status check that requires a workflow
6
+
# with this name to pass. Since thes both only run under certain conditions,
7
+
# they both have to share the same name so that at least one of them runs.
8
+
#
9
+
# Othewise the pull can never be merged because no status check runs.
10
+
# This is described here: https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks
11
+
name: Prepare to release nlp-insights
12
+
on:
13
+
pull_request:
14
+
types: [opened, synchronize, labeled, reopened]
15
+
branches:
16
+
- main
17
+
paths:
18
+
- 'docs/**.md'
19
+
20
+
jobs:
21
+
prepare-release:
22
+
# Don't change this Name, must match prepare-release.yml and a status check
Copy file name to clipboardexpand all lines: .github/workflows/prepare-release.yml
+22-1
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,26 @@
1
+
# This workflow performs the container image build as part of prepare release
2
+
# It runs if any files other than markdown files are changed.
3
+
#
4
+
# This uses the same name and job name as prepare-doc-release.yml.
5
+
# There is a branch protection status check that requires a workflow
6
+
# with this name to pass. Since thes both only run under certain conditions,
7
+
# they both have to share the same name so that at least one of them runs.
8
+
#
9
+
# Othewise the pull can never be merged because no status check runs.
10
+
# This is described here: https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks
1
11
name: Prepare to release nlp-insights
2
12
on:
3
13
pull_request:
4
14
types: [opened, synchronize, labeled, reopened]
5
15
branches:
6
16
- main
17
+
paths-ignore:
18
+
- 'docs/**.md'
7
19
8
20
jobs:
9
21
prepare-release:
22
+
# Don't change this name, must match prepare-doc-release.yml,
23
+
# must match status check name
10
24
name: Prepare release
11
25
runs-on: ubuntu-latest
12
26
@@ -68,7 +82,14 @@ jobs:
68
82
69
83
- name: Docker Lint
70
84
run: dockerlint
71
-
85
+
# We don't want to continue this build and indicate success if something
86
+
# is wrong with the docs. This is usually a quick operation so doing it
87
+
# even if no documentation changed is not a problem, we'll always publish the
88
+
# docs, because that is where the charts get archived.
Copy file name to clipboardexpand all lines: README.md
+14-33
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
# NLP Insights
2
-
A Rest service for updating bundles of FHIR resources with discovered insights.
2
+
A reference implementation of a rest service to update bundles of FHIR resources with discovered insights.
3
3
The service is implemented as a Flask API within a docker container.
4
4
5
5
## Purpose
@@ -9,47 +9,28 @@ The primary purpose of the discover insights API is to accept a bundle of FHIR r
9
9
* New resources may have been derived from unstructured text (such as clinical notes) contained within the bundle's resources.
10
10
- For example a DiagnosticReport that says *the patient had a myocardial infarction* might result in a derived Condition resource being added to the bundle.
11
11
12
-
13
-
## Supported NLP Engines
14
-
The nlp-insights service requires an NLP engine service to perform NLP related tasks. We support two NLP services.
15
-
16
-
* IBM's [Annotator for Clinical Data (ACD)](https://www.ibm.com/cloud/watson-annotator-for-clinical-data) and
Our tutorials describe how to setup and configure nlp-insights with a supported NLP service. They also provide extensive description of how resources are derived and enriched:
22
-
23
-
*[Tutorial for using the nlp-insights service with QuickUMLS](./docs/examples/quickumls/quickumls_tutorial.md)
24
-
*[Tutorial for using the nlp-insights service with ACD](./docs/examples/acd/acd_tutorial.md)
25
-
26
-
27
-
## Running the service locally
28
-
The docker image for the container has been published, and you can pull it from [here](https://hub.docker.com/r/alvearie/nlp-insights).
29
-
30
-
Developers that have cloned the repo should follow the instructions for starting the service that are documented [here](./docs/examples/setup/start_nlp_insights.md).
13
+
You can pull the latest release from quay.io.
31
14
32
-
Although discouraged, it is possible to [run the service outside of a docker container](./docs/developer/run_service_no_docker.md).
15
+
The tag of the container image is always associated with the release tag for the git repo.
16
+
In other words, to run the service for release v0.0.6 on local port 8998, you could execute:
33
17
34
-
## Kubernetes
35
-
The nlp-insights service is designed to be part of a larger health-patterns ingestion and enrichment pipeline. Helm charts are included so that the service can be deployed to kubernetes. The deployed service can then be integrated into a pipeline.
18
+
```
19
+
docker login quay.io
20
+
docker run -p 8998:5000 quay.io/alvearie/nlp-insights:0.0.6
21
+
```
36
22
37
-
More details on deployment and configuration in a k8s environment are discussed [here](./docs/developer/kubernetes.md)
23
+
The container's tag does not include a leading "v". The available tags can be accessed [here](https://quay.io/repository/alvearie/nlp-insights?tab=tags). We recommend loading images with tags that are associated with tagged releases in GitHub.
38
24
39
-
## HTTP Endpoints
40
-
The HTTP APIs for the service are described [here](./docs/developer/http_endpoints.md).
41
-
These APIs allow you to:
25
+
Example use cases, APIs, and buid documentation can be found in our official product [documentation](#documentation).
42
26
43
-
* Define the connection to the NLP engine service(s),
44
-
* Select the default NLP engine that will be used for insight discovery
45
-
* Discover insights
46
-
* Override the default engine and use a different NLP engine for one or more resource types
27
+
It's also very easy to build the container from source code, and the directions to do that can be found in the documentation.
47
28
48
-
## Build
49
-
We use gradle for all build and test related tasks. The important features are documented[here](./docs/developer/gradle_tasks.md).
29
+
## Documentation
30
+
The official documentation is located[here](https://linuxforhealth.github.io/nlp-insights)
50
31
51
32
## Contributing
52
-
We welcome contributions! Please look at our [contributing guide](./docs/developer/CONTRIBUTING.md) for details on how to begin.
33
+
We welcome contributions! Please look at our [documentation](#documentation) for details on how to begin.
0 commit comments