こんにちは、すのくろです。
ChatGPTの社内版が弊社にも導入され、これを利用することで仕事の効率向上がさらにやりやすくなりました。
特に、日々のExcelデータの可視化や分析業務において、今までは自分で一からPythonのプログラムを作るのはまだ少し面倒だと思っても、ChatGPTを使えば時間短縮でコードができ、業務の効率化に役立っていることを実感しました。
本記事では、社内でChat GPTを触りながら感じたことをまとめて気づいた、Chat GPTを活用してPythonを使った業務効率化の実践方法や実際の活用時にブラッシュアップしていったプロンプトの例の紹介をしていきます!
Pythonの業務効率化にChatGPTを使うメリット
Pythonを利用した業務効率化において、ChatGPTを導入することには数多くのメリットがあります。
以下にその主なポイントをまとめました。
雛形の迅速な生成
ある程度やりたいことを投げれば、ChatGPTは瞬時に適切なコードやプロンプトの雛形を提供してくれます。
そのため、自分でコードを一から書くよりも、プログラミング初心者でも迅速に作業を始めることができます。
データ分析や処理の初期段階から、コードの骨格を自動生成することで、作業効率を飛躍的に向上させます。
データの形は業務によって変わってくることが多いので、そのようなマイナーチェンジにもChatGPTは対応してくれて重宝しています。
新しいアイディアの提供
ChatGPTは多岐にわたる情報を学習しているため、通常のアプローチでは考えつかない新しいアイディアや解決策を提案してくれます。
自分が「こんな感じのコード書くんだろうな」と思っていても、まだ知らない関数を使ってより効率的なコードを提供してくれることがよくあります。
そのコードを見て、「こんなやり方があったのか!」と思う時もあります。
ChatGPTを使うことで自分のプログラミングスキルアップにも繋がっています。
データ処理や解析の際に、自分の知識を超えた方法で問題にアプローチでき、業務に革新をもたらす可能性があります。
柔軟な対話型
ChatGPTは対話形式で使用でき、ユーザーが適切なフィードバックを提供することで、より具体的で役立つコードを生成することができます。
正直使ってみて、一発で理想的なコードを書いてはくれません。なので追加要望を出して対話しながらコードを仕上げていくことが必要です。そのときにこの対話形式でコードをブラッシュアップできるのはとても使いやすいです。
ユーザーの要望に合わせて逐一コードを修正・生成するため、作業の柔軟性が向上します。
Pythonの業務効率化にChatGPTを使う際のデメリット・注意点
CHatGPTによってかなりpythonのコーディングのスピードが上がり、効率化に活用できることは実感しました。
一方で、ChatGPTを実際のデータ分析等の業務効率化に使ってみて、まだまだChatGPTには荷が重いなと感じた点もあるので、いくつか挙げていきます。
細かい要望への対応難易度
ChatGPTは一般的な指示に強力ですが、細かい要望や特定の条件を満たすコードを求めて、その生成されたコードを実行すると、期待通りでない場合があります。
エラーも多くの確率で起きます。
そのエラー分を貼っても解決しないことがあります。
細部に関しては、ChatGPTの限界を理解し、必要に応じて手動で修正を行う必要がありそうです。
もしくはプロンプトエンジニアリングの方を鍛えて、狙い通り時のコードを書かせる技術・知識が必要になってくると思います。
意図しないデータの抽出
これはかなり注意しないといけないことですが、実体験でもありました。
例えば、エクセルのデータを読み込んである範囲の平均値を算出する際に、一見プログラムが正常に動き、要望通りの結果も出力できたのですが、複数条件で実施していると、
「あれ、なんか微妙に値が違くね?」
となった時があります。よくよく見ると、平均値を算出する際に一部データの欠損を考慮して変更しているみたいなことがありました。
なので、生成されたコードには意図したデータの入力や出力になっているかなどを一つの例で確認しておくことが重要です。
あとは、生成されたコードを自分で理解できる必要があると思います。
最新のトレンドやverとのGAP
自分が使用している社内版ChatGPTは「GPT-3.5」なので、ある時点でのデータから学習しているため、最新の技術やトレンドに追随できない場合があります。
特に問題になってたのは、関数の使い方です。
サードパーティ製の関数の引数は、年によって更新され使い方が変わるものがあります。なのでCHatGPTが生成したコードで、
「その関数にそんな引数はありません。」
的なエラーが出ることもしばしばです。
最新のアップデートと自分の環境で使っているverを確認し、必要に応じて手動で調整を行うことが求められます。またはその情報をCHatGPTに明示しておくことが必要です。
これらのデメリットや注意点に対処しながら、ChatGPTを使うことで効率的な業務処理が可能です。特に慎重な検証や手動の修正を行いつつ、ChatGPTを活用することで、業務の効率向上を実現できるはずです!
ブラッシュアップしていったPython向けのプロンプト
自分が、Excelのデータ分析を行うためにグラフ作成のツールやデータのまとめなどのコードを生成するためのプロンプトを試行錯誤していく中で作りました。
下記のようなテンプレに落ちつきましたので、共有しておきます。
あなたはpythonの専門家です。
下記の「入力データ」、「要件」に従って、コードを作成してください。
# 入力データ
・エクセル(.xlsx形式)
・データ名「OOOOO.xlsx」
・シート数:1
・1行目に条件名
・1列目にデータ項目名
・2行目、2列目以降がデータ値
# 要件
・表の各条件列ごとに1枚のグラフを作成
・横軸が1~6行目の値、縦軸が7~12行目の値で散布図グラフの作成
・グラフのタイトルは条件名(列名)
・グラフの横軸名”OOOOOO”
・グラフの縦軸名”XXXXXXX”
・表の各条件列ごとに1枚のグラフを作成し、フォルダ「plot」内にpng形式で保存
・1枚のPDFに作成したグラフ全てを並べて保存
プロンプトのコツ
まずは扱うデータの形を言語化して伝えます。
プロンプトの「#入力データ」で、箇条書きでデータの形を書いていきます。
ここはけっこう気づかず人間は無意識でわかる部分をCHatGPTに丁寧に教えてあげることを心がけで細かい情報まで伝えます。
あとは「#要件」で処理したい内容をできるだけ具体的に書いていきます。
この時のコツとしては、自分でコードを書くとしたら、どんな処理を行うかを考えてそれを箇条書きにしてChatGPTに伝えます。
ここもできるだけ具体的な方が良いので、細かく箇条書きで伝えると良いと思います。
あとは生成されたコードを見て、理想とのギャップを埋めていくことがより良いプログラム作成のコツだと思います。
自分はこのテンプレで、大枠を仕上げて、あとは自分で修正していくという感じで業務に活用してます!
まとめ
本記事では、Chat GPTを活用してPythonを使った業務効率化の実践方法や実際の活用時にブラッシュアップしていったプロンプトの例を紹介しました。
是非、ChatGPTを活用して、より効率的なプログラムを作成してみてください。
やってみて思ったのは、ChatGPTがかなり優秀でもまだまだ自分が思い描いているPythonのコードには一発で辿り着けないのが実情です。
まだまだChatGPTが生成するコードを自分自身がある程度理解できる状態になっていないとスムーズに活用できないなと感じています。
さらにPythonのスキルを高めて、効率的に業務を行いたい、高度なPythonを中心としたプログラミングをより体系的に学びたいと言う方向けに、おすすめのオンラインスクールを2つ厳選して紹介していますので、こちらもよければご覧ください!
自分も一度体系的にPythonを学んだことで、一気に日々の業務や人生が変わったと感じています!
コメント