server README

The project's README from github.com/triton-inference-server/server. As one markdown file: README.md.

License

[!WARNING] You are currently on the main branch which tracks under-development progress towards the next release. The current release is version 2.72.0 and corresponds to the 26.08 container release on NVIDIA GPU Cloud (NGC).

Triton Inference Server

Triton Inference Server is an open source inference serving software that streamlines AI inferencing. Triton enables teams to deploy any AI model from multiple deep learning and machine learning frameworks, including TensorRT, PyTorch, ONNX, OpenVINO, Python, RAPIDS FIL, and more. Triton Inference Server supports inference across cloud, data center, edge and embedded devices on NVIDIA GPUs, x86 and ARM CPU, or AWS Inferentia. Triton Inference Server delivers optimized performance for many query types, including real time, batched, ensembles and audio/video streaming. Triton inference Server is part of NVIDIA AI Enterprise, a software platform that accelerates the data science pipeline and streamlines the development and deployment of production AI.

Major features include:

New to Triton Inference Server? Make use of these tutorials to begin your Triton journey!

Join the Triton and TensorRT community and stay current on the latest product updates, bug fixes, content, best practices, and more. Need enterprise support? NVIDIA global support is available for Triton Inference Server with the NVIDIA AI Enterprise software suite.

Serve a Model in 3 Easy Steps

# Step 1: Create the example model repository
git clone -b r26.08 https://github.com/triton-inference-server/server.git
cd server/docs/examples
./fetch_models.sh

# Step 2: Launch triton from the NGC Triton container
docker run --gpus=1 --rm --net=host -v ${PWD}/model_repository:/models nvcr.io/nvidia/tritonserver:26.08-py3 tritonserver --model-repository=/models --model-control-mode explicit --load-model densenet_onnx

# Step 3: Sending an Inference Request
# In a separate console, launch the image_client example from the NGC Triton SDK container
docker run -it --rm --net=host nvcr.io/nvidia/tritonserver:26.08-py3-sdk /workspace/install/bin/image_client -m densenet_onnx -c 3 -s INCEPTION /workspace/images/mug.jpg

# Inference should return the following
Image '/workspace/images/mug.jpg':
    15.346230 (504) = COFFEE MUG
    13.224326 (968) = CUP
    10.422965 (505) = COFFEEPOT

Please read the QuickStart guide for additional information regarding this example. The quickstart guide also contains an example of how to launch Triton on CPU-only systems. New to Triton and wondering where to get started? Watch the Getting Started video.

Examples and Tutorials

Check out NVIDIA LaunchPad for free access to a set of hands-on labs with Triton Inference Server hosted on NVIDIA infrastructure.

Specific end-to-end examples for popular models, such as ResNet, BERT, and DLRM are located in the NVIDIA Deep Learning Examples page on GitHub. The NVIDIA Developer Zone contains additional documentation, presentations, and examples.

Documentation

Build and Deploy

The recommended way to build and use Triton Inference Server is with Docker images.

Using Triton

Preparing Models for Triton Inference Server

The first step in using Triton to serve your models is to place one or more models into a model repository. Depending on the type of the model and on what Triton capabilities you want to enable for the model, you may need to create a model configuration for the model.

Configure and Use Triton Inference Server

Client Support and Examples

A Triton client application sends inference and other requests to Triton. The Python and C++ client libraries provide APIs to simplify this communication.

Extend Triton

Triton Inference Server's architecture is specifically designed for modularity and flexibility

Additional Documentation

Contributing

Contributions to Triton Inference Server are more than welcome. To contribute please review the contribution guidelines. If you have a backend, client, example or similar contribution that is not modifying the core of Triton, then you should file a PR in the contrib repo.

Reporting problems, asking questions

We appreciate any feedback, questions or bug reporting regarding this project. When posting issues in GitHub, follow the process outlined in the Stack Overflow document. Ensure posted examples are:

For issues, please use the provided bug report and feature request templates.

For questions, we recommend posting in our community GitHub Discussions.

For more information

Please refer to the NVIDIA Developer Triton page for more information.

server (triton-inference-server/server)

Searching Database…

11.1K ·GitHub
这是什么?Triton Inference Server 是一个开源的推理服务系统,用于部署由 TensorRT、PyTorch、ONNX、OpenVINO、Python 和 RAPIDS FIL 等框架训练好的 AI 模型,并通过 HTTP/REST 或 gRPC 处理推理请求。
这是我可以导入的库,还是独立服务器?它是一个独立的服务器进程:你把模型放进模型仓库,Triton 通过 HTTP/REST 或 gRPC 对外提供服务;另外还提供可选的 C 和 Java 接口,用于进程内链接。
我该如何让它跑起来?推荐通过 NGC 提供的 Docker 镜像运行,按照快速入门指南操作:先把模型放进模型仓库,然后启动 Triton 容器,并指向该仓库。
运行它一定需要 NVIDIA GPU 吗?不需要。Triton 同时支持 GPU 和 CPU 部署;快速入门指南中包含在纯 CPU 系统上启动 Triton 的示例,它还支持 x86/ARM CPU 以及 AWS Inferentia。
所有后端在每个平台上都能用吗?不能。并非每个后端都支持所有目标平台;你需要查看后端-平台支持矩阵,确认哪些后端(TensorRT、PyTorch、ONNX、OpenVINO 等)可用于你的环境。
这个产品面向谁?面向需要在云端、数据中心、边缘和嵌入式设备上大规模部署生产模型的机器学习/人工智能团队;它也作为 NVIDIA AI Enterprise 的一部分对外商业提供,并附带企业级支持。
它能同时运行多个模型或多个模型阶段吗?可以。Triton 通过集成模型(Ensembling)和业务逻辑脚本(BLS)支持模型流水线,可以把多个模型以及前处理、后处理步骤串联成一个请求流程。
我能添加自己的自定义推理后端吗?可以。Triton 允许你用 C/C++ 或 Python 创建自定义后端,包括解耦后端(decoupled backend),它可以针对一次请求返回多个响应,或不返回响应。
面对大量同时到达的请求,它如何高效处理?它使用并发模型执行、动态批处理,以及带隐式状态管理的序列批处理(适用于有状态模型),以最大化吞吐量和 GPU 利用率。
我能监控服务器性能吗?可以。Triton 提供 GPU 利用率、服务器吞吐量和服务器延迟等指标,并包含 Performance Analyzer 和 Model Analyzer 工具,用于性能剖析和优化。
Size
39.7 MB
Stars
11.1K
Age
8y
Commits · 90 Days