社内用のChatGPTを用意した話
こんにちは、みてねコールドクターでエンジニアマネージャーをしている遠藤です。
社内用のChatGPTを用意した話をします。
背景
ChatGPTが登場以降、その有用性が認められ、業務改善に繋げられることが多いことが分かってきました。
弊社でもChatGPTを有効活用したいと考えましたが、以下のような問題がありました。
- ChatGPT経由での入力が学習データとして使われる可能性がある
- 法人プランが用意されていないので、個人契約が必要
そこで、社内用のChatGPTを用意することにしました。
検討事項
社内用に用意するにあたり、以下の点を検討しました。
- API経由での利用
- メンバーがAPIキーを扱わなくてもいいようにする
- 気軽に使えるように
- カスタマイズや自前で用意しないようにする
- 変化が激しいため、なるべく環境をすぐ捨てられるようにする
- 社内以外のメンバーがアクセスできないようにする
上記を検討した結果、BetterChatGPT + Cloudflare pages + Cloudflare accessを使うことにしました。
BetterChatGPT
BetterChatGPTを選んだ理由は以下の通りです。
- ChatGPTライクのGUIがある
- systemプロンプトも扱える
- 環境変数にAPIキーの埋め込みが可能
- フォークしてそのままCloudflare pagesにデプロイできる
- DB不要で簡単
Cloudflare pages
Cloudflare pagesを選んだ理由は以下の通りです。
- ホスティングが簡単
- スケーラビリティが高い
- Cloudflare accessを使うことで、社内以外のメンバーがアクセスできないようにできる
Cloudflare access
Cloudflare accessを選んだ理由は以下の通りです。
- Cloudflare pagesと相性がいい
- 50名まで無料で使える
- メンバーのメールアドレスでログインできる
導入
1.Cloudflare pagesの設定
BetterChatGPTをフォークして、privateリポジトリとして社内のみに公開しました。カスタマイズしないのでpublicリポジトリにしても問題ありません。
次に、フォークしたリポジトリをCloudflare pagesに設定します。
ビルドコマンドに yarn build
、デプロイディレクトリに dist
を指定し、VITE_OPENAI_API_KEY
にAPIキーを設定します。
カスタム ドメイン
に設定したいドメイン名を入力します。
2.Cloudflare accessの設定
Cloudflare accessを設定します。
細かい設定は省略しますが、
typeはSELF-HOSTED
に設定し、Application URL
はCloudflare pagesで設定したカスタムドメイン、policyはEmails ending in
に 自社のメールで使っているドメインを設定します。
3.Cloudflare bulk redirectの設定
ドメイン経由のアクセスは制限されていますが、pagesが作成する pages.dev
ではアクセス制限されないので、bulk redirectを設定します。
一括リダイレクト リスト
のソース URLに、pages.dev
ドメインのURLを設定し、宛先 URL
に、Cloudflare pagesで設定したカスタムドメインを設定します。
その後、一括リダイレクトルールの作成
からルールを作成し、リストに先ほど作成したものを選択してください。
有効にすれば、pages.dev
ドメインからアクセスした場合、Cloudflare pagesで設定したカスタムドメインにリダイレクトされます。
まとめ
BetterChatGPT + Cloudflareで簡単に社内用のChatGPTを用意することができました。
ホスティングの手間もなく、またセキュアな環境が簡単に作れたかと思います。
まだまだ社内で使われているとは言い難い状況なので、今後は社内での普及を進めていきたいと思います。
コールドクターでは、LLMを使って業務改善をしてみたいエンジニアを募集中です。
Discussion