【AIクリエイティブログ】自作AIチャットボットを無料で世界に公開!APIキー漏洩の失敗から学ぶStreamlit Cloudデプロイ術
1話のキャラクター企画、2話のローカルPC実装に続き、今回は完成した「白雪姫の継母」チャットボットを、インターネットを通じて誰でもアクセスできるように無料でWeb公開(デプロイ)する最終ステップを解説します。開発知識ゼロの事業PMが、GitHubとStreamlit Cloudを使ってURLを発行するまでの手順と、その過程で犯してしまった「APIキー漏洩」という致命的なミスの顛末を赤裸々に共有します。
Key Takeaways:
- 無料で世界に公開する2つのツール: コードをインターネット上に保管する「GitHub(コード用Googleドライブのようなもの)」と、そのコードを読み込んでWebサービスとして実行してくれる「Streamlit Cloud」を連携させます。どちらも無料で利用可能です。
- 「.gitignore」ファイルで情報漏洩を防ぐ: GitHubにプロジェクトをアップロードする際、絶対に公開してはいけない設定ファイル等を指定するのが
.gitignoreです。メモ帳で「.env」とだけ記述したファイルを作成し、フォルダに同梱します。 - APIキー漏洩事故の発生と対処法: ローカル(PC)動作用に
app.pyの中に直接「GEMINI_API_KEY = “実際のキー”」と記述したままGitHubのPublic(公開)リポジトリにアップロードしたため、Googleの検知システムによって即座にAPIキーが強制遮断される事故が起きました。 - コードとAPIキーの安全な分離: 漏洩を防ぐため、
app.py内の記述をst.secrets["GEMINI_API_KEY"]という関数に書き換えます。実際のAPIキーは、GitHubのコード内ではなく、Streamlit Cloudの「Advanced settings(Secrets)」の管理画面に入力して安全に保管させます。 - AI開発のハードルは劇的に下がっている: 企画(1話)、コーディング(2話)、そして世界への公開(3話)まで、AIを適切にディレクションすることで、プログラミング未経験者でもたった1日でグローバルなAIサービス(Queen’s Chamber)をローンチできる時代になりました。
リポジトリの作成手順やStreamlit Cloudの連携画面のキャプチャなど、より具体的なデプロイ(公開)作業のステップは以下のリンクのnote本編にてご確認いただけます。
🔗 [ noteで全文を読む ]