見出し画像

ChatGPT(無料版)を使ってマインドマップを作る方法

こんにちは、Choimirai Schoolのサンミンです。

0  はじめに

前から紹介しているマインドマップですがChatGPT Plusのプラグインを使わず、無料版でも描いてもらうことができます。

英語を学ぶ上でもマインドマップを活用するメリットは複数の研究で検証済み。

今回のnoteではChatGPTを使ってマインドマップを生成する手順を紹介します。

1  全体の流れ

マインドマップを作るときは、テキストから図表を描いてくれるMermaidという言語を使います。マインドマップを作る手順はとても簡単で、2つのステップで完成です。

①ChatGPTにMermaidのコードを書いてもらう
②上記のコードを mermaid.live のサイトに貼り付ける

mermaid.live のサイトでマインドマップを生成した時の様子

2  ChatGPTにMermaidコードを依頼

マインドマップを作るためにはまず、ChatGPTに該当するMermaidコードを書いてもらう必要があります。その際に使えるプロンプトをシェアしますので参考にしてください。

Here is one sample of mermaid diagram that depicts a mindmap.
```
mindmap
  root(LangChain Agents Tutorial)
    (Introduction)
      ::icon(fa fa-info-circle)
      (Perceived as knowledge stores)
      (Considered as reasoning engines)
    (Understanding LangChain's Agents Framework)
      ::icon(fa fa-lightbulb)
      (Agents as powerful elements)
      (Creating and using agents)
      (Equipping agents with tools)
      (Interacting with data stores, APIs, and functions)
    (Setting Up LangChain Agents)
      ::icon(fa fa-cogs)
      (Importing environment variables)
      (Installing necessary packages)
      (Importing methods and classes from LangChain)
      (Loading tools and initializing the agent)
    (Initializing Agents: Example)
      ::icon(fa fa-code)
      (Using "CHAT_ZERO_SHOT_REACT_DESCRIPTION" agent type)
      (Testing the agent with a query about the 2022 World Cup)
      (Demonstrating reasoning and knowledge extraction)
```

Create a mindmap for the following content.

上記のプロンプトに続けて、マインドマップにしたいテキストを貼り付ければMermaidのコードを書いてくれます。

Here is one sample of mermaid diagram that depicts a mindmap.
```
mindmap
  root(LangChain Agents Tutorial)
    (Introduction)
      ::icon(fa fa-info-circle)
      (Perceived as knowledge stores)
      (Considered as reasoning engines)
    (Understanding LangChain's Agents Framework)
      ::icon(fa fa-lightbulb)
      (Agents as powerful elements)
      (Creating and using agents)
      (Equipping agents with tools)
      (Interacting with data stores, APIs, and functions)
    (Setting Up LangChain Agents)
      ::icon(fa fa-cogs)
      (Importing environment variables)
      (Installing necessary packages)
      (Importing methods and classes from LangChain)
      (Loading tools and initializing the agent)
    (Initializing Agents: Example)
      ::icon(fa fa-code)
      (Using "CHAT_ZERO_SHOT_REACT_DESCRIPTION" agent type)
      (Testing the agent with a query about the 2022 World Cup)
      (Demonstrating reasoning and knowledge extraction)
```

Create a mindmap for the following content.

この論文では、ウニの一部の種が成長過程で表現型の可塑性を示すことについて調査されています。エキノプルテイと呼ばれる幼生の中で、腕の長さが餌の状態に応じて変化することが分かりました。エキノプルテイとは、ウニの幼生のことを指します。

研究者たちは、Heliocidaris tuberculata(ヘリオシダリス・チュベルクラータ)とCentrostephanus rodgersii(セントロステファヌス・ロジャーシィ)という2つの種を対象に調査しました。H. tuberculataは典型的なウニの幼生であり、4本の腕を持っています。一方、C. rodgersiiは特殊な幼生形態であり、1本の腕しか持ちません(「Echinopluteus transversus」型幼生)。

研究では、幼生たちに異なる餌の条件を与えて、腕の成長にどのような影響があるかを調べました。そのために、「後腕長」と「正中体長」という2つの要素を比べる指標(PO:MBL)を使いました。結果として、餌を与えたH. tuberculata幼虫は腕が短くなり、PO:MBLが低くなりましたが、飢餓幼虫は腕が長くなり、PO:MBLが高くなりました。一方、C. rodgersii幼虫はよく餌を食べると、腕が最も長くなり、PO:MBLが高くなりました。

しかし、興味深いことに、飢餓状態のC. rodgersii幼虫は長い腕を発達させるという仮説は支持されませんでした。さらに、幼虫の成長パターンを調べるために主成分分析が行われ、H. tuberculataとC. rodgersiiは食餌処理に関して正反対の成長パターンを持っていることがわかりました。

この研究の結果から、ウニの幼生の腕の成長には、食餌条件に応じて異なる可塑性があることが分かります。また、「Echinopluteus transversus」タイプの幼生は、遠くまで移動する能力に適応しているため、常に2本の腕を保持する必要がある可能性が示唆されました。

最後に、この研究はすべてのウニに普遍的な現象ではなく、系統(種の遺伝的な関係)、緯度(地理的な位置)、幼生の形態が、腕の成長に影響を与える可能性があることを示唆しています。

これにより、ウニの成長における表現型の可塑性が理解できるようになるでしょう。何か質問や疑問点があれば、どんどんお知らせください。

▲ウニに関する研究資料を貼り付けた時の一例

上記のプロンプトに対し、ChatGPTが返したコードがこちら↓です。

mindmap
  root(ウニの腕の成長に関する調査)
    (はじめに)
      ::icon(fa fa-info-circle)
      (成長過程でのウニの表現型の可塑性について調査)
      (エキノプルテイ幼生の腕の長さの変化に焦点)
    (対象の種)
      ::icon(fa fa-fish)
      (Heliocidaris tuberculata(ヘリオシダリス・チュベルクラータ) - 4本の腕を持つ幼生)
      (Centrostephanus rodgersii(セントロステファヌス・ロジャーシィ) - 1本の腕を持つ「Echinopluteus transversus」型幼生)
    (餌の条件の影響)
      ::icon(fa fa-utensils)
      (異なる餌の条件が腕の成長に与える影響)
      (「後腕長」と「正中体長」という指標(PO:MBL)の比較に基づく調査)
      (H. tuberculataC. rodgersii幼生の結果)
    (餌に対する反応の違い)
      ::icon(fa fa-chart-line)
      (H. tuberculata幼生: 餌与えると腕が短くなるが、飢餓状態では腕が長くなる)
      (C. rodgersii幼生: よく餌を食べると腕が最も長くなる)
      (飢餓状態のC. rodgersii幼生の長腕発達仮説は支持されなかった)
    (主成分分析)
      ::icon(fa fa-chart-bar)
      (幼生の成長パターンの分析)
      (H. tuberculataC. rodgersiiは餌の処理に対して正反対の成長パターンを示す)
    (研究の意義)
      ::icon(fa fa-lightbulb)
      (餌の条件によるウニの腕の成長の異なる可塑性の理解)
      (「Echinopluteus transversus」型幼生は遠距離移動に適応している可能性)
      (考慮事項: 系統、緯度、幼生の形態が腕の成長に影響を与える可能性)
    (まとめ)
      ::icon(fa fa-check-circle)
      (ウニの成長における表現型の可塑性の理解)
      (さらなる質問や疑問へのオープンネス)

3  mermaid.liveでマインドマップを生成

Mermaidのコードが準備できましたらあとは mermaid.live に貼り付けるだけ。mermaid.liveへ移動し、ChatGPTが書いてくれたコードを貼り付けると綺麗なマインドマップを生成してくれます👏。

下記図はウニに関する研究をマインドマップにしたときの一例です。

▲マインドマップにしたウニの研究

4  エラー発生時の対応

Mermaidコードは決まったルールに従う必要がある。ChatGPTによって生成されるコードですとまれに余計なスペースや括弧が入ったりすると下記図のようにエラーが表示されます。カッコの場合、全角の括弧は問題ないですが、半角の括弧は怒られます😅。

エラーが発生した場合は、右側になるエラーメッセージを確認し必要な箇所を修正しますと正しく表示されます。

5  ChatGPT Plusプラグインとの比較

ここでは2つのプラグインを検証させていただきます。

▼Diagrams

Diagramsの場合、コードは生成されても最終的にマインドマップが表示されないケースがあります。この現象は日本語のテキストでよく見られている印象です。

▼Show me diagrams

Show me diagramsの場合、mermaid.live のような環境を利用していて、後からコードを修正することもできる。が、魚などアイコンを使わない設定となっていますのでChatGPTにMermaidコードを書いてもらった方がより見やすいマインドマップに仕上がる気がします。

6  番外編:カスタム命令

上述したプロンプトをカスタム命令として登録しておきますと「Create a mindmap for the following content.」と指示するだけでMermaidコードを書いてくれます。

サンプルのMermaidコードを提示せずに済みますので、ChatGPT Plusを利用されている方はぜひ試してみてください。

7  まとめ

冒頭でも話したようにマインドマップを学習で利用するメリットは検証済みです。こうした効果がわかっていてもマインドマップを実際作るのは時間もかかるし、容易ではない。しかし、「ChatGPT+mermaid.live」を使えば1分足らずでYouTubeの動画や講義ノートをマインドマップにすることができます。しかも、無料!

こうした使い方がより多くの方に届いて欲しいです。


この記事が気に入ったらサポートをしてみませんか?