Story Teller は、入力画像に基づいてストーリーを生成する Streamlit アプリケーションです。これは、Hugging Face Transformers ライブラリと Salesforce BLIP 画像キャプション モデルを利用します。
必要な依存関係をインストールするには、次のコマンドを実行します。
pip install -r requirements.txt
必要な依存関係がrequirements.txt
ファイルで指定されていることを確認してください。
アプリケーションを使用するには、次の手順に従います。
次のコマンドを実行して、Streamlit アプリケーションを実行します。
streamlit run app.py
コンソールで指定された URL を介してアプリケーションにアクセスします。
アプリケーション インターフェイスには、「Story Teller」というタイトルと、「画像をアップロードしてストーリーを取得する」という指示が表示されます。
[ここにファイルをアップロード...] ボタンをクリックして画像ファイル (サポートされている形式: PNG、JPEG、JPG) を選択します。
画像がアップロードされると、ページに表示されます。
アプリケーションは、Salesforce BLIP 画像キャプション モデルを使用してアップロードされた画像を処理し、画像のテキストによる説明を生成します。
生成されたテキストは Hugging Face API に渡され、テキストに基づいてストーリーが生成されます。
アプリケーションは、生成されたストーリーをページに表示します。
処理中にエラーが発生した場合は、ページにエラー メッセージが表示され、再試行できます。
アプリケーションがストーリー生成モデルにアクセスするには、Hugging Face からの API トークンが必要です。 API トークンを取得するには、次の手順に従います。
https://huggingface.co/ で Hugging Face アカウントにサインアップまたはログインします。
ログインしたら、アカウント設定に移動し、「API トークン」セクションに移動します。
新しい API トークンを生成してコピーし、 text_model.py
のModels
クラスの"your api key"
プレースホルダーを実際の API トークンに置き換えます。
text_model.py
のModels
クラスは、アプリケーションの機能をカプセル化します。これには次のメソッドが含まれています。
__init__()
:
img2text(url)
:
story(payload)
:
chain(payload, num=0)
:
story()
メソッドを再帰的に呼び出し、必要な数のストーリー (この場合は 50) が生成されるまでペイロードを更新します。それに応じて進行状況バーも更新されます。 興味があり、バックエンド モデルだけを試してみたい場合は、次のコマンドを実行します。
python text_model.py
インストールのセクションで説明したように、必要な依存関係がインストールされていることを確認してください。
Story Teller アプリケーションへの貢献は大歓迎です。問題を見つけた場合、または改善のための提案がある場合は、お気軽に問題をオープンするか、プル リクエストを送信してください。