Markdownで表示

インストール

LibreYOLOはlibreyoloとしてPyPIで公開されています。基本パッケージは予測、学習、検証と、PyTorch以外を必要としないモデルファミリーに対応し、任意の追加パッケージでその他の機能を導入できます。

パッケージ
libreyolo
Python
3.10以降
コードライセンス
MIT
コア依存関係
PyTorch 2.4以降

インストール

pip
pip install libreyolo
追加パッケージを含める
# 複数を一度にインストールするにはカンマで区切ります。pip install "libreyolo[rfdetr,onnx]"
すべて
pip install "libreyolo[all]"
ソースからインストール
git clone https://github.com/LibreYOLO/libreyolo.gitcd libreyolopip install -e .

Python 3.10以降が必要です。基本インストールにはPyTorch、torchvision、NumPy、Pillow、OpenCV、PyYAML、requests、mss、tqdm、pycocotools、typer、click、safetensors、SciPyが含まれます。このため、YOLOv9や追加依存関係のないその他のファミリーは、pip install libreyoloの直後から動作します。

cloneすると、安定版ブランチreleaseがcheckoutされます。このブランチのコードが本ドキュメントと一致します。未公開の作業を含む統合ブランチはdevです。

任意の追加パッケージ

追加パッケージは角括弧付きの名前で、モデルファミリーまたはエクスポート先に必要な依存関係を追加します。その他は変わらず、追加パッケージの有無にかかわらずAPIは同じです。

モデルファミリー

追加パッケージ追加内容
rfdetrRF-DETRのバックボーンを提供するtransformers
eomttransformers
midasMiDaSのViT-L/16およびEfficientNet-Lite3エンコーダーを提供するtimm 1.0.x
vlmtransformersnum2wordsdecordlmdbpeft
samtransformerstimm
openvocabtransformerstimmregexftfy
sensenovatransformersaccelerateと、macOS以外ではbitsandbytes
modustransformersaccelerate
clip同梱のCLIP text tokenizerに必要なregexftfy
siglip2多言語SigLIP 2 tokenizerに必要なsentencepiece
gazeL2CSチェックポイントの自動ダウンロードを有効にするgdown
rtdetrなし。RT-DETRに追加依存関係はありませんが、名前を安定して維持

エクスポートとランタイム

追加パッケージ追加内容
onnxonnxonnxsimonnxruntime
tensorrtmacOS以外でtensorrt-cu12 10.16.1.11とpycuda
openvinoopenvino
coremlcoremltools
coreaicoreai-torch。macOSのみ
tflite(エイリアスlitertlibreyolo[onnx]に加え、onnx2tfai-edge-litertonnx-graphsurgeononnx-simplifier
mnnlibreyolo[onnx]MNN
ncnnpnnxncnn
paddlelibreyolo[onnx]に加え、paddlepaddle 2.6.2とx2paddle 1.6.0
executorchexecutorch
tritonHTTPおよびHTTPS V2推論用のtritonclient[http]

学習、評価、ロギング

追加パッケージ追加内容
loralora=Trueのファインチューニング用にlibreyolo[rfdetr]peft
plotsmatplotlib
fast-evalC++ COCO評価バックエンドのfaster-coco-eval
tensorboardtensorboard
mlflowmlflow
wandbwandb
cometcomet-ml
clearmlclearml
neptuneneptune-scale
dvclive(エイリアスdvcdvclive

fast-evalが必須依存関係ではなく明示的な追加になっているのは、ビルド済みwheelがないプラットフォームでも通常インストールを失敗させないためです。パッケージがない場合、COCO評価はpycocotoolsへフォールバックし、実行を継続します。

ツール

追加パッケージ追加内容
streamYouTubeページURLの解決にだけ必要なyt-dlp
trackingなし。すべてのtracking依存関係はコア依存関係に含まれる
labellibreyolo labelでクリックによるマスク補助を有効にするlibreyolo[sam]
hub-kernelsコンパイル済みHubカーネル用の任意ローダーkernels。インストールによりRF-DETRの予測が浮動小数点の許容範囲内で変わる可能性についてはカーネルを参照
clip-convert重み変換と同等性確認用のlibreyolo[clip]open_clip_torch
siglip2-convert同じ目的のlibreyolo[siglip2]transformers

Webカメラ、RTSP、RTMP、TCP、UDP、HLS、ローカルのマルチストリームリストに追加パッケージは不要です。必要なのはYouTubeページURLだけです。

集約追加パッケージ

libreyolo[all]はモデル、エクスポート、tracking、ロギングの追加パッケージを1つのコマンドでインストールします。意図的に除外されるものもあります。neptuneは、安定版neptune-scaleがprotobuf 7未満を要求する一方、TFLite経路がprotobuf 7を要求するため除外されます。executorchは組み合わせるPyTorchバージョンを制限し、coreaicoreai-torchがPyTorchを2.11.xへ固定して環境全体をそのバージョンへ移行させるため除外されます。fast-evalhub-kernelsclip-convertsiglip2-convertも含まれません。必要なものを名前でインストールしてください。

プラットフォームの制約

3つの追加パッケージは依存関係マーカーでプラットフォームが限定されています。このためインストール自体はどこでも成功し、wheelが存在しない環境では導入されるものが少なくなります。

追加パッケージ制約
coreaimacOSのみ。Core AIツールチェーンはほかの環境で変換も実行もできない
tensorrtCUDAのないmacOSではスキップ
tflitelitertonnx2tfai-edge-litertにPython 3.12以降が必要

sensenovaはwheelが公開されていないmacOSでbitsandbytesをスキップし、その他は通常どおりインストールします。

ディスク容量が制約なら、その大半はPyTorchで、さらに大半はデフォルトwheelに同梱されるCUDAペイロードです。CPU専用wheelなら機能を失わずにそれを除去できます。PyTorchを一切含めないマシンでONNX物体検出を使う場合は、軽量インストールを参照してください。

GPUとCUDA

デバイスはモデル構築時に選択されます。デフォルトのdevice="auto"は、torch.cuda.is_available()がtrueならCUDA、次にtorch.backends.mps.is_available()がtrueならMetal Performance Shaders、それ以外ではCPUを使用します。ライブラリ内のその他の箇所はハードウェアを検査しないため、PyTorchがGPUを認識できなければLibreYOLOも認識できません。

デバイスを固定するには、モデルまたはpredicttrainvalexportdeviceを渡します。"cpu""cuda""cuda:0""mps"0のような整数、"0"のような数字の文字列を受け付けます。最後の2つはcuda:<n>へ展開されます。

最初にlibreyolo checksを実行してください。PyTorchバージョン、PyTorchのビルド対象CUDAおよびcuDNNバージョン、認識されている各GPUとメモリを表示します。NVIDIA GPUを搭載するマシンでCUDAなしと報告される場合、pipが解決したPyTorch wheelはCPUビルドです。先にPyTorchのインデックスからCUDAビルドをインストールし、次にLibreYOLOをインストールしてください。

bash
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128
pip install libreyolo

これはリポジトリ自身がLinuxとWindowsのuv管理環境で固定しているものと同じインデックスです。CUDA 12.8ランタイムの要件としてNVIDIA driver 555以降が必要です。PyTorchのダウンロードホストはDarwinビルドを公開していないため、macOSではPyPI wheelを維持します。

インストールの確認

CLI
# Python、PyTorch、CUDA、cuDNN、認識されている全GPU、インストール済みの# 任意パッケージを表示します。libreyolo checks
Python
import libreyolo print(libreyolo.__version__)
モデル一覧
# 登録済みの各ファミリーと、タスク、サイズ、入力解像度を表示します。# 追加パッケージがないファミリーには、有効化するpipコマンドも表示されます。libreyolo models

追加パッケージが有効になったか確認する最も速い方法はlibreyolo modelsです。依存関係がないファミリーには、有効化する正確なpipコマンドが表示されます。どちらのコマンドも--jsonを受け付け、同じデータを機械可読オブジェクトとしてstdoutへ表示します。

LibreYOLO v1.5.0で検証済みです。