> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/developer/python-sdk/using-the-python-sdk.md).

# Using the Python SDK

The Roboflow Python SDK is a wrapper around the Roboflow REST API, providing abstract methods for interacting with Roboflow in Python code.

The Python SDK offers methods for managing projects and workspaces, uploading and downloading datasets, running inference on models, uploading model weights, and more.

Examples and references for using methods in the Python SDK are documented in the API Reference documentation.

## Resources

* [Installation](https://github.com/roboflow/roboflow-python#-installation) (GitHub)
* [Quickstart](https://github.com/roboflow/roboflow-python#quickstart) (GitHub)
* [Roboflow Python GitHub](https://github.com/roboflow/roboflow-python)
* [Roboflow Python Reference](https://roboflow.github.io/roboflow-python/)

## Installation

The Roboflow Python package requires `Python >=3.10`.

```bash
pip install roboflow
```

### Lite Package

If you only need the [Vision Events SDK](/developer/python-sdk/vision-events.md) and the CLI without heavy image processing dependencies (OpenCV, NumPy, Pillow), install the lightweight variant instead:

```bash
pip install roboflow-slim
```

The `roboflow-slim` package is significantly smaller than the full `roboflow` package because it omits NumPy, OpenCV, Matplotlib, and Pillow. It is well-suited for edge devices, serverless environments, CI/CD pipelines, and microservices that only need vision-event logging or basic CLI operations.

Both packages share the same codebase and API. Code written against `roboflow-slim` works identically against the full `roboflow` package - drop the lighter dependency where you don't need image visualization.

## Quick Reference

The SDK's main objects:

| Class                | What it represents       | Common methods                                                                                             |
| -------------------- | ------------------------ | ---------------------------------------------------------------------------------------------------------- |
| `Roboflow`           | Top-level client         | `workspace()`, `project()`                                                                                 |
| `Workspace`          | A Roboflow workspace     | `list_projects()`, `create_project()`, `upload_dataset()`, `list_workflows()`, `list_folders()`, `trash()` |
| `Project`            | A dataset/project        | `versions()`, `version(n)`, `upload()`, `train()`, `delete()`, `restore()`                                 |
| `Version`            | A frozen dataset version | `download()`, `train()`, `model`, `delete()`, `restore()`                                                  |
| `*.Model` (per task) | A hosted trained model   | `predict()`                                                                                                |

For task-oriented walkthroughs of every public method, browse the rest of this section in the sidebar.

### Microsoft Visual C++ Instructions

Microsoft Visual C++ redistributable, is needed for some Python packages. You can download it from the official Microsoft website:

For x64 systems: <https://aka.ms/vs/16/release/vc_redist.x64.exe>

For x86 systems: <https://aka.ms/vs/16/release/vc_redist.x86.exe>

After downloading the appropriate file, run the installer and follow the prompts to install the redistributable.
