Skip to content

NEXTAltair/LoRAIro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

993 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LoRAIro - AIタグ付LoRA画像データセット準備ツール

概要

本プロジェクトは、LoRA(Low-Rank Adaptation)学習用の画像データセット作成を自動化するPythonツールです。画像のリサイズ、AI自動タグ付け、キャプション生成、データベース管理などの機能を統合的に提供し、効率的なデータセット作成をサポートします。

主な機能

  • 画像処理: 画像のリサイズ、フォーマット変換、自動クロップなどを行います。
  • メタデータ管理: 画像のメタデータをSQLiteデータベースで管理します。
  • タグ・キャプション生成: GPT-4、Claude、Geminiなどの各種AIモデルを使用して、画像のタグとキャプションを自動生成します。
  • バッチ処理: 大量の画像を効率的に処理するためのバッチ処理機能を提供します。
  • ファイルシステム管理: 処理された画像や生成されたデータの保存を体系的に管理します。
  • GUIインターフェース: PySide6による使いやすいワークフロー中心のインターフェースを提供します。
  • 非同期処理: Qt QRunnable/QThreadPoolベースの効率的な非同期タスク実行システムを搭載します。

開発環境セットアップ

必要条件

  • Python 3.12以上
  • Git (Git LFSを含む)
  • uv (Pythonパッケージマネージャー)

インストール手順

  1. リポジトリをクローンします:

    git clone https://github.com/NEXTAltair/lorairo.git
    cd lorairo
  2. サブモジュールを初期化します:

    git submodule update --init --recursive
  3. 環境セットアップ:

    uv sync

使用方法

uv run lorairo

プロジェクト構造

lorairo/
├── .vscode/                # VS Code設定
├── local_packages/         # ローカルパッケージ(サブモジュール)
│   ├── genai-tag-db-tools/  # タグデータベース管理ツール
│   └── image-annotator-lib/ # 画像アノテーションライブラリ
├── src/                    # ソースコード
│   └── lorairo/            # メインパッケージ
│       ├── __init__.py
│       ├── main.py         # エントリーポイント
│       ├── config/         # 設定管理
│       ├── database/       # データベース操作
│       ├── gui/            # GUIコンポーネント
│       ├── image/          # 画像処理
│       └── utils/          # ユーティリティ
├── tests/                  # テストコード
│   ├── __init__.py
│   └── resources/          # テスト用リソース
├── docs/                   # ドキュメント
├── .env.example            # 環境変数の例
├── pyproject.toml          # プロジェクト設定
└── README.md               # 本ファイル

設定

.env ファイルを作成し、必要なAPI キーなどを設定します(.env.example を参照)。アプリケーション内の設定画面からも多くのオプションを設定できます。

開発者向け情報

  • 開発には VS Code の使用を推奨します。.vscode/lorairo.code-workspace を使用すると便利です。
  • リンターとフォーマッターには Ruff を使用しています。
  • テストは pytest で実行します:pytest

開発コマンド

プロジェクトではMakefileを使用して開発タスクを自動化しています:

# ヘルプの表示
make help

# 開発環境のセットアップ
make install-dev  # uv sync を実行

# コードの品質チェック
make lint
make format

# テストの実行
make test

# ドキュメントのビルドと公開
make docs
make docs-publish

# クリーンアップ
make clean

ライセンス

MIT

謝辞

本プロジェクトは以下のリソースに感謝します:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors