AIに作ってもらったPythonコード、そのまま使って大丈夫?現役SEが確認するポイント

AIに作ってもらったPythonコード、そのまま使って大丈夫?現役SEが確認するポイント

記事
IT・テクノロジー
最近はChatGPTなどの生成AIに、

「Pythonで〇〇をするプログラムを作って」

とお願いすると、数秒でコードを作ってもらえるようになりました。

プログラミング初心者の方でも、以前より簡単にアプリや自動化ツールを作れる便利な時代になったと思います。

一方で、実際に使おうとすると、次のような問題もよく起こります。

・コードを実行してもエラーになる
・一応動いたけれど、正しい処理なのか分からない
・処理に時間がかかりすぎる
・途中から、どこを修正すればよいのか分からなくなる
・セキュリティ上の問題がないか不安
・機能を追加したら、それまで動いていた部分が動かなくなった

AIが作成したコードは、とても便利です。

しかし、表示されたコードが必ずしも、そのまま安全に使えるとは限りません。

今回は、現役SEである私が、AI生成のPythonコードを確認するときに見ているポイントをご紹介します。

1.まずは「何をしたいコードなのか」を整理する

コードを確認する前に大切なのは、目的をはっきりさせることです。

例えば、

・Excelのデータを自動で集計したい
・Webサイトから情報を取得したい
・CSVファイルをデータベースに登録したい
・簡単なWebアプリを作りたい

といった目的があります。

AIに何度も追加の指示を出していると、最初の目的とは違うコードになってしまうことがあります。

そのため、コードの修正を始める前に、

「このプログラムで最終的に何を実現したいのか」

を整理することが重要です。

2.エラーが出ている場所だけを見ない

エラーメッセージが表示されると、その行だけを直そうとしてしまいがちです。

しかし、実際には別の場所に原因があることも少なくありません。

例えば、

・必要なライブラリがインストールされていない
・Pythonのバージョンが合っていない
・ファイルの保存場所が違っている
・変数に想定外の値が入っている
・設定ファイルの内容が間違っている

などです。

エラーの行だけではなく、実行環境や入力データも含めて確認する必要があります。

3.動いたからといって正しいとは限らない

プログラムがエラーなく動いても、処理結果が間違っている可能性があります。

例えば、10件のデータを処理する予定なのに、実際には9件しか登録されていないこともあります。

そのため、

・入力した件数と出力した件数が一致しているか
・計算結果が想定どおりか
・空欄や異常値が入った場合でも動くか
・同じ処理を複数回行っても問題ないか

などを確認します。

「動いた」というだけで終わらず、「正しい結果になったか」を確認することが大切です。

4.APIキーやパスワードが直接書かれていないか

AIが作ったサンプルコードには、設定値をコードの中に直接書く形が使われることがあります。

しかし、実際に使用するコードに、

・APIキー
・データベースのパスワード
・メールアドレス
・接続先情報

などを直接書くのは危険です。

GitHubなどに誤って公開すると、第三者に情報を見られる可能性もあります。

環境変数や設定ファイルを使用して、重要な情報をコードから分離することが必要です。

5.エラーが起きたときの処理があるか

AIが作成したコードは、正常に動く場合だけを想定していることがあります。

しかし、実際には、

・ファイルが存在しない
・ネットワークにつながらない
・データベースに接続できない
・想定外のデータが入力される

といった問題が起こります。

このような場合にもプログラムが突然停止しないように、例外処理やエラーログを追加します。

エラーの原因が記録されるようにしておくと、問題が起きたときの調査もしやすくなります。

6.あとから修正しやすいコードになっているか

AIに機能を追加してもらうたびに、コードが長くなってしまうことがあります。

最初は動いていても、コードが複雑になると、

「どこを直したらよいのか分からない」

という状態になります。

そのため、

・処理を関数に分ける
・同じコードを何度も書かない
・変数名を分かりやすくする
・設定値をまとめる
・処理ごとにファイルを分ける

といった整理も必要です。

コードを整理しておくことで、機能追加や修正がしやすくなります。

AIは便利。でも最後の確認は必要です

生成AIを使えば、プログラミングの最初の一歩は大きく楽になります。

私自身も、コードのたたき台作成や調査にAIを活用しています。

しかし、AIが作成したコードを実際に使用する場合には、

・目的どおりに動いているか
・間違った結果になっていないか
・安全に使用できるか
・あとから修正しやすいか

を確認することが重要です。

AIに全部任せるのではなく、AIが作ったものを人が確認して整えることで、より安心して使用できるコードになります。

PythonやAI生成コードで困っている方へ

私は現役SEとして、PythonやWebアプリ、データベースなどを使った開発に携わっています。

ココナラでは、次のようなご相談に対応しています。

・AIが作ったPythonコードの確認
・エラー原因の調査と修正
・既存コードの整理
・処理速度の改善
・機能追加
・コードの内容が分からない場合の解説

「うまく状況を説明できるか不安」

「どのサービスを選べばよいのか分からない」

という場合でも、現在の状況を一緒に整理しながら進めます。

お困りの際は、プロフィールや出品サービスをご覧ください。

また、普段はPython、Flask、PostgreSQL、Docker、Ubuntuなど、実際の開発で経験した内容を初心者向けにまとめています。

これからプログラミングを学びたい方や、AIを使って開発を始めたい方に役立つ情報を、今後も発信していきます。
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す