1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人開発で GenStudio というAI生成ワークスペースを作ってみました

1
Posted at

はじめに

個人開発で GenStudio というAI生成ワークスペースを作ってみました。

GenStudio logo

AI画像生成やAI動画生成を触っていると、モデルやワークフローそのものも面白いのですが、それを「普通の人が使えるアプリ」としてまとめるところに別の難しさがあると感じました。

たとえば、ComfyUI のワークフローは開発者にとっては自由度が高くて便利です。一方で、ユーザーにそのまま見せると、ノード、パラメータ、実行状態、失敗時の扱いなどが少し難しくなります。

GenStudio は、その間を埋めるために作ってみたプロジェクトです。

この記事では、宣伝というよりも、

  • 何を作っているのか
  • どんな構成で作っているのか
  • どんな人に使ってもらえる可能性があるのか
  • 今どこに難しさを感じているのか

を、開発メモとしてまとめます。

GenStudio で解決したいこと

GenStudio でやりたいことは、ざっくり言うと AI生成ワークフローを、プロダクトとして扱いやすい形にすること です。

具体的には、次のようなことを目指しています。

  • 画像生成や画像から動画生成をWeb UIから実行できるようにする
  • ComfyUI のワークフローをアプリ側の入力フォームと接続する
  • 生成中、成功、失敗、再実行などの状態を見えるようにする
  • 生成履歴を残す
  • WebだけでなくAndroidアプリからも一部機能を使えるようにする
  • 将来的に自分のブランドや用途に合わせて変更できるコードベースにする

AI生成のアプリは、単にフォームを作ってAPIを呼ぶだけでは終わりません。

生成に時間がかかることもありますし、失敗することもあります。GPUコストもあります。モデルやワークフローを変えたくなることもあります。

そのあたりを、できるだけアプリ側で扱いやすくしたいと思っています。

大まかな仕組み

細かい実装の話はまた別の記事にしますが、GenStudio は大まかには次のような役割に分けて作っています。

Web画面
  ↓
生成リクエストを受け取る部分
  ↓
履歴や設定を管理する部分
  ↓
AI生成ワークフロー

Androidアプリ
  ↓
同じ生成機能につなぐ

Web側では、ダッシュボード、生成画面、履歴、アカウントまわりなど、ユーザーが触る部分を作っています。

裏側では、生成リクエストを受け取ったり、履歴を残したり、AI生成ワークフローにつないだりします。

Android側は、Webと完全に同じ機能を全部持たせるというより、スマホから使いやすい生成フローを選んで実装するイメージです。

ComfyUI をそのまま見せない理由

ComfyUI はとても強力ですが、ユーザー向けサービスとして考えると、そのまま見せるのが常に最適とは限らないと思っています。

開発者はノードを見れば処理の流れを理解できます。でも、一般ユーザーや非エンジニアのクリエイターにとっては、必要なのは「何を入力すれば、どんな結果が返ってくるか」です。

そこで GenStudio では、次のように役割を分けたいと考えています。

  • ユーザーにはシンプルなフォームやボタンを見せる
  • アプリ内部で入力値をワークフロー用パラメータに変換する
  • ComfyUI 側で実際の生成処理を行う
  • 生成結果と履歴はアプリ側で管理する

この分離ができると、UIを変えずにワークフローだけ差し替えたり、逆にワークフローはそのままで画面だけ改善したりしやすくなります。

想定しているユーザー

まだ開発途中ですが、もし使ってもらえるとしたら、次のような人に合うかもしれません。

  • AI画像生成やAI動画生成を使った小さなサービスを作りたい個人開発者
  • クライアント向けにAI生成ツールを作りたい制作会社
  • ComfyUI のワークフローを、もう少し使いやすいUIで提供したい人
  • AI生成アプリを作るときの全体像を見たい人
  • AI生成サービスのプロトタイプを早めに立ち上げたい人

逆に、完全に管理されたSaaSを期待している人には向いていません。

GPU環境、モデル選定、運用コスト、ライセンス確認などは、プロジェクトごとにきちんと考える必要があります。

難しいと感じているところ

作っていて特に難しいと感じているのは、次のような部分です。

  • 生成待ち時間をどう自然に見せるか
  • 失敗した生成をどう扱うか
  • エラーをユーザーに分かりやすく伝えること
  • 生成コストを意識した設計にすること
  • ワークフローごとの入力項目をどう整理するか
  • WebとAndroidで体験をどこまで揃えるか
  • 技術的な複雑さをユーザーに見せすぎないこと

普通のWebアプリよりも、「待つ時間」や「失敗したとき」の見せ方が重要だと感じています。

「生成中です」と表示するだけなら簡単ですが、ユーザーが不安にならないようにするには、進行状況、履歴、再実行、失敗時の説明などが必要になります。

ソースコードとしてまとめている理由

最初は自分用のツールとして作っていました。

ただ、AI生成アプリを作りたい人にとって、最初の形があると少し役に立つかもしれないと思うようになりました。

もちろん、これを使えばすぐに何でも成功する、というものではありません。

AI生成サービスは、技術だけでなく、運用、コスト、ユーザー体験、権利関係なども考える必要があります。

それでも、ゼロから全部を作るよりは、参考実装や出発点として意味があるかもしれないと思っています。

今後改善したいこと

今後は、次のようなところを少しずつ改善したいです。

  • 設定画面をもっと分かりやすくする
  • エラー表示を改善する
  • 再実行や履歴管理を使いやすくする
  • スマホから使える生成機能を増やす
  • セットアップ手順をもっと丁寧にする
  • 小さなチームでも運用しやすい構成にする
  • 生成コストを意識したUIを作る

特に、AI生成アプリは「作ること」よりも「運用し続けること」のほうが難しくなりそうだと感じています。

もし興味がある方へ

まだまだ改善中ですが、AI生成ワークスペースや、自分のブランドで使える生成アプリに興味がある方がいれば、フィードバックをもらえるとうれしいです。

詳しい構成やライセンスについては、こちらにまとめています。

この記事自体は、まずは「こういうものを作ってみました」という紹介と開発メモです。

同じようにAI生成アプリを作っている方や、AI生成ツールをもっと使いやすい形にしたい方の参考になればうれしいです。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?