Spaces:
Sleeping
Sleeping
| title: test | |
| emoji: 🚀 | |
| colorFrom: blue | |
| colorTo: green | |
| sdk: gradio | |
| sdk_version: 4.42.0 | |
| app_file: work/spaces/test/app.py | |
| pinned: false | |
| > 🔔上記はHuggingfaceのSpacesの設定です。 | |
| Spacesを作成する場合は各リポジトリごとに以上を書き換えてください。 | |
| 詳細な説明は[Huggingface Spacesの設定](#huggingface-spacesの設定)にて記載しています。 | |
| # 🚀 Almondo PoC Template | |
| このリポジトリは、PoCプロジェクトのための包括的なテンプレートです。本READMEでは、プロジェクトのセットアップから開発プロセス、ディレクトリ構造まで、詳細かつ分かりやすく説明します。 | |
| ## 📑 目次 | |
| - [🚀 Almondo PoC Template](#-almondo-poc-template) | |
| - [📑 目次](#-目次) | |
| - [🛠 セットアップ](#-セットアップ) | |
| - [前提条件](#前提条件) | |
| - [セットアップ手順](#セットアップ手順) | |
| - [Dockerの基本操作](#dockerの基本操作) | |
| - [パッケージの管理](#パッケージの管理) | |
| - [🔄 開発の手順](#-開発の手順) | |
| - [開発フロー](#開発フロー) | |
| - [📂 ディレクトリ構造](#-ディレクトリ構造) | |
| - [主要ディレクトリの説明](#主要ディレクトリの説明) | |
| - [`work/`](#work) | |
| - [`data/`](#data) | |
| - [VSCode上での作業(Dev container)](#vscode上での作業dev-container) | |
| - [前提条件](#前提条件-1) | |
| - [🔧 セットアップ手順](#-セットアップ手順) | |
| - [1️⃣ 拡張機能のインストール](#1️⃣-拡張機能のインストール) | |
| - [2️⃣ プロジェクトを開く](#2️⃣-プロジェクトを開く) | |
| - [3️⃣ Dev Containerの設定](#3️⃣-dev-containerの設定) | |
| - [4️⃣ Dev Container内でプロジェクトを再オープン](#4️⃣-dev-container内でプロジェクトを再オープン) | |
| - [5️⃣ 開発開始](#5️⃣-開発開始) | |
| - [Huggingface Spacesの設定](#huggingface-spacesの設定) | |
| ## 🛠 セットアップ | |
| #### 前提条件 | |
| - git,dockerのインストール | |
| #### セットアップ手順 | |
| 1. **リポジトリのクローン** | |
| ```bash | |
| git clone [リポジトリのurl] | |
| cd [ディレクトリ名] | |
| ``` | |
| 2. **デフォルトブランチの確認** | |
| ```bash | |
| git branch | |
| ``` | |
| > 💡 `develop`ブランチがアクティブであることを確認してください。 | |
| ``` | |
| * develop | |
| main | |
| ``` | |
| 3. **環境設定ファイルの作成** | |
| ```bash | |
| cp .env.dev.template .env.dev | |
| ``` | |
| > ⚠️ `.env.dev`ファイルを編集し、必要な環境変数を設定してください。 | |
| 4. **Dockerコンテナの起動** | |
| ```bash | |
| docker-compose run development bash | |
| ``` | |
| > 🔔 初回実行時はイメージのビルドが行われるため、時間がかかる場合があります。 | |
| 5. **パッケージのインストール** | |
| ```bash | |
| poetry install | |
| ``` | |
| > 📘 これにより、`pyproject.toml`に定義された全ての依存パッケージがインストールされます。 | |
| ### Dockerの基本操作 | |
| | コマンド | 説明 | | |
| | -------------------------------------- | -------------------------- | | |
| | `docker ps` | 実行中のコンテナ一覧を表示 | | |
| | `docker compose exec development bash` | 実行中のコンテナに接続 | | |
| | `docker-compose down` | コンテナを停止し削除 | | |
| ### パッケージの管理 | |
| Poetryを使用してパッケージを管理します。 | |
| - **パッケージの追加**: | |
| ```bash | |
| poetry add [パッケージ名] | |
| ``` | |
| - **パッケージの削除**: | |
| ```bash | |
| poetry remove [パッケージ名] | |
| ``` | |
| - **lock fileの更新**: | |
| ```bash | |
| poetry lock | |
| ``` | |
| > 📝 パッケージの追加や削除を行った後は必ずlock fileを更新して、poetry.lockとpyproject.tomlの差分をコミットしてください | |
| ## 🔄 開発の手順 | |
| 本プロジェクトでは、効率的かつ体系的な開発を行うため、Issue driven開発手法を採用しています。 | |
| > 📚 詳細は[Issue driven運用のドキュメント](https://www.notion.so/Issue-driven-5378336f66c243f7933b52a15ce15ee7)をご参照ください。 | |
| ### 開発フロー | |
| 1. **Issueの作成** | |
| - リポジトリの「Issues」タブから新規Issueを作成 | |
| - タスクの詳細、目的、期待される結果を明確に記述 | |
| 2. **ブランチの作成** | |
| 作成したIssueからGUI上でbranchを作成してください | |
| - 命名規則: | |
| - 新機能追加: `feature/[機能名]` | |
| - バグ修正/改善: `fix/[修正内容]` | |
| 3. **開発作業** | |
| GUI上で作成したbranchをローカルにfetchします | |
| ```bash | |
| git fetch origin | |
| git checkout [branch名] | |
| ``` | |
| - コードの実装 | |
| - ユニットテストの作成・実行 | |
| 4. **変更内容のコミットとプッシュ** | |
| blackとisortをコミット前に実行 | |
| ```bash | |
| isort . | |
| black . | |
| git add . | |
| git commit -m "commit message" | |
| git push origin [branch名] | |
| ``` | |
| 6. **プルリクエスト(PR)の作成** | |
| - GitHub上で「Compare & pull request」ボタンをクリック | |
| - PRの説明を記入する | |
| 7. **コードレビュー** | |
| - PjMがコードをチェック | |
| - フィードバックがある場合は修正を行い、再度プッシュ | |
| 8. **マージと後処理** | |
| - レビュー承認後、GUI上で`develop`ブランチにマージ | |
| - GUI上で作業ブランチの削除 | |
| > 💡 **Tip**: 常に`develop`ブランチの最新状態を維持するよう心がけましょう。作業開始前に以下のコマンドを実行することをおすすめします: | |
| > ```bash | |
| > git checkout develop | |
| > git pull origin develop | |
| > git switch [branch名] | |
| > git merge —no-ff develop | |
| > ``` | |
| ## 📂 ディレクトリ構造 | |
| ``` | |
| root/ | |
| ├── .github/ | |
| │ └── workflows/ # CI/CDワークフロー定義 | |
| │ └── pysen-python-app.yaml | |
| ├── data/ # データ関連ファイル (Gitで管理されません) | |
| │ ├── models/ # 学習済みモデル (.pth等) | |
| │ ├── preprocessed/ # 前処理済みデータ (CSV等) | |
| │ ├── raw/ # 生データ (提供されたExcel等) | |
| │ └── results/ # 解析結果 | |
| ├── work/ # プロジェクトのメインコード | |
| │ ├── example/ # デモやサンプルコード | |
| │ ├── experiments/ # 実験用コード | |
| │ ├── src/ # 共通ライブラリやユーティリティ | |
| │ └── tests/ # テストコード | |
| ├── .env.dev.template # 開発環境変数テンプレート | |
| ├── .gitignore # Git除外設定 | |
| ├── Dockerfile # Dockerイメージ定義 | |
| ├── README.md # プロジェクト説明 (本ファイル) | |
| ├── docker-compose.yml # Docker Compose設定 | |
| ├── entrypoint.sh # Dockerエントリーポイントスクリプト | |
| ├── poetry.lock # 依存関係ロックファイル | |
| ├── pyproject.toml # Poetryプロジェクト設定 | |
| └── LICENSE # ライセンス情報 | |
| ``` | |
| ### 主要ディレクトリの説明 | |
| #### `work/` | |
| - **example/**: クリーンなデモ用コード、Spaces用スクリプトなど | |
| - **experiments/**: 実験的コードや一時的なスクリプト | |
| - **src/**: プロジェクト共通の基本クラスやユーティリティ | |
| - **tests/**: 単体テストコード | |
| #### `data/` | |
| - **models/**: 学習済みモデル(.pthファイルなど) | |
| - **preprocessed/**: 前処理済みデータ(CSVやテキストファイル) | |
| - **raw/**: 元データ(提供されたExcelファイルなど) | |
| - **results/**: 各タスクの出力結果 | |
| > ⚠️ 注意: `data/`ディレクトリの内容はGitで管理されません。dataディレクトリからdata.zipファイルに圧縮しgoogledriveにて保管してください。 | |
| ## VSCode上での作業(Dev container) | |
| vscode上でdocker環境で作業する方法に[Dev container]という拡張機能があるのでご紹介します | |
| ### 前提条件 | |
| 以下のツールがインストールされていることを確認してください: | |
| - ✅ [Visual Studio Code](https://code.visualstudio.com/) | |
| - ✅ [Docker Desktop](https://www.docker.com/products/docker-desktop) (起動済みであること) | |
| ### 🔧 セットアップ手順 | |
| #### 1️⃣ 拡張機能のインストール | |
| <details> | |
| <summary>詳細手順を表示</summary> | |
| 1. VSCodeを開く | |
| 2. 左サイドバーの拡張機能アイコン(🧩)をクリック(または `Ctrl+Shift+X` / `Cmd+Shift+X`) | |
| 3. 検索バーに "Remote Development" と入力 | |
| 4. 表示された拡張機能をインストール | |
|  | |
| </details> | |
| #### 2️⃣ プロジェクトを開く | |
| <details> | |
| <summary>詳細手順を表示</summary> | |
| 1. VSCodeで開発したいプロジェクトのフォルダを開く(`File > Open Folder`) | |
| </details> | |
| #### 3️⃣ Dev Containerの設定 | |
| <details> | |
| <summary>詳細手順を表示</summary> | |
| 1. コマンドパレットを開く(`Ctrl+Shift+P` または `Cmd+Shift+P`) | |
| 2. "Dev containers:Add Dev Containers Configuration Files..." と入力し選択 | |
| 3. プロジェクトに適したテンプレートを選択(例:Python, Node.js など) | |
|  | |
| </details> | |
| #### 4️⃣ Dev Container内でプロジェクトを再オープン | |
| <details> | |
| <summary>詳細手順を表示</summary> | |
| 1. コマンドパレットを再度開く | |
| 2. "Dev-Containers: Reopen in Container" を選択 | |
| 3. VSCodeがコンテナをビルドし、プロジェクトを開くのを待つ | |
|  | |
| </details> | |
| #### 5️⃣ 開発開始 | |
| - 🎉 コンテナ内でVSCodeが起動したら、開発を開始できます | |
| - 💻 ターミナルも自動的にコンテナ内で動作します | |
| 🔗 詳細情報は[公式VSCode Dev Containersドキュメント](https://code.visualstudio.com/docs/remote/containers)をご覧ください。 | |
| ## Huggingface Spacesの設定 | |
| 以下の設定を書き換えてくささい | |