2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
リンクをコピー
記事をブックマーク
松本勇気氏(以下、松本):佐藤さんが気をつけたことと、ベストプラクティスをお願いします。
佐藤将高氏(以下、佐藤):僕の観点から言うと、ChatGPTのAPIを使う時に、OpenAIなのかOpen APIなのか「今どっちを言ったっけ?」とわからなくなるので、そこがすごく気をつけたほうがいいことの1個目です。
松本:だいぶしょうもない(笑)。
(一同笑)
佐藤:それは冗談で、僕らがリリースした当初にものすごく気をつけたことを言うと、海外の深夜帯ですかね。(深夜帯)になると、実はOpenAI社のところで使用量がものすごく上がったりしていて、「夜中にサーバー障害が起きているから使えないものがあるんですけど」みたいなことがありました。最近はもしかしたら解消しかけているのかもしれませんが、直近でOpenAI社のAPIを使うと発生する課題がありました。
そこをどうしても回避したいのであれば、これは宣伝でもなく案件でもないのですが、「Azureを使いましょう」みたいなところがあります。ここが気をつけるべきところです。
あと、プロンプトエンジニアリングをメチャクチャがんばった結果、わかったことは、諦めないで、気合いと根性でプロンプトエンジニアリングをメンバーががんばり続けることです。リリースの段階になって、「これが出てくるんだ!」みたいな、その入力を期待していなかったところでインジェクションが起こって、何でもChatGPTの機能で聞けちゃうぞみたいな状態になっちゃう。
どうやってそのプロンプトインジェクションを回避するかというところで、当時はものすごく対策していました。最近はベストプラクティスがだんだん出始めてきているので、そこまで気にしなくてもいいのかなと(思います)。気にしなくてもいいというか、「これを守っていればいいよね」というやり方が出ているので、そのあたりを調べると回避しやすくなってくるかなと思います。
なので、ベストプラクティスとしては、本当に気合いと根性でプロンプトに向き合い続けることが、ものすごく大事な施策かな。施策というかChatGPTとの向き合い方で言うと、そこが大事かなと思ったりします。
松本:ちなみに実際にtoCでサービスを出されているじゃないですか。
佐藤:はい。
松本:すごく気になったのが、実際にtoCで出すとリクエスト数もそれなりに来るじゃないですか。例えばコスト面を考えた時に、どれくらいのリクエストを受けていいものなのか。同時リクエスト数など、そのあたりの学びというか、ちょっと「財布やばいな」みたいな焦りなどは出なかったですか?
佐藤:そうですね。結論を言うと、GPT-3.5はリクエストがメチャクチャ安くて、「やべーな。10万円とか100万円くらいいくかな」と思っていたのですが、確か1万円いかなかったくらいです。何千円ぐらいで全部を捌ききったので、人件費のほうがいくなとか(笑)。そっち側のほうが強かったですかね。
松本:デイリーで数千円ぐらい?
佐藤:いや、トータルの施策でそんなもんなので、そこまでリクエストというかお金を使わずに実現できるのが便利でした。
松本:コストを削るためにトークン数を削るなど、工夫はしていたんですか?
佐藤:いや、まったくやっていなくて。けっこう大きめのやつを投げたから、50万円とか100万円とかいく可能性があるかもと、ちょっとドキドキしながら結果を待とうかと思ったら、「あれ? ぜんぜんいかないじゃん」みたいな。なので、GPT-3.5の場合はものすごく安かったですね。
松本:パフォーマンスなどは大丈夫でしたか? 同時リクエスト数などで悩んだりとか。
佐藤:そこも大丈夫でしたね。結局、先ほどお話しした、海外のサーバーと夜の時間帯のところが一番大きくて、それ以外では一定きちんと返ってきたかなというところです。ほかの工夫としては、どれくらいいっぱい投げられるかがわからなかったので、1日あたり3回までその機能を使えますよと機能を制限した上で、大丈夫そうだなと思ったら解放するかというように変えていましたね。
松本:なるほど。じゃあそれほど、そこでは問題がないということですね。
松本:「Azure OpenAI Service」を使っていると、1モデルあたりのリクエスト数のクォータがけっこう激しく厳しいという話も出ていたので、そのあたりが引っかかったりしなかったということで、リクエスト数が思ったほどヘビーに叩かれるわけでもなかった感じなんですか?
佐藤:そうですね。うちはAzureがまだ入っていなくて、OpenAIのAPIを使っているので、そこの制限はかからず、うまくピークのタイミングを乗り切ったかなというところです。
松本:OpenAIのAPIだと、そもそもクォータとかはなくて、無限に叩ける感じですか?
佐藤:そうです。
松本:なるほど。無限に叩けるそうです。ただ、今聞いたテクニックに関連して、Azure OpenAI Serviceで使う時と、OpenAIで使う時に差分が(あって)、例えばAzureだと、GPT-4のモデルを独立してデプロイするんですけど、デプロイされたモデルでは、たぶん独立したリソースになっていて、おそらくクォータの範囲内であれば安定してリクエストにきちんと対応してくれるという話はありました。
なので、もし安定性などを気にする場合は、各クラウドベンダーが用意しているものを活用するほうが良いのかもなと思います。そして先ほど金杉さんがおっしゃっていましたが、規約数ですね。情報の管理規約などはすごく重要になってくるので、クラウドベンダーがたぶんこれからどんどん出してくると思うんです。
その時にそれぞれのモデルがどんどん出てきたら、おそらく個人情報保護などもある程度、例えばISMSに準拠していろいろ整理されては来るんだろうなと思いますが、そのあたりはけっこう活用されていく感じなんですか?
金杉優樹氏(以下、金杉):そうですね。Azureのほうが対応してくれるんじゃないかなという期待がやはりあります。Azureの担当者に「東京リージョンは作らないんですか?」「お願いしますよ」と言ったのですが、Azureのほうこそ僕らにお願いをしてきたんですよ。「日本でいっぱい使ってくれる会社が増えれば、本社が割り当ててくれるだろうから、それを待ってくれ」という感じだったので、みんないっぱい使っていきましょう。
(一同笑)
松本:呼び寄せましょう。
金杉:はい。という感じです。
松本:僕はしゃべり過ぎてしまいがちなので、もう少しお二人に聞きたかったのですが。今はサービスに組み込む側の話をしていましたが、「ChatGPT」と書いてあるので、開発にChatGPT活用はけっこうされているんじゃないかなと思います。お二人はそのあたりはどうですか?
佐藤:うちだと、GitHub Copilotが一番大きいかなとは思います。中身的には近い仕組みです。全社でGitHub Copilotを導入して、エンジニアリングに関係する人は全員使える状態にしました。うちとしてはそこで使うところで業務で一番活用しているかなと思います。
一方で普通に聞きたいというところもあります。SlackのAPIを介せば基本的に個人情報を取られる心配がそこまで強くないかな思うので、基本的には社内のボットとか。もしくはそこで質問をして、それに関してこういう構造なんだけど内部の情報を渡しても一定大丈夫だよねと確認してGPT-4を活用しているというのが、うちでの大きな例になってくるかなというところですね。
あとは、うちのテックリードとかもずっと「これがないともうダメ。Copilotちゃん!」みたいな感じのテンションで使っています。そういう意味では、Copilotを名前のとおり副操縦士という状態にするのに対して、会社でどう活用するかという知見をシェアしながら、会社全体で生産性を上げていくところにチャレンジしています。
松本:Copilotを導入する時にライセンスやら何やらが気になりませんでしたか? 学習に使われるんじゃないかとか。
佐藤:メチャクチャ気になりました。
松本:「エイヤ!」ですか?
佐藤:「他の会社でやっているし、よし」みたいなのが半分くらいはあったのと、ひととおり見た上で問題なさそうかなと思ったので、一応使っています。
松本:(GitHub)Copilot for Businessですか?
佐藤:Copilot for Businessですね。
松本:やはりそっちじゃないとダメですよね。
佐藤:チームとして導入していますね。
松本:金杉さんはどうですか?
金杉:そうですね。ChatGPTの使い方の例で言うと、うちはシニアな日本のエンジニアとインターン生と、オフショアのエンジニアという実態で3層構想です。シニアエンジニアは何も気にしなくてもプルリクエストをきちんときれいに上げてくれるのですが、インターン生やオフショアだとちょっと凡ミスが多いなと思っています。
コードはまるっとコピペして貼っちゃダメですが、ある程度関数とかで切って「これをリファクタください」とChatGPTに1回お願いをしてから日本語版のレビューに「この観点でリファクタしてください」と言うと、ChatGPTがけっこう整形してくれます。なので、インターン生やオフショア側がプルリクエストがちょっと不安だなとか、レビューが時間がかかっちゃうなというタイミングで、使わせてもらっているというのは1つの例としてあります。
あとはちょっと話がズレちゃいますが、GitHub Copilotはやはり導入しています。コメント駆動での開発はすごく進みましたね。コメントに最初に書いて、「もし何々であれば、何々してください」みたいなことを書くと、本当にもうコードを書いてくれるので、そういうのは便利だなと思いました。
松本:やはりだいたいChatGPTとCopilotはセットで入れますよね。
金杉:入れますね。
松本:あとは社内向けChatGPTボットを作るみたいなことは、活用されている会社はだいたいやっているイメージですね。
金杉:そうですね。
松本:僕自身もコードを書くのですが、VSCodeのGenie AIというプラグインがあって、あれがないと僕は開発ができない。要介護者みたいになってしまいました。
(一同笑)
松本:ずっとChatGPTにお世話をしてもらっています。例えば、PythonでCSVを呼び出すコードをパッと思い出せなくなった瞬間に、「頼む!」とやると、パッと適切なリーダーを使ったコードが出てくるので、それをコピペして貼ります。「人間の最後の仕事は、コピペなのか」みたいな気持ちになりながらけっこう使っています。あ、もうQ&Aタイムなんですね。しゃべり過ぎましたね。
(一同笑)
(次回へつづく)
関連タグ:
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05