[スポンサーリンク]

一般的な話題

初心者でも簡単!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. 触媒討論会に行ってきました
  2. メソポーラスシリカ(3)
  3. 2015年ケムステ人気記事ランキング
  4. 【5月開催】 【第二期 マツモトファインケミカル技術セミナー開催…
  5. 簡単に扱えるボロン酸誘導体の開発 ~小さな構造変化が大きな違いを…
  6. 理研の研究者が考える“実験ロボット”の未来とは?
  7. 基底三重項炭化水素トリアンギュレンの単離に世界で初めて成功
  8. 6年越しで叶えた“海外と繋がる仕事がしたい”という夢

注目情報

ピックアップ記事

  1. MEDCHEM NEWSと提携しました
  2. Carl Boschの人生 その8
  3. 痔の薬のはなし 真剣に調べる
  4. 化学の楽しさに触れるセミナーが7月に開催
  5. マテリアルズ・インフォマティクスのためのSaaS miHub活用方法-研究開発を効率化する特徴的な機能を紹介-
  6. ポンコツ博士の海外奮闘録XVIII ~博士,WBCを観る~
  7. 【書籍】「世界一美しい数学塗り絵」~宇宙の紋様~
  8. 磁性液体:常温で液体になる磁性体を初発見 東大大学院
  9. 糖鎖を化学的に挿入して糖タンパク質を自在に精密合成
  10. iPhone7は世界最強の酸に耐性があることが判明?

関連商品

ケムステYoutube

ケムステSlack

月別アーカイブ

2023年6月
 1234
567891011
12131415161718
19202122232425
2627282930  

注目情報

最新記事

有機合成化学協会誌2024年12月号:パラジウム-ヒドロキシ基含有ホスフィン触媒・元素多様化・縮環型天然物・求電子的シアノ化・オリゴペプチド合成

有機合成化学協会が発行する有機合成化学協会誌、2024年12月号がオンライン公開されています。…

「MI×データ科学」コース ~データ科学・AI・量子技術を利用した材料研究の新潮流~

 開講期間 2025年1月8日(水)、9日(木)、15日(水)、16日(木) 計4日間申込みはこ…

余裕でドラフトに収まるビュッヒ史上最小 ロータリーエバポレーターR-80シリーズ

高性能のロータリーエバポレーターで、効率良く研究を進めたい。けれど設置スペースに限りがあり購入を諦め…

有機ホウ素化合物の「安定性」と「反応性」を両立した新しい鈴木–宮浦クロスカップリング反応の開発

第 635 回のスポットライトリサーチは、広島大学大学院・先進理工系科学研究科 博士…

植物繊維を叩いてアンモニアをつくろう ~メカノケミカル窒素固定新合成法~

Tshozoです。今回また興味深い、農業や資源問題の解決の突破口になり得る窒素固定方法がNatu…

自己実現を模索した50代のキャリア選択。「やりたいこと」が年収を上回った瞬間

50歳前後は、会社員にとってキャリアの大きな節目となります。定年までの道筋を見据えて、現職に留まるべ…

イグノーベル賞2024振り返り

ノーベル賞も発表されており、イグノーベル賞の紹介は今更かもしれませんが紹介記事を作成しました。 …

亜鉛–ヒドリド種を持つ金属–有機構造体による高温での二酸化炭素回収

亜鉛–ヒドリド部位を持つ金属–有機構造体 (metal–organic frameworks; MO…

求人は増えているのになぜ?「転職先が決まらない人」に共通する行動パターンとは?

転職市場が活発に動いている中でも、なかなか転職先が決まらない人がいるのはなぜでしょう…

三脚型トリプチセン超分子足場を用いて一重項分裂を促進する配置へとペンタセンクロモフォアを集合化させることに成功

第634回のスポットライトリサーチは、 東京科学大学 物質理工学院(福島研究室)博士課程後期3年の福…

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

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

PAGE TOP