[スポンサーリンク]

一般的な話題

初心者でも簡単!ChatGPTを用いたプログラミング

[スポンサーリンク]

「プログラミングに興味がある、でも勉強している時間はない…」そう考えている学生や研究者の方も多いと思います。特に、実験系化学者は、メインの研究にプログラミングが必須でない場合が多く、時間を掛けてプログラミングを学ぶことにハードルを感じてしまいがちだと思います。

そんなケムステ読者に向けて、今回はChatGPTを用いて簡単にプログラミングを行う方法を紹介します。ChatGPTのすごいところは、「この処理を行うコードを書いてください」と言うだけですぐにコードを書いてくれることです。コードを実行してエラーが出ても、「こういうエラーが出たので直してください」というと直してくれます。あまりの便利さに感動するほどなので、この記事で皆さんにも使い方を紹介したいと思います。

1. ChatGPTとは

ChatGPTとは、OpenAI社によって開発された、人工知能(AI)を用いたチャットサービスのことです。アカウントを作るだけで、無料で利用できます(有料のupgradeもあり)。使い方はとても簡単で、図1のような画面でメッセージを入力すれば、それに応じてAIが回答をくれるという仕様になっています。AIは日本語も理解できるので、日本語でメッセージを送ると日本語で返事が返ってきます。

他の人工知能を用いた自動会話システム(チャットボット)を利用したことがある人も多いと思いますが、既存のシステムと比べるとChatGPTのAIはとても頭が良く、人と会話しているような感覚で会話が成り立ちます。

図1. ChatGPTの入力画面。

2. GPTについて

ChatGPTは、GPT(Generative Pre-trained Transformer)というAIの言語モデルを利用していて、2023年5月現在、ChatGPTの無料版ではGPT-3.5、有料版ではさらにGPT-4というバージョンが使えるようになっています。GPT-4の方がGPT-3.5よりも賢く、回答の精度が高いですが、以下に紹介するプログラミングへの利用はGPT-3.5でも可能です。

ちなみにGPT-3.5とGPT-4は、いずれも2021年9月までのデータを学習に用いられているので、それ以降に起こったことについては知りません。それなので、GPT-4は自分の存在についても知らず、GPT-4についての質問にうまく答えられません。日本語で、「GPT-4は日本語を扱えますか?」と聞くと、「私が知っているのはGPT-3までです。」と日本語で返ってきたのには笑ってしまいました。このように、ChatGPTは最新の情報について調べるには今のところ不向きですが、プログラミングへの利用にはとても役立ちます。

3. ChatGPTを用いてコードを書く方法

プログラミングに興味があるけど始められない、という人にとって、一番のハードルはコードを書くことだと思います。ある程度基本を学んでも、実際にやりたいタスクについてコードを書こうとすると、アルゴリズムを考えたり、いろんな関数の使い方を調べたりしなければなりません。書いてみたは良いものの、エラーが出て直し方が分からない、ということも頻繁に起こります。そのため、プログラミングで自動化できそうな処理であっても、わざわざコードを書くくらいなら手動でやった方がまし、と思うことも多々あります。

そういう人にとって、ChatGPTは強力なツールです。ChatGPTに行いたい処理について説明すると、それに応じてコードを書いてくれます。ChatGPTは一般的なプログラミング言語ならどの言語でもコードを書くことができるので、プラットフォームを選びません。以下に、ChatGPTにコードを書いてもらうためのメッセージ(プロンプト)の例を示します。

以下の処理を行うPythonコードを書いてください。コードを書くために追加情報が必要であれば、私に聞いてください。

# 処理
入力データ(x, y)を、与えられた関数にフィッティングする。
入力データを、フィッティング曲線とともにプロット。

# 入力データ
x = 5.12, 2.52, 1.23, 0.62, 0.38, 0.00
y = 0.728, 0.491, 0.378, 0.245, 0.180, 0.098

# フィッティング関数
y = (a * x + b)/(c* x + d)
変数:y, x
係数:a, b, c, d

# 制約条件
x軸のラベルは’質量比’
y軸のラベルは’ピーク比’

上記のメッセージをChatGPTに送ると、以下のような返信が返ってきます(図2)。書いて欲しいとお願いしたコードに加えて、簡単な説明も付けてくれます。メッセージを送る際に、「Python初心者でも分かるように教えてください」と付け加えると、より丁寧に教えてくれます。また、コードを作ってもらった後に、「この部分を説明してください」と言うと分からない部分について教えてくれます。

図2. コード作成のリクエストに対するChatGPTの回答

4. ChatGPTをコーディングに使うコツ

以下に、ChatGPTにコードを書いてもらうためのコツを紹介します。

「追加で必要な情報があれば聞いてください」と質問を促す。
慣れないうちは、ChatGPTにどのような情報を伝えればよいのか戸惑うことと思います。その場合は、最初のメッセージで「追加で必要な情報があれば聞いてください」と伝えておくと良いです。そうすれば、情報が欠落している際にChatGPT側から聞いてくれます。

メッセージのやりとりを何度か行い、コードを改善してもらう。
ChatGPTに作ってもらうコードは、初めから上手く行くとは限りません。実行した際にエラーが生じたり、思った結果が得られないこともあります。その場合には、「〜というエラーが生じました。」「グラフのラベルが文字化けしてしまいました。」などとChatGPTに伝えると、修正版のコードを作ってくれます。また、実行結果を見てから、「グラフの縦横比を1:1にして欲しい」「入力値をExcelファイルから読み込む形にしてほしい」などと、追加のリクエストをすることもできます。容量の大きいデータを扱う際には、「処理スピードが速くなるようにコードを改善して欲しい」といったリクエストも可能です。このように、ChatGPTと会話しながらより良いコードを作り上げるというのがコツです。

データ構造を説明するのが難しければ、具体例を作って貼り付ける。
プログラミングの経験がない人は、入力データをどのようにChatGPTに伝えれば良いのか分からないこともあると思います。一般的に、コードを書く際にはファイルの形式や保存場所、データの構造を知る必要があります。Excelなどの表データの場合、伝え方が分からなければ、具体例を作って貼り付けるという方法も役立ちます。

5. ChatGPTを使ったプログラミング学習

さて、プログラミングをやったことがない方は、作ったコードをどう実行すれば良いのかも気になると思います。それほど難しくないので、この記事で私が説明するのも良いのですが、ChatGPTがとても分かりやすく教えてくれるので省きます。プログラミング初心者は、以下のような質問をChatGPTにしてみてください。

  • 私はPython初心者です。Pythonの始め方を教えてください。
  • 初心者におすすめのプログラミング言語を教えてください。
  • 化学者にとって便利なpythonのライブラリを教えてください。

ChatGPTの良いところは、知りたい情報を一瞬でまとめて提示してくれることです。上記の質問に対する回答は、インターネットで検索すればいろんなまとめ記事や動画から自分で調べることもできますが、それなりに時間が掛かります。ChatGPTは、質問した内容に対して直接回答をくれるので、記事や動画などから情報を探し出す手間が省けます。

6. 終わりに

プログラミングが出来るようになると、さまざまなタスクを自動化することができます。人によって使い方は様々だと思いますが、私の場合は、Excelの表データのフォーマット変更、大量の画像ファイルのPowerPointへの貼り付け、タンパク質の配列データの解析、PDFファイルからのデータ抽出、グラフの描画とフィッティングなどに使っています。頻繁に行うコピペ作業などは、自動化してしまうとかなり楽です。

プログラミングが仕事ではない実験系研究者の私にとって、プログラミングを行う際には、常にコードを書く労力と自動化することのメリットを天秤にかけ、わざわざコードを書くかどうか考える必要がありました。しかし、ChatGPTがコードを書いてくれるようになってからは、「できそうなものなら何でも自動化してみよう」と思えるようになりました。

ちなみに、MicrosoftはGPT-4を用いてWordやExcelの作業をサポートするMicrosoft 365 Copilotを発表しており、近いうちに導入されるようです。どんどん進化するAI技術とうまく付き合いながら研究を進めていくことが今後必要になりそうです。

関連リンク

関連書籍

[amazonjs asin=”B0BX636FGC” locale=”JP” title=”週刊東洋経済 2023/4/22号(ChatGPT 仕事術革命)”] [amazonjs asin=”B0C5RX3SKZ” locale=”JP” title=”ChatGPTプロンプト最強の入門書: ChatGPTはプロンプトの作成で回答の質が決まる”]
Avatar photo

kanako

投稿者の記事一覧

アメリカの製薬企業の研究員。抗体をベースにした薬の開発を行なっている。
就職前は、アメリカの大学院にて化学のPhDを取得。専門はタンパク工学・ケミカルバイオロジー・高分子化学。

関連記事

  1. ペプチドのN末端でのピンポイント二重修飾反応を開発!
  2. 触媒的炭素–水素結合活性化による含七員環ナノカーボンの合成 〜容…
  3. ビタミンB12を触媒に用いた脱ハロゲン化反応
  4. 生体内での細胞選択的治療を可能とする糖鎖付加人工金属酵素
  5. 化学系学生のための企業合同説明会
  6. ノーベル化学賞メダルと科学者の仕事
  7. コスト管理に最適な選択:ディスポーザブルカラム Biotage®…
  8. 172番元素までの周期表が提案される

注目情報

ピックアップ記事

  1. 光触媒ラジカル付加を鍵とするスポンギアンジテルペン型天然物の全合成
  2. マグネシウム Magnesium-にがりの成分から軽量化合物材料まで
  3. 光触媒による水素生成効率が3%に
  4. サリドマイド、がん治療薬に
  5. JSRとはどんな会社?-2
  6. 積水化学、工業用接着剤で米最大手と提携
  7. 柴田科学 合成反応装置ケミストプラザ CP-400型をデモしてみた
  8. エチオ・リザード Ezio Rizzardo
  9. カルボカチオンの華麗なリレー:ブラシラン類の新たな生合成経路
  10. プロジェクトディレクトリについて

関連商品

ケムステYoutube

ケムステSlack

月別アーカイブ

2023年6月
 1234
567891011
12131415161718
19202122232425
2627282930  

注目情報

最新記事

7th Compound Challengeが開催されます!【エントリー〆切:2026年03月02日】 集え、”腕に覚えあり”の合成化学者!!

メルク株式会社より全世界の合成化学者と競い合うイベント、7th Compound Challenge…

乙卯研究所【急募】 有機合成化学分野(研究テーマは自由)の研究員募集

乙卯研究所とは乙卯研究所は、1915年の設立以来、広く薬学の研究を行うことを主要事業とし、その研…

大森 建 Ken OHMORI

大森 建(おおもり けん, 1969年 02月 12日–)は、日本の有機合成化学者。東京科学大学(I…

西川俊夫 Toshio NISHIKAWA

西川俊夫(にしかわ としお、1962年6月1日-)は、日本の有機化学者である。名古屋大学大学院生命農…

市川聡 Satoshi ICHIKAWA

市川 聡(Satoshi Ichikawa, 1971年9月28日-)は、日本の有機化学者・創薬化学…

非侵襲で使えるpH計で水溶液中のpHを測ってみた!

今回は、知っているようで知らない、なんとなく分かっているようで実は測定が難しい pH計(pHセンサー…

有馬温泉で鉄イオン水溶液について学んできた【化学者が行く温泉巡りの旅】

有馬温泉の金泉は、塩化物濃度と鉄濃度が日本の温泉の中で最も高い温泉で、黄褐色を呈する温泉です。この記…

HPLCをPATツールに変換!オンラインHPLCシステム:DirectInject-LC

これまでの自動サンプリング技術多くの製薬・化学メーカーはその生産性向上のため、有…

MEDCHEM NEWS 34-4 号「新しいモダリティとして注目を浴びる分解創薬」

日本薬学会 医薬化学部会の部会誌 MEDCHEM NEWS より、新たにオープン…

圧力に依存して還元反応が進行!~シクロファン構造を活用した新機能~

第686回のスポットライトリサーチは、北海道大学大学院理学研究院化学部門 有機化学第一研究室(鈴木孝…

実験器具・用品を試してみたシリーズ

スポットライトリサーチムービー

PAGE TOP