巷ではChatGPTのスゴい性能が世間を騒がせていますね。ゼロワンの中の人のわたし海江田も、ブームに乗ってChatGPTをいじって遊んでます。
そんな中、ちょうど先週、弊社開発部の田島が社内でこんな投稿をしていました。
ChatGPTにシステムプロンプトを与えて独自の学習(?)をさせられる、ということは知っていたのですが、(俺の知らないうちに)ChatGPTが弊ゼロワンを学んでるだと?!と、推しがいつの間に有名になってしまったような敗北した気持ちになりました。
(ちなみに、中国で仕事をしていた時に、筆者よりも流暢に中国語を話すルーマニア人をみて同じような敗北感を得たことがあります)
それはともかく、これ、弊社がChatGPTのデータ利用をオプトアウトしていないために「ゼロワンの情報として入力されたデータ」が学習されて、時間を置いた別の会話でChatGPTが自ら利用しているということなんですが、結構びっくりしました。この辺を知らないでいきなりこれみたら、まあセキュリティが心配になりますよね。(弊社はきちんとルールを定めて利用していまして、ちゃんと利用していれば問題にはなりません)
*弊社はISO27001(ISMS認証)を取得しています
https://prtimes.jp/main/html/rd/p/000000017.000069846.html
とりあえず、過去に誰かが学習させたであろう情報ならどのくらいの粒度で出てくるのか、ひとまず田島といえば太宰治『グッドバイ』のプレイボーイな主人公田島周二ということで、ChatGPTに聞いてみました。
適切に学習させないと、専門的な事柄に関してはあまり精度がよくないかもしれません(尚、上記はGPT3.5です)。
そんなこともあり、すでに広く使われていて学習も済んでいるだろうテーマを取り上げて、ノーコードでChatGPTをなんとか使えないか試してみることにしました。
ノーコード x ChatGPT
ゼロワンにはプラグインウィジェットという、JavaScriptを書いてプラグインを自由に生成できる機能があるのですが、これには、JavaScriptコードを書けない人にとっては全く使い方がわからないという(当たり前の)問題がありました。
そこで、JavaScriptならChatGPTにも学習データが大量にあると思われるので、「ノーコードプラットフォーム内でJavaScriptを自在に使う」ことを試みたいと思います。
まず、ChatGPTにゼロワンのプラグイン機能の使い方を簡易的に学習させ、そしてやりたいことを伝えると、ChatGPTがコードを返してくれるのではないか?と考え、実行してみました。
以下に順番にスクリーンショットを貼ります:
①
②
③
④
ちゃんとできましたね。ただ正直なところ、思い立った内容をコピペしただけでできてしまったので、記事としてはオチがあっさりしてしまいました。そこで同様の手法で、他にもいくつか試しました。
JavaScriptのライブラリ(拡張機能みたいなもの)を使って、手書きの署名パッドやガントチャートなどの(コードで書いたら)複雑な機能を簡単に作成させることもできました(以下2枚)。
結構ちゃんとできていますね。これならノーコードプラットフォームをベースにして、ChatGPTに指示して生成されたコードをうまく使っていくことで、ジュニアのエンジニアでも、または筋が良ければ非エンジニアでも開発実務を行うことができそうです。
尚、本稿で紹介したJavaScriptでの(ChatGPTを活用した)拡張がサラッとできてしまうのは、ゼロワンが拡張性に優れたノーコードツールであるからという特徴に大きく拠っています。例えば、ノーコード開発プラットフォームの雄 bubble では、本稿で紹介したJavaScriptの実行モジュール同様の機能が存在していますが、複雑にネストされたデータベース構造は扱いにくい仕様になっています。ゼロワンでは、ゼロワン内にあるデータを全てjson形式で自由に整形・出力できるため、複雑なデータベースでもプラグインに組み込むことができます。
まとめ
以上のように、ChatGPTが吐き出したコードをゼロワン内のプラグイン機能の設定欄にコピペすると、ちゃんと表示され、コードをかけない人でもプラグインを爆速で作ることができることが判りました。
このように、前提条件と意向を与え、それに沿って(ChatGPTの学習期間である)2021年以前の公開情報に基づいて解を導けるような内容については、ChatGPTはかなりの精度(80~90%)のものをすぐ出してくることができます(尚、2023年3月23日に発表されたプラグイン機能によって今後この問題は解決しますが、今の時点ではまだ未実装です)。
しかしながら、やっていて思ったことでもありますが「前提条件と意向を与え、それに沿って(ChatGPTの学習期間である)2021年以前の公開情報に基づき解を導けるような内容」というのは結構ポイントでして、上記の具体例が実装できたのは①JavaScriptだったこと ②JavaScriptで一から実装するのではなくグラフ描写のライブラリを使ったことが大きな要因となります。
そのため、例えばオープンソースであるプログラミング言語やExcelなど公開情報としてやり方が多く出回っているような技術・プラットフォームに紐づくアウトプットはかなり得意なため、ノーコード文脈での活用は、そのようなコードの生成を念頭に置いた利用が、まずはChatGPTを使って生産性が高められるメインの領域になるのかなと思いました。
そのほかに、ChatGPTは議事録の作成・長文の要約・データの分析なども得意ですが、反面具体的な過去の出来事や一般知識の回答などでは存在しない回答をすることがありますので、嘘が返ってこないような聞き方で質問を投げるテクニックが必要です(いわゆるプロンプトエンジニアリングというものです)。
補足 セキュリティ
最後に、ChatGPTを使ったセキュリティについて補足します。
APIでの利用については基本的に学習に利用されない(オプトイン式)ため、法人の皆様におかれましては各社インターフェースは自社または何かのプラットフォームで作るなどして利用しているようです(反対に、ブラウザからの利用はオプトアウト式となるため、自分で除外申請を行う必要があります)。
データ利用ポリシー:https://openai.com/policies/api-data-usage-policies
オプトアウトフォーム:https://openai.com/policies/privacy-policy
API利用(自社でインターフェースを作る式)ならひとまず入力情報については安心といえると思います。(ちなみに、同様のことがDeepLでも言えまして、弊社は有料プランを使っているのですが、たまに契約書の翻訳をチェックしていると「乙」の訳語として具体的な社名が出てきたりして、おそらく無料版でそのまま契約書を訳したのかなあ、などと思われることがあります。怖いですね。)
それでは、ノーコードツールでChatGPTを使ったら生産性が爆上がりした話は以上となります。ちなみに、本稿で登場するゼロワンは、以下から利用が可能です:
ありがとうございました!