ChatGPTが生成したコードのバグを見落としたせいで150万円以上の損失を被った失敗談
データ抽出サービスのスタートアップ・Reworkdの共同設立者であるアシム・シュレスタ氏が、ChatGPTが生成したコードをそのままコピーして使用したことで、多くのユーザーがサービスに加入できず1万ドル(約150万円)以上の利益を逃したことを、ブログで赤裸々に語りました。
How a single ChatGPT mistake cost us $10,000+ | Blog
https://asim.bearblog.dev/how-a-single-chatgpt-mistake-cost-us-10000/
この問題の発生は、シュレスタ氏らのプロジェクトチームがスタートアップの収益化に着手していた2023年5月にさかのぼります。出資者からの指示で収益化を急ぐ一方、プロジェクトをNext.jsからPython/FastAPIに移行する必要もあったシュレスタ氏は、移行作業のほぼすべてをChatGPTにやってもらうことにしました。
コピー&ペーストしたChatGPTのコードが問題なく動作したことを確認したシュレスタ氏らは、さっそくそれを本番環境に実装しました。ところが、次の日になってみると、夜中にユーザーから「登録ができない」という苦情のメールが殺到していることが判明します。
不思議なことに、勤務時間中には問題が発生せず再現性が得られなかったため、シュレスタ氏らは原因の特定に手間取り、問題解決までに5日間を要しました。その間に、苦情のメールが1日50通届いており、これらのユーザーが無事サービスに加入できていたら得られていたはずの1万ドルの収益が水の泡になりました。
やっと見つかったのが、以下の56行目のコードに存在する不具合で、IDを生成する関数ではなく一意のID文字列を渡しています。
これにより、ある新規ユーザーがサブスクリプションに登録しようとすると、その前のユーザーとIDが重複して登録ができないようになっていました。
しかし、シュレスタ氏らはそれぞれ5つ実行環境が動作するAmazon ECSタスクを8つ実行しており、スタッフがコミットする度に、つまりシステムに手を入れる度に最大40個までユニークIDが生成されていたので、日中は問題が表面化していなかったとのこと。
ところが、業務が終了するとコミットが止まり、新しいIDも生成されなくなるため、夜中にサービスに登録しようとしたユーザーがサブスクリプションに加入できなくなっていました。
苦情への対応に追われ、忘れられない5日間を過ごしたというシュレスタ氏ですが、この失敗談をブログで公開したところ酷評が殺到したため、記事を加筆修正しなければなりませんでした。
この追記部分の中でシュレスタ氏は「私たちがやったことは非常に悪質で恥ずべきものでり、避けることができた、むしろ避けるべきものでした。また、ヒューマンエラー以外の何物でもなく、今にして思えば非常にあからさまな問題でもありました」と述べています。
Wrote a blog post and got roasted by reddit and HN so bad I had to write a disclaimer pic.twitter.com/bmRys273nh— Asim Shrestha (@asimdotshrestha) June 9, 2024
06/10 15:00
GIGAZINE