清水理史の「イニシャルB」

ChatGPTにWindowsの「vcruntime140.dllエラー」を解決する方法を聞く、そして最終的に反省させる

ChatGPT

 すごいと噂の「ChatGPT」を、遅ればせながら、試してみた。

 生成される文章はかなり自然で、会話の流れを理解して追加質問も適切に答えてくれるのは見事だ。しかし、質問に対して適切に答えてもらうにはコツが必要なうえ、意図的なゆらぎによって文章が変わるため、質問への回答内容も変わってしまうこともしばしば。しかも、正しい回答にたどり着くとも限らない。初期テクノロジーならではの甘さがあるが、そこが面白いとも言えるサービスだ。

 今回は、筆者が試したやりとりと、その果てにたどり着いた、意外な(?)結末を紹介しよう。

PCトラブルの質問で、ChatGPTは筆者と同じ正解を見つけられるか?

 つい最近、知り合いから、Windowsで「vcruntime140_1.dllがない」というエラーが発生して困っているという相談を受けた。

 これは、多くのアプリで利用されているVisual C++再配布可能パッケージに含まれるDLLが見つからない状態になっていると起こるもので、昔からあるトラブルだ。大抵は、古いパッケージのアンインストールと最新版の再インストールで修正される。しかし、今回は[インストールされているアプリ]から古いパッケージを削除しても、見えないパッケージが削除されずに残ってしまっていたようで、最終的にMicrosoftが配布しているトラブルシューティングツールを使って、非表示になっていた古いランタイムを強制削除することで解決した。

▼参考
プログラムのインストールまたは削除がブロックされる問題を解決する

 今回、この問題についてChatGPTを利用し、どのような回答文章を作成してくるのかを検証してみた。

 ちなみに、ChatGPTについて簡単に紹介しておくと、自然言語によるチャット(対話)を実現するAIサービスとなる。日本語のリクエストでPythonのコードを生成し、改善してくれる事例など見事なものだが、一般的な質問や情報を検索する用途でも利用できる。今回は、このChatGPTを利用してインターネット上にあふれるQ&Aやトラブルシューティングコンテンツから、正解にたどり着けるかどうかを検証してみた。

ChatGPTでトラブルシューティング

ログを貼り付けるのが簡単だが、あまりにも長いと放棄される

 最初に断っておくと、ChatGPTをトラブルシューティングに活用するのであれば、エラーメッセージやエラーコード、ログそのものを(テキストで)提示するのが、もっとも確実だ。

エラーメッセージやログなどを与えれば、その意味や解決方法を回答してくれる

 もちろん、具体的な解決策を引き出すには、そこからさらに会話を重ねる必要があるが、最初の入りとしては、具体的な状況を提示する方が早い。

 ログが長すぎると、「エラーなんてないぞ」と開き直ることがあるので、こちらである程度読み取って、ピンポイントで提示する必要がある。それでも、ログの意味が分からないというケースでも役立つ。

上と同じログを数十行貼り付けたら、「正常に終わっているよ」と開き直ったChatGPT

ログを使わず会話だけで回答にたどり着くことを目指す

 エラーメッセージやログを提示するのでなく、自然な会話だけで回答にたどり着けるかを検証してみた。以下、会話の例を紹介する。

会話1:状況を説明する

 まずは状況を説明する。アプリ(今回問題が起きたのは音楽ソフト)のインストール時に表示されるエラーを正確にではなく、あいまいな表現で入力してみたが、ランタイムライブラリがないという状況をきちんと分析できている。

状況を説明したら、当該のファイルはランタイムライブラリの一部であり、このDLLがないとアプリが正常に動作しない可能性があると分析できた

会話2:困っている状況をもう少し具体的に説明する

 続いて、トラブルの状況をもう少し説明する。今回は、古いランタイムが残ってしまっていることが原因なので、「インストールしてあるのにエラーが起こる」と質問してみる。すると、最新バージョンをインストールするなどの解決策が提示された。

ライタイムライブラリはインストールしてあるのだと言ってみたら、最新バージョンをインストールするなど4つの解決策が返ってきた

会話3:最新バージョンをインストールしても解決しないことを伝える

 実際の状況としては、最新バージョンをインストールしようとすると「Microsoft Visual C++ 2019 X64 Minimum Runtime」のインストールでエラーが発生するのだが、少し意地悪く、このあたりをあいまいにして「最新版をインストールしてもエラーが発生する」と質問を重ねた。すると、システムを修復するなどの案が示された。

具体的な状況を隠しつつ、最新バージョンをインストールしてお解決しないと、さらに質問。すると今度は、システムを修復するなど5つの解決策が返ってきた

会話4:ちょっと誘導してみる

 このままでは話が核心にたどり着きそうにないので、古いランタイムが完全に削除できていないのではないかというこちらの推測を提示して、会話を誘導してみる。すると、今回実際にトラブルを解決したのと同じツール(ChatGPTの回答ではFixit Toolと表記)が、候補として提示された。

 Visual C++ランタイムのエラーから、この解決策へとたどり着くのは、Googleなどのウェブ検索では困難だ。事例が少なく候補として後半になる上、海外サイトの情報を参考にする必要があるケースが多いため、たどり着きにくい。

古いライブラリを改善に削除できていないようだと、問題点を絞り込めるように誘導。すると、ようやくトラブルシューティングツールにたどり着いた

会話5:Fixit Toolの使い方を聞いてみる

 最後にツールのダウンロード方法を聞いてみた。ほかの質問ではURLを提示してくれる場合もあるが、今回はChatGPTに「ググレ!」と突き放されてしまった。なお、以下の画面で質問した「Fixit Tool(Easy Fix)」は、正式にはすでに廃止されている。今回の解決に必要なツールはEasy Fixではなく、トラブルシューティングツールとなる。

問題解決に必要なツールのダウンロード方法を質問。これで、解決方法が具体的に分かってきた

同じ答えが返ってくるとは限らない

 さて、このように上記の例では、誘導によって、運よく回答にたどり着いたが、ChatGPTの面白いところは、同じ質問をしても、同じ回答がされないばかりか、流れも変わってしまうことだ。

 たとえば、上記の最初の質問だが、以下のようにタイミングを変えると回答も変わる。

 ある程度のゆらぎを持たせることによって、自然な会話を生成するためだと思われるが、検索で同じ結果にたどり着かない可能性があるというのは、なかなか興味深い。

最初の質問をしたときの回答はこうだった
最初の質問とまったく同じ内容でも、タイミングが違うと答えが変わる

 しかも、上記の会話に続けて、さらに具体的に質問を重ねてみたが、先ほどの例以降、何度やっても自らが提示した「Fixit Tool(トラブルシューティングツール)」を提示しなくなってしまった。

 より具体的に、コントロールパネルからランタイムを全て削除したこと、Microsoft Visual C++ 2019 X64 Minimum Runtimeのインストールエラーが発生することなどを伝えたり、「クリーンアップツール」とヒントを与えたりして誘導しても、ツールを提示しなくなってしまった。

さっき自分で紹介したFixit Tool(トラブルシューティングツール)をかたくなに紹介しなくなったChatGPT
クリーンアップツールと少し誘導気味に質問してみてもダメ。Fixit Toolを教えてくれなくなってしまった

ChatGPTに自らが過去にした回答を突きつけ、反省させる

 いろいろ聞き方を変えながら試行錯誤してみたのだが、最初に「Fixit Tool(トラブルシューティングツール)」が提示されて以降、まったくChatGPTが、同じツールを提示することがなくなってしまった。

 仕方がないので、ズバリ聞いてみることにした。

「Fixit Tool」はありませんか? とずばり聞いてみた

 すると、何ということでしょう! ChatGPTは、つい先ほど自ら提示したFixit Toolでは「問題は解決できない」と言い切るのだ。

 こうなると、こちらも意地になってしまう。さっきできると言ったのだから、その事実を突きつけてみると、今度は、あっさり「申し訳ありません。先ほどの私の答えは誤りでした」と訂正したのだ。

「Visual C++ライタイムライブラリの不要なバージョンを削除するためにFixit Toolを提供しています」と言ったら、あっさり誤りを認めたChatGPT。しかし、提示されたURLにアクセスすると……

 そして、丁寧にダウンロード用のリンクを提示してくるので、そこにアクセスしてみると。Visual C++再配布可能パッケージのダウンロード先が表示された……。

 ここで、思わず筆者は、「おいっ!」と画面に声を出して突っ込んでしまった。

 謝罪しつつ、自分の意見を曲げず、Fixit Tool(トラブルシューティングツール)ではないリンクを堂々と提示してくるとは……。

 なので、さらに追い打ちをかけるため、自らが提示したツールをダウンロードするためのリンクを貼り付けてみた。

 すると、「そうですね」とあっさり認めて開き直った。すごいなChatGPT、もしかして人間相手に遊んでるのか? もうお手上げだ。

「そうですね」。と開き直るChatGPT。脱帽

これから育つ

 以上、話題のChatGPTで遊んでみた。というか、すっかり遊ばれた印象だが、おそらく、このような面白会話は、発展途上の今だから楽しめるものなのだろう。

 いろいろなユーザーが質問を繰り返し、学習を重ねていけば、すっかり真面目なAIになってしまうのだと思われる。

 なので、今のうちに体験してみることをおすすめする。今回のケースはレアかもしれないが、Googleのような検索エンジンが過去のものと感じられる未来感も十分感じられる。

清水 理史

製品レビューなど幅広く執筆しているが、実際に大手企業でネットワーク管理者をしていたこともあり、Windowsのネットワーク全般が得意ジャンル。最新刊「できるWindows 11」ほか多数の著書がある。