# コントリビューションガイド

本プロジェクトにはまだ多くの未完成の部分があります。

以下の分野でリポジトリへの貢献をお待ちしています。上記の作業を完了し、PRを提出してコミュニティと共有する意志がある場合、レビュー後、プロジェクトのホームページで貢献を認識します。

## モデルアルゴリズム

- モデル量子化推論のサポート (Int4量子化プロジェクト)
- モデルのファインチューニングデータロードの最適化（既存のdecordツールの置き換え）

## モデルエンジニアリング

- モデルのファインチューニング例 / 最適なプロンプトの実践
- 異なるデバイスでの推論適応（例: MLXフレームワーク）
- モデルに関連するツール
- CogVideoXオープンソースモデルを使用した、完全にオープンソースの最小プロジェクト

## コード標準

良いコードスタイルは一種の芸術です。本プロジェクトにはコードスタイルを標準化するための `pyproject.toml`
設定ファイルを用意しています。以下の仕様に従ってコードを整理してください。

1. `ruff` ツールをインストールする

```shell
pip install ruff
```

次に、`ruff` ツールを実行します

```shell
ruff check tools sat inference
```

コードスタイルを確認します。問題がある場合は、`ruff format` コマンドを使用して自動修正できます。

```shell
ruff format tools sat inference
```

コードが標準に準拠したら、エラーはなくなるはずです。

## 命名規則

1. 英語名を使用してください。ピンインや他の言語の名前を使用しないでください。すべてのコメントは英語で記載してください。
2. PEP8仕様に厳密に従い、単語をアンダースコアで区切ってください。a、b、cのような名前は使用しないでください。
