Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Docs: /start #936

Draft
wants to merge 34 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
c05ffb6
Docs /start Section Scaffolding
yeldarby Jan 12, 2025
27fb5bf
Line breaks
yeldarby Jan 12, 2025
7224bfc
Fix broken link
yeldarby Jan 12, 2025
500d9fa
Add install section to the start landing page
yeldarby Jan 12, 2025
e6f8ff3
Glossary stub
yeldarby Jan 12, 2025
72c1051
Capitalization
yeldarby Jan 13, 2025
fe54740
Add architecture content
yeldarby Jan 13, 2025
dbe12f7
Add features content
yeldarby Jan 13, 2025
d1a29e5
Add Alternatives content
yeldarby Jan 14, 2025
c6204b3
Fill in Glossary
yeldarby Jan 14, 2025
f872e54
Merge branch 'main' into docs/start
yeldarby Jan 14, 2025
8712d96
Fix font size
yeldarby Jan 14, 2025
61be52b
Fix bullet points
yeldarby Jan 14, 2025
ed58419
Update colors
yeldarby Jan 14, 2025
5a31020
Adjust h1 color and footer margin
yeldarby Jan 14, 2025
2acb97b
Self-Hosting docs index
yeldarby Jan 14, 2025
0018339
Add Linux install instructions
yeldarby Jan 14, 2025
4858daa
Add TensorRT info
yeldarby Jan 14, 2025
d86f3b6
Add Windows and Mac install content
yeldarby Jan 14, 2025
791361b
Add other devices install section
yeldarby Jan 14, 2025
1d8dc43
Add jetson install instructions, fix windows commands
yeldarby Jan 14, 2025
cc8e726
Merge branch 'main' into docs/start
yeldarby Jan 14, 2025
d93c705
Add Raspberry Pi install docs
yeldarby Jan 15, 2025
5b9a4c0
Add tip
yeldarby Jan 15, 2025
013efa5
Copy edits
yeldarby Jan 15, 2025
04a3b1f
Copy edits
yeldarby Jan 15, 2025
49ddd30
Add architecture diagrams
yeldarby Jan 15, 2025
905a393
Merge branch 'main' into docs/start
yeldarby Jan 15, 2025
a0b20b4
Add Getting Started guide
yeldarby Jan 15, 2025
7aa5d26
Add addendum includes
yeldarby Jan 15, 2025
5a1ba7d
Add comparison matrix
yeldarby Jan 15, 2025
49515b2
add docs
capjamesg Jan 16, 2025
3584c50
Start of resources page
yeldarby Jan 17, 2025
c4bb2db
Merge branch 'main' into docs/start
yeldarby Jan 17, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ Workflows allow you to extend simple model predictions to build computer vision

## 📟 connecting via api

Once you've installed Infernece, your machine is a fully-featured CV center.
Once you've installed Inference, your machine is a fully-featured CV center.
You can use its API to run models and workflows on images and video streams.
By default, the server is running locally on
[`localhost:9001`](http://localhost:9001).
Expand Down Expand Up @@ -201,9 +201,11 @@ via the Roboflow UI.

## 🔑 connect to the cloud

Without an API Key, you can access a wide range of pre-trained and foundational models and run Workflows via our JSON API.
Without an API Key, you can access a wide range of pre-trained and foundational models and run public Workflows.

Pass an optional [Roboflow API Key](https://app.roboflow.com/settings/api) to the `inference_sdk` or API to access additional features.
Pass an optional [Roboflow API Key](https://app.roboflow.com/settings/api) to the `inference_sdk` or API to access additional features enhanced by Roboflow's Cloud
platform. When running with an API Key, usage is metered according to
Roboflow's [pricing tiers](https://roboflow.com/pricing).

| | Open Access | With API Key |
|-------------------------|-------------|--------------|
Expand Down Expand Up @@ -361,7 +363,7 @@ This is untested and performance improvements are not guaranteed.
<details>
<summary><b>Other Edge Devices</b></summary>
<br />
Roboflow has <a href="https://docs.roboflow.com/deploy/supported-deployment-devices">SDKs for running object detection natively</a> on other deployment targets like <a href="https://docs.roboflow.com/deploy/sdks/web-browser">Tensorflow.js in a web browser</a>, <a href="https://docs.roboflow.com/deploy/sdks/mobile-ios-on-device">Native Swift on iOS</a> via CoreML, and <a href="https://docs.roboflow.com/deploy/sdks/luxonis-oak">Luxonis OpenCV AI Kit (OAK)</a>.
Roboflow has <a href="https://docs.roboflow.com/deploy/supported-deployment-devices">SDKs for running object detection natively</a> on other deployment targets like <a href="https://docs.roboflow.com/deploy/sdks/web-browser">Tensorflow.js in a web browser</a>, <a href="https://docs.roboflow.com/deploy/sdks/mobile-ios-on-device">Native Swift on iOS</a> via CoreML, and <a href="https://docs.roboflow.com/deploy/sdks/lens-studio">Snap Lens Studio</a>.
<br /><br />
Connect to an Inference Server via its API for additional functionality beyond object detection (like running Workflows).
<br />
Expand Down
1 change: 1 addition & 0 deletions docs/images/architecture/appliance.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/images/architecture/microservice.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/images/architecture/pipeline.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/inputs/images.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Image Files
1 change: 1 addition & 0 deletions docs/inputs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Getting Images and Video into Inference
1 change: 1 addition & 0 deletions docs/inputs/industrial/basler.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Use a Basler Camera with Inference
1 change: 1 addition & 0 deletions docs/inputs/industrial/flir.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Use a FLIR Camera with Inference
1 change: 1 addition & 0 deletions docs/inputs/industrial/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Industrial and Machine Vision Cameras
1 change: 1 addition & 0 deletions docs/inputs/industrial/lucid.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Use a Lucid Camera with Inference
4 changes: 4 additions & 0 deletions docs/inputs/rtsp/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Streaming over RTSP

The easiest way to stream video from most security cameras
or IP cameras is over RTSP.
1 change: 1 addition & 0 deletions docs/inputs/rtsp/reolink.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# RTSP from a Reolink Camera
1 change: 1 addition & 0 deletions docs/inputs/rtsp/unifi.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# RTSP from a Ubiquiti UniFi Camera
1 change: 1 addition & 0 deletions docs/inputs/video.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Recorded Video Files
1 change: 1 addition & 0 deletions docs/inputs/webcam.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Using a Webcam
71 changes: 71 additions & 0 deletions docs/install/cloud/aws.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Deploy on AWS

You can run Roboflow Inference on machines hosted on Amazon Web Services.

This is ideal if you want to benefit from all of the features Inference has to offer but also want to manage your own cloud infrastructure.

## Set up an AWS EC2 instance

To get started, you will need an EC2 instance running on AWS.

For deploying instances, we recommend SkyPilot, a tool designed to help you set up cloud instances for AI projects.

To get started, run the following command on your own machine:

```
pip install inference "skypilot[gcp,aws]"
```

Follow the [SkyPilot AWS documentation](https://docs.skypilot.co/en/latest/getting-started/installation.html#cloud-account-setup) to authenticate with AWS

Then, run:

```
inference cloud deploy --provider aws --compute-type gpu
```

This will provision a GPU-capable instance in AWS.

The latest version of Roboflow Inference will be automatically installed on the machine.

When the command has run, you should see a message like:

```
Deployed Roboflow Inference to aws on gpu, deployment name is ...
To get a list of your deployments: inference status
To delete your deployment: inference undeploy ...
To ssh into the deployed server: ssh ...
The Roboflow Inference Server is running at http://34.66.116.66:9001
```

You can then use the API endpoint for your server for use in running models.

You can run any model that Inference supports, including object detection, segmentation, classification, and keypoint models that you have available on Roboflow, and foundation models like CLIP, PaliGemma, SAM-2, and more.

## Run inference

You can run inference with Roboflow models using the following code:

```python
from inference_sdk import InferenceHTTPClient

# initialize the client
CLIENT = InferenceHTTPClient(
api_url="https://yourendpoint.com"
api_key="YOUR_API_KEY"
)

# infer on a local image
result = CLIENT.infer("YOUR_IMAGE.jpg", model_id="counting-screws/3")
```

Replace:

1. The API URL with your AWS EC2 instance IP and port.
2. API Key with your Roboflow API key.
3. YOUR_IMAGE with the image you want to run inference on.
4. Your model ID with your [Roboflow model ID](https://docs.roboflow.com/api-reference/workspace-and-project-ids).

You can also run Roboflow Workflows on your deployment.

[Learn how to run Workflows with Inference](http://127.0.0.1:8000/start/getting-started/#install-the-sdk).
71 changes: 71 additions & 0 deletions docs/install/cloud/azure.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Deploy on Azure

You can run Roboflow Inference on machines hosted on Azure.

This is ideal if you want to benefit from all of the features Inference has to offer but also want to manage your own cloud infrastructure.

## Set up an Azure Cloud Compute VM

To get started, you will need a cloud compute instance running on Azure.

For deploying instances, we recommend SkyPilot, a tool designed to help you set up cloud instances for AI projects.

To get started, run the following command on your own machine:

```
pip install inference "skypilot[azure]"
```

Follow the [SkyPilot Azure documentation](https://docs.skypilot.co/en/latest/getting-started/installation.html#cloud-account-setup) to authenticate with AWS

Then, run:

```
inference cloud deploy --provider azure --compute-type gpu
```

This will provision a GPU-capable instance in Azure.

The latest version of Roboflow Inference will be automatically installed on the machine.

When the command has run, you should see a message like:

```
Deployed Roboflow Inference to azure on gpu, deployment name is ...
To get a list of your deployments: inference status
To delete your deployment: inference undeploy ...
To ssh into the deployed server: ssh ...
The Roboflow Inference Server is running at http://34.66.116.66:9001
```

You can then use the API endpoint for your server for use in running models.

You can run any model that Inference supports, including object detection, segmentation, classification, and keypoint models that you have available on Roboflow, and foundation models like CLIP, PaliGemma, SAM-2, and more.

## Run inference

You can run inference with Roboflow models using the following code:

```python
from inference_sdk import InferenceHTTPClient

# initialize the client
CLIENT = InferenceHTTPClient(
api_url="https://yourendpoint.com"
api_key="YOUR_API_KEY"
)

# infer on a local image
result = CLIENT.infer("YOUR_IMAGE.jpg", model_id="counting-screws/3")
```

Replace:

1. The API URL with your Azure instance IP and port.
2. API Key with your Roboflow API key.
3. YOUR_IMAGE with the image you want to run inference on.
4. Your model ID with your [Roboflow model ID](https://docs.roboflow.com/api-reference/workspace-and-project-ids).

You can also run Roboflow Workflows on your deployment.

[Learn how to run Workflows with Inference](/start/getting-started/#install-the-sdk).
71 changes: 71 additions & 0 deletions docs/install/cloud/gcp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Deploy on Google Cloud Platform

You can run Roboflow Inference on machines hosted on Google Cloud Platform (GCP).

This is ideal if you want to benefit from all of the features Inference has to offer but also want to manage your own cloud infrastructure.

## Set up a Google Cloud Compute VM

To get started, you will need a cloud compute instance running on GCP.

For deploying instances, we recommend SkyPilot, a tool designed to help you set up cloud instances for AI projects.

To get started, run the following command on your own machine:

```
pip install inference "skypilot[gcp]"
```

Follow the [SkyPilot GCP documentation](https://docs.skypilot.co/en/latest/getting-started/installation.html#cloud-account-setup) to authenticate with AWS

Then, run:

```
inference cloud deploy --provider gcp --compute-type gpu
```

This will provision a GPU-capable instance in GCP.

The latest version of Roboflow Inference will be automatically installed on the machine.

When the command has run, you should see a message like:

```
Deployed Roboflow Inference to gcp on gpu, deployment name is ...
To get a list of your deployments: inference status
To delete your deployment: inference undeploy ...
To ssh into the deployed server: ssh ...
The Roboflow Inference Server is running at http://34.66.116.66:9001
```

You can then use the API endpoint for your server for use in running models.

You can run any model that Inference supports, including object detection, segmentation, classification, and keypoint models that you have available on Roboflow, and foundation models like CLIP, PaliGemma, SAM-2, and more.

## Run inference

You can run inference with Roboflow models using the following code:

```python
from inference_sdk import InferenceHTTPClient

# initialize the client
CLIENT = InferenceHTTPClient(
api_url="https://yourendpoint.com"
api_key="YOUR_API_KEY"
)

# infer on a local image
result = CLIENT.infer("YOUR_IMAGE.jpg", model_id="counting-screws/3")
```

Replace:

1. The API URL with your GCP instance IP and port.
2. API Key with your Roboflow API key.
3. YOUR_IMAGE with the image you want to run inference on.
4. Your model ID with your [Roboflow model ID](https://docs.roboflow.com/api-reference/workspace-and-project-ids).

You can also run Roboflow Workflows on your deployment.

[Learn how to run Workflows with Inference](/start/getting-started/#install-the-sdk).
13 changes: 13 additions & 0 deletions docs/install/cloud/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Deploy in Your Own Cloud

You can run Roboflow Inference on major cloud platforms like AWS, Azure, or GCP.

Deploying in your own cloud is ideal if you want to manage the infrastructure behind your deployment.

Roboflow Inference has an integration with SkyPilot that makes deploying a cloud instance to run Inference as quick as running one command after you have authenticated with your cloud provider.

Read our deployment guides for more information:

- [Set up Inference with AWS](/install/cloud/aws/)
- [Set up Inference with Azure](/install/cloud/azure/)
- [Set up Inference with GCP](/install/cloud/gcp/)
10 changes: 10 additions & 0 deletions docs/install/enterprise-considerations.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## Enterprise Considerations

[A Helm Chart](https://github.com/roboflow/inference/tree/main/inference/enterprise/helm-chart)
is available for enterprise cloud deployments. Enterprise networking solutions to support
deployment in OT networks are also available upon request.

Roboflow also offers customized support and installation packages and
[a pre-configured Jetson-based edge device](https://roboflow.com/hardware)
suitable for rapid prototyping. [Contact our sales team](https://roboflow.com/sales)
if you're part of a large organization and interested in learning more.
43 changes: 43 additions & 0 deletions docs/install/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Local Installation

Inference is built to be run at the edge. It loads and executes model
weights and does computation locally. It can run fully offline (once
model weights are downloaded) but it's often useful to maintain a
network connection for interfacing with outside systems (like PLCs on
the local network, or remote systems for storing data and sending
notifications).

## Run via Docker

The preferred way to use Inference is via Docker
(see [Why Docker](/understand/architecture/#why-docker)).

[Install Docker](https://docs.docker.com/engine/install/) (and
[NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html)
for GPU acceleration if you have a CUDA-enabled GPU). Then run:

```bash
pip install inference-cli
inference server start
```

The `inference server start` command attempts to automatically choose
and configure the optimal container to optimize performance on your machine.


!!! Tip
Special installation notes and performance tips by device are also available.
Browse the navigation on the left for detailed install guides.

## Dev Mode

The `--dev` parameter to `inference server start` starts in development mode.
This spins up a companion Jupyter notebook server with a quickstart guide on
[`localhost:9002`](http://localhost:9002). Dive in there for a whirlwind tour
of your new Inference Server's functionality!

```bash
inference server start --dev
```

--8<-- "docs/install/using-your-new-server.md"
Loading
Loading