Skip to content

Commit

Permalink
Misc documentation fixes (nv-morpheus#547)
Browse files Browse the repository at this point in the history
* Includes changes from PR nv-morpheus#538 
* Fixes casing for proper nouns (NVIDIA, Docker, Triton, Python, Conda) when not referring to a command
* Document `StreamPair` (docstrings for globals need to appear after the definition)
* Other fixes suggested by Zenobia
* Brings grade up from an A to A+
* Fixes CSS theme issue nv-morpheus#543 
* Various fixes to the `getting_started.md` doc fixes nv-morpheus#539
* Fixes issue with the `docker/run_container_*.sh` scripts for users who have the Nvidia Container Toolkit installed but does not have nvidia set as the default runtime
* Documents launching a pre-built Morpheus container
* Fix errant entry in docstring for `AppShieldSource` which was showing up in the command line help
* Documentation work-around for nv-morpheus#475
* Fix a few remaining references to 'srf'

Authors:
  - David Gardner (https://github.com/dagardner-nv)
  - https://github.com/bsuryadev
  - Bhargav Suryadevara (https://github.com/bsuryadevara)

Approvers:
  - Christopher Harris (https://github.com/cwharris)
  - Michael Demoret (https://github.com/mdemoret-nv)

URL: nv-morpheus#547
  • Loading branch information
dagardner-nv authored Dec 16, 2022
1 parent d3c54ff commit 987e6bf
Show file tree
Hide file tree
Showing 41 changed files with 662 additions and 615 deletions.
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ morpheus/_version.py export-subst
tests/mock_triton_server/payloads/** filter=lfs diff=lfs merge=lfs -text
tests/tests_data/** filter=lfs diff=lfs merge=lfs -text
examples/basic_usage/img/** filter=lfs diff=lfs merge=lfs -text
docs/source/img/* filter=lfs diff=lfs merge=lfs -text
2 changes: 1 addition & 1 deletion .pylintrc
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ analyse-fallback-blocks=no
# A comma-separated list of package or module names from where C extensions may
# be loaded. Extensions are loading into the active Python interpreter and may
# run arbitrary code.
extension-pkg-allow-list=srf,morpheus._lib
extension-pkg-allow-list=mrc,morpheus._lib

# A comma-separated list of package or module names from where C extensions may
# be loaded. Extensions are loading into the active Python interpreter and may
Expand Down
422 changes: 1 addition & 421 deletions CONTRIBUTING.md

Large diffs are not rendered by default.

12 changes: 10 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,25 @@ See the License for the specific language governing permissions and
limitations under the License.
-->

![NVIDIA Morpheus](./img/morpheus-banner.png "Morpheus banner image")
![NVIDIA Morpheus](./docs/source/img/morpheus-banner.png "Morpheus banner image")

# NVIDIA Morpheus

NVIDIA Morpheus is an open AI application framework that provides cybersecurity developers with a highly optimized AI framework and pre-trained AI capabilities that allow them to instantaneously inspect all IP traffic across their data center fabric. The Morpheus developer framework allows teams to build their own optimized pipelines that address cybersecurity and information security use cases. Bringing a new level of security to data centers, Morpheus provides development capabilities around dynamic protection, real-time telemetry, adaptive policies, and cyber defenses for detecting and remediating cybersecurity threats.

## Documentation
### Using Morpheus
* [Getting Started with Morpheus](./docs/source/getting_started.md) - Using pre-built Docker containers, building Docker containers from source, and fetching models and datasets
* [Morpheus CLI Overview](./docs/source/basics/overview.rst) - Brief overview of the `morpheus` command line interface
* [Building a Pipeline](./docs/source/basics/building_a_pipeline.rst) - Introduction to building a pipeline using the command line interface
* [Morpheus Examples](./examples.md) - Example pipelines using both the Python API and command line interface
* [Developer Guides](./docs/source/developer_guide/guides.md) - Covers extending Morpheus with custom stages
* [Deployment Guide](./docs/source/cloud_deployment_guide.md) - Kubernetes and cloud based deployments

### Modifying Morpheus
* [Contributing to Morpheus](./CONTRIBUTING.md) - Covers building from source, making changes and contributing to Morpheus

### Deploying Morpheus
* [Deployment Guide](./docs/source/cloud_deployment_guide.md) - Kubernetes and cloud based deployments


Full documentation for the latest official release is available at [https://docs.nvidia.com/morpheus/](https://docs.nvidia.com/morpheus/).
2 changes: 1 addition & 1 deletion ci/conda/recipes/morpheus/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ outputs:
- python {{ python }}
- rapidjson 1.1
- scikit-build >=0.12
- srf {{ minor_version }}
- mrc {{ minor_version }}
- versioneer-518
run:
# Runtime only requirements. This + setup.y is the definitive runtime requirement list
Expand Down
2 changes: 1 addition & 1 deletion ci/scripts/github/docs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ rapids-logger "Pulling LFS assets"
cd ${MORPHEUS_ROOT}

git lfs install
${MORPHEUS_ROOT}/scripts/fetch_data.py fetch docs
${MORPHEUS_ROOT}/scripts/fetch_data.py fetch docs examples

rapids-logger "Installing Documentation dependencies"
mamba env update -f ${MORPHEUS_ROOT}/docs/conda_docs.yml
Expand Down
2 changes: 1 addition & 1 deletion docker/conda/environments/cuda11.5_dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ name: morpheus
channels:
- rapidsai
- nvidia
- nvidia/label/dev # For pre-releases of SRF. Should still default to full releases if available
- nvidia/label/dev # For pre-releases of MRC. Should still default to full releases if available
- nvidia/label/cuda-11.5.2 # For cuda-nvml-dev=11.5, which is not published under nvidia channel yet.
- conda-forge
dependencies:
Expand Down
2 changes: 1 addition & 1 deletion docker/run_container_dev.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ DOCKER_IMAGE_NAME=${DOCKER_IMAGE_NAME:-"morpheus"}
DOCKER_IMAGE_TAG=${DOCKER_IMAGE_TAG:-"dev-$(date +'%y%m%d')"}
DOCKER_EXTRA_ARGS=${DOCKER_EXTRA_ARGS:-""}

DOCKER_ARGS="--env WORKSPACE_VOLUME=${PWD} -v $PWD:/workspace --net=host --gpus=all --cap-add=sys_nice"
DOCKER_ARGS="--runtime=nvidia --env WORKSPACE_VOLUME=${PWD} -v $PWD:/workspace --net=host --gpus=all --cap-add=sys_nice"

if [[ -z "${SSH_AUTH_SOCK}" ]]; then
echo -e "${y}No ssh-agent auth socket found. Dependencies in private git repos may fail during build.${x}"
Expand Down
2 changes: 1 addition & 1 deletion docker/run_container_release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ DOCKER_IMAGE_NAME=${DOCKER_IMAGE_NAME:-"nvcr.io/nvidia/morpheus/morpheus"}
DOCKER_IMAGE_TAG=${DOCKER_IMAGE_TAG:-"$(git describe --tags --abbrev=0)-runtime"}
DOCKER_EXTRA_ARGS=${DOCKER_EXTRA_ARGS:-""}

DOCKER_ARGS="--env WORKSPACE_VOLUME=${PWD} -v $PWD/models:/workspace/models --net=host --gpus=all --cap-add=sys_nice ${DOCKER_EXTRA_ARGS}"
DOCKER_ARGS="--runtime=nvidia --env WORKSPACE_VOLUME=${PWD} -v $PWD/models:/workspace/models --net=host --gpus=all --cap-add=sys_nice ${DOCKER_EXTRA_ARGS}"

if [[ -z "${SSH_AUTH_SOCK}" ]]; then
echo -e "${y}No ssh-agent auth socket found. Dependencies in private git repos may fail during build.${x}"
Expand Down
4 changes: 3 additions & 1 deletion docs/source/_static/omni-style.css
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,12 @@

/* Width of template */


.wy-nav-content {
max-width: 1200px !important;
max-width: 97% !important;
}


/* Alert Boxes */

/* Background color Note Box */
Expand Down
24 changes: 0 additions & 24 deletions docs/source/api.rst

This file was deleted.

3 changes: 1 addition & 2 deletions docs/source/basics/building_a_pipeline.rst
Original file line number Diff line number Diff line change
Expand Up @@ -101,5 +101,4 @@ This indicates you need a stage that converts from the output type of the ``dese
Available Stages
^^^^^^^^^^^^^^^^

For a complete list of available stages, please use the CLI help commands. Which stages are available can also be
queried from the CLI using ``morpheus run pipeline-nlp --help`` or ``morpheus run pipeline-fil --help``.
For a complete list of available stages, use the CLI help commands. The available stages can also be queried from the CLI using ``morpheus run pipeline-nlp --help`` or ``morpheus run pipeline-fil --help``.
8 changes: 4 additions & 4 deletions docs/source/basics/overview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
See the License for the specific language governing permissions and
limitations under the License.

Overview
========
Morpheus CLI Overview
=====================

This section focuses on the Morpheus CLI and illustrates how the CLI can be used to configure and run a Morpheus
Pipeline.
Expand All @@ -29,7 +29,7 @@ together. At a high level, the CLI is broken up into two main sections:
* ``run``
* For running NLP or FIL pipelines.
* ``tools``
* Tools/Utilities to help setup, configure and run pipelines and external resources
* Tools/Utilities to help set up, configure and run pipelines and external resources

Users can get help on any command by passing ``--help`` to a command or sub-command. For example, to get help on the
tools:
Expand Down Expand Up @@ -67,7 +67,7 @@ queried in the same manner:
AutoComplete
------------

The Morpheus CLI supports bash, fish, zsh, and powershell autocompletion. To setup autocomplete, it must first be
The Morpheus CLI supports bash, fish, zsh, and powershell autocompletion. To set up autocomplete, it must first be
installed. Morpheus comes with a tool to assist with this:

.. code-block:: console
Expand Down
2 changes: 1 addition & 1 deletion docs/source/cloud_deployment_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -620,7 +620,7 @@ kubectl -n $NAMESPACE exec -it deploy/broker -c broker -- kafka-console-producer
**Note**: This should be used for development purposes only via this developer kit. Loading from the file into Kafka should not be used in production deployments of Morpheus.

### Run FIL Anomalous Behavior Profiling Pipeline
The following Anomalous Behavior Profiling pipeline examples use a pre-trained FIL model to ingest and analyze Nvidia System Management Interface (nvidia-smi) logs, like the example below, as input sample data to identify crypto mining activity on GPU devices.
The following Anomalous Behavior Profiling pipeline examples use a pre-trained FIL model to ingest and analyze NVIDIA System Management Interface (nvidia-smi) logs, like the example below, as input sample data to identify crypto mining activity on GPU devices.

```json
{"nvidia_smi_log.gpu.pci.tx_util": "0 KB/s", "nvidia_smi_log.gpu.pci.rx_util": "0 KB/s", "nvidia_smi_log.gpu.fb_memory_usage.used": "3980 MiB", "nvidia_smi_log.gpu.fb_memory_usage.free": "12180 MiB", "nvidia_smi_log.gpu.bar1_memory_usage.total": "16384 MiB", "nvidia_smi_log.gpu.bar1_memory_usage.used": "11 MiB", "nvidia_smi_log.gpu.bar1_memory_usage.free": "16373 MiB", "nvidia_smi_log.gpu.utilization.gpu_util": "0 %", "nvidia_smi_log.gpu.utilization.memory_util": "0 %", "nvidia_smi_log.gpu.temperature.gpu_temp": "61 C", "nvidia_smi_log.gpu.temperature.gpu_temp_max_threshold": "90 C", "nvidia_smi_log.gpu.temperature.gpu_temp_slow_threshold": "87 C", "nvidia_smi_log.gpu.temperature.gpu_temp_max_gpu_threshold": "83 C", "nvidia_smi_log.gpu.temperature.memory_temp": "57 C", "nvidia_smi_log.gpu.temperature.gpu_temp_max_mem_threshold": "85 C", "nvidia_smi_log.gpu.power_readings.power_draw": "61.77 W", "nvidia_smi_log.gpu.clocks.graphics_clock": "1530 MHz", "nvidia_smi_log.gpu.clocks.sm_clock": "1530 MHz", "nvidia_smi_log.gpu.clocks.mem_clock": "877 MHz", "nvidia_smi_log.gpu.clocks.video_clock": "1372 MHz", "nvidia_smi_log.gpu.applications_clocks.graphics_clock": "1312 MHz", "nvidia_smi_log.gpu.applications_clocks.mem_clock": "877 MHz", "nvidia_smi_log.gpu.default_applications_clocks.graphics_clock": "1312 MHz", "nvidia_smi_log.gpu.default_applications_clocks.mem_clock": "877 MHz", "nvidia_smi_log.gpu.max_clocks.graphics_clock": "1530 MHz", "nvidia_smi_log.gpu.max_clocks.sm_clock": "1530 MHz", "nvidia_smi_log.gpu.max_clocks.mem_clock": "877 MHz", "nvidia_smi_log.gpu.max_clocks.video_clock": "1372 MHz", "nvidia_smi_log.gpu.max_customer_boost_clocks.graphics_clock": "1530 MHz", "nvidia_smi_log.gpu.processes.process_info.0.process_name": "python", "nvidia_smi_log.gpu.processes.process_info.1.process_name": "tritonserver", "hostname": "ip-10-100-8-98", "timestamp": 1615542360.9566503}
Expand Down
2 changes: 1 addition & 1 deletion docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@
BUILTIN_STL_SUPPORT = YES
DOT_IMAGE_FORMAT = svg
EXCLUDE_PATTERNS = */tests/* */include/nvtext/* */__pycache__/*
EXCLUDE_SYMBOLS = "@85" "cudf*" "py::literals" "RdKafka" "srf*" "std*"
EXCLUDE_SYMBOLS = "@85" "cudf*" "py::literals" "RdKafka" "mrc*" "std*"
EXTENSION_MAPPING = cu=C++ cuh=C++
EXTRACT_ALL = YES
FILE_PATTERNS = *.c *.cc *.cpp *.h *.hpp *.cu *.cuh *.md
Expand Down
1 change: 0 additions & 1 deletion docs/source/developer_guide/contributing.md

This file was deleted.

Loading

0 comments on commit 987e6bf

Please sign in to comment.