AI News HubLIVE
站内改写2 分で読了

ChatGPTに無料PDFエディターを作ってもらった——ファイルを直接編集させるのは不安だったが、うまくいった!

著者の妻が黄色い背景の楽譜PDFから色を除去する必要があったが、ChatGPTに直接編集させるのは非決定的で不安だった。そこでChatGPTにPythonスクリプトを生成させ、確定的な処理で背景除去に成功。賢いAI活用法を示した。

ソースZDNet AI

最近、妻のデニスが教会の聖歌隊に参加し、新しい曲を練習する必要がありました。楽譜は黄色い紙に印刷された小冊子で、彼女はそれをスキャンしてPDFにし、背景色を除去して8.5x11インチの用紙に拡大印刷したいと考えていました。老眼鏡を使わずに済むようにするためです。ある午後、彼女が私に相談してきました。黄色い背景を除去しつつ楽譜自体を保存する方法を知りたいとのこと。カラーインクの無駄を省くためです。白黒印刷しても灰色の背景が残り、かえって見づらくなります。彼女はまた、楽譜をPlayScore 2というアプリで再生する予定で、背景色がアプリに悪影響を与えるのではと心配していました。

最初はPhotoshopでの除去を試みましたが、画像ごとにスライダーの設定が異なり、非常に手間がかかりました。そこでChatGPTの利用を提案しました。彼女はChatGPT Plusのアカウントを持っています。私はいくつかテストを行いました。「黄色い背景を白に置き換えたPDFをダウンロードできるようにして」といったプロンプトです。これらは機能しましたが、ChatGPTは生成するPDFを微妙に変更していました。妻は、ChatGPTが音符や歌詞などを変えてしまうのではないかと懸念し、間違った練習を避けたいと考えていました。

ChatGPTや他のAIは「非決定的」です。つまり、同じ入力を何度与えても異なる結果が返ってくる可能性があります。一方、アルゴリズムによるプログラミングは決定的で、入力から出力が一意に決まります。私はハーバード大学のPythonプログラミング認定コースの最終プログラムで、画像管理ツールを作成した経験があり、Pythonに必要なライブラリがあることを知っていました。しかし、その週は仕事が忙しく、自分でプログラムを書く時間がありませんでした。そこでChatGPTにPythonスクリプトを書かせることにしました。

プロンプトは次の通りです:「JPEGを読み込み、灰色または黒でないピクセルを白色に設定するPythonスクリプトを作成してください。ファイル名はname-decolor.jpgとします。色付きの背景上の黒いテキストが正しく表示されるよう、少し色味のある灰色も許容してください。PDFが入力された場合も同様に処理し、複数ページに対応してください。」プロンプトを送信後、夕食の準備を始めました。夕食が出来上がる頃には、ChatGPTもスクリプトを完成させていました。

最初のバージョンではPillowライブラリのインストールが必要でしたが、その後は問題なく動作しました。このスクリプトは非常にシンプルで、コマンドラインからdecolor_pdf.pyを実行し、PDFファイルを渡すだけで背景色が除去された新しいPDFが出力されます。ニューヨーク公共図書館からパブリックドメインの楽譜(Fats Wallerの曲)をダウンロードしてテストしたところ、完璧に機能しました。

この経験から得た教訓:AIの助けを借りる際、必ずしも非決定的な処理に頼る必要はありません。信頼できるアルゴリズムに基づくプログラムをAIに書かせることもできます。また、洗練されたUIを作る必要はなく、シンプルなコマンドラインツールで十分な場合があります。AIに仕様を繰り返し調整させることも有効です。Pythonは豊富なライブラリを持ち、迅速な開発に適しています。

何か素早い解決策が必要な場合は、ChatGPTにプログラムを書いてもらうことを試してみてください。私にとってはうまくいき、妻に使えるツールを提供できると同時に、夕食の準備も手伝えました。AIがファイルを微妙に変更するのを心配して、直接使うのを避けたことはありますか?コメントで教えてください。