レ点腫瘍学ノート

Top日記2025年12月14日

ChatGPTsで遺伝学的家系図を描く話

AI 家系図 chatGPT claude

360bab4dd8_c.jpg
ChatGPT - 家系図作成 v0.7
実際に使う前に、正しいかどうかよく確認してね。
https://chatgpt.com/g/g-693e11fa538c8191956ab1c9aa0d3912-jia-xi-tu-zuo-cheng-v0-7

遺伝性腫瘍の診療では、家系図が欠かせません。遺伝カウンセリングの現場でも、がんゲノム医療における二次的所見の評価でも、患者さんやそのご家族の病歴を視覚的に整理するために必ず家系図を作成します。しかし、正確な家系図を短時間で作成するのは意外と大変です。PowerPointなどで線や丸を組み合わせて作図しようとするともっと大変です。遺伝学的家系図の専用ソフトウェアを使うにしても、細かいルールに準拠しながら効率的に作図するには手間がかかります(有料アプリならお金もかかります)。

そこで、ChatGPTsの機能を使って、対話的に家系情報を収集しながらJOHBOC(日本遺伝性腫瘍学会)のガイドラインに可能な限り準拠した家系図を自動生成するアプリケーション*1を作ってみました。遊びで作り始めたわりには、以外とよくできたものが完成したのではないかと自負しています。2025年12月14日時点でバージョン0.7まで進化して、意外と実用性の高いツールになってきたと感じています。(実際に使用される場合はもちろん動作確認をして、出力された家系図が正しいかを人間の専門家の目でバリデーションしてください)

chatGPTの機能を使って、AIに家族構成を話しかけたら家系図を描いてくれるようなのを作って少しずついい感じになってきたから、いろいろとテスト運用してみてたのに…。てか、せっかくここまで作ったのに医学用途はGPTsに公開できないという利用規約なら使い道がないやないか\(^o^)/ pic.twitter.com/4iOcE0CC6a

— レ点🧬💉💊 (@m0370) December 13, 2025

なぜ家系図作成を自動化しようと思ったのか

遺伝性腫瘍の診療では、家系図が診断の出発点になります。例えばHBOC(遺伝性乳がん卵巣がん症候群)の評価では、発端者本人だけでなく、母方・父方の親族における乳がんや卵巣がんの発症歴を詳細に記録する必要があります。「診断時年齢」も重要です。45歳で乳がんと診断された方と、65歳で診断された方では、遺伝性の可能性が大きく異なるわけです。若年発症であればあるほど、遺伝性腫瘍の可能性を考慮しなければなりません。

家系図を手作業で作成すると、どうしても情報の抜け漏れが起きやすくなります。図もきれいに描けません。診断時年齢を記録し忘れたり、複数の疾患を持つ方の情報が整理しきれなかったり、兄弟姉妹の記載が曖昧になったりすることがあります。意外と遺伝学的家系図記載法には細かいルールがあり、しかも完全に全てのルールを網羅した標準的記載法は定まっておらず、たとえば遺伝性乳癌卵巣癌(HBOC)診療ガイドライン2024年の総論2に書かれた家系図記載法を見ても全体は網羅されていないように思います(たとえば何歳で乳癌発症などの表現型の記載例はなぜか無い)。年齢の単位サフィックス(56y、3m、10dのような表記)や、診断情報の記載順序、遺伝学的検査結果の表示方法など、忠実に従うべき記載例は多数ありますが、これに従った家系図を描くのは意外と大変で、これを毎回手動で守るのはそもそも時間がかかりすぎます。

なんでGPT-5.2やClaude Opus 4.5にどれだけ教えても正しく描けないんだと思ったら、2024年HBOCガイドラインの家系図の描き方だと○や□の下に「54y. 乳癌」とかいう記載法が全く載ってないのな。そりゃ学習しないのも当然だわ(2017年版手引きにはある)https://t.co/QRvspdKlXR

— レ点🧬💉💊 (@m0370) December 13, 2025

ChatGPTsなどのLLMを使えば、対話を通じて必要な情報を自然に収集し、標準に準拠した家系図を自動生成できるはずです。そう考えて、遊びのつもりで取りかかりました。(もっとも、はじめはClaude Codeを使ってやろうとしたのですが、Claude Codeは圧倒的にいろんなことができるものの有料プランでないと使えない関係上、みんなに広めるには不向きだと考えてchatGPTsに切り替えました)

チャット感覚で問診内容などを書き加えていくとchatGPTのサポートで家系図を完成させられる
チャット感覚で問診内容などを書き加えていくとchatGPTのサポートで家系図を完成させられる

システムの構成——GPTsとPythonライブラリの組み合わせ

GitHub - m0370/pedigree_drawer
Contribute to m0370/pedigree_drawer development by creating an account on GitHub.
https://github.com/m0370/pedigree_drawer

システムは大きく2つの部分から構成されています。

前半パートはchatGPTのGPTsと呼ばれるカスタムGPT機能です。ここではユーザーが投入した家系情報を収集し、所定のJSONフォーマットを埋めてゆくようにして自然言語で投入された家計情報を構造化してゆきます。

不足する情報や曖昧な点があればchatGPTがそれを補完するように質問を投げかけます。「発端者の年齢は?」「診断時年齢は?」「第一度近親者の既往歴は?」といった質問を自然な会話の中で投げかけ、必要な情報を漏れなく集めてゆき、家系図を描く下地となるJSON中間表現を完成させます。複数疾患がある場合や、詳細不明の兄弟が多数いる場合など、複雑なケースにも対応できるように設計しました。

JSON中間表現は、臨床情報を構造化して保存するための標準フォーマットです。個人情報(ID、性別、年齢、診断情報、遺伝学的検査結果など)と関係情報(親子関係、兄弟関係、近親婚、離婚など)を明確に分離し、拡張性を持たせています。

JSON中間はこのような形式になっており家系を構造化データにする
JSON中間はこのような形式になっており家系を構造化データにする

後半パートはPythonで実装されたレンダリングライブラリ(pedigree_drawer_lib.py)です。JSON中間表現を受け取り、JOHBOCのガイドラインにできるだけ準拠した形のSVG家系図を生成します。このライブラリは、個体記号の配置、親子線や兄弟線の描画、診断情報の表示、遺伝学的検査結果の記載、凡例の生成など、細かい描画ロジックを実装しています。正しいJSONフォーマットが決まれば正しいSVG形式の画像を出力するという決定論的レンダリングを保証することを目指しています。

PowerPoint上で自由に編集ができる画像形式で出力される
PowerPoint上で自由に編集ができる画像形式で出力される

出力はSVG画像というフォーマットにしています。JPEGやPNGと違って、このフォーマットはPowerPointやWordに貼り付けて画像を編集できるという利点があります。エキパネのプレゼンテーションにも学会発表にも使いやすいようにということを意識しています。

しかも、出力されるSVG画像はPowerPointに貼り付けて「図形に変換」を押すと、パーツごとに編集可能に!作成した家系図から必要な部分だけを切り出したり何か追加情報を加えたりするのも、PowerPointで自由自在。便利でしょ? pic.twitter.com/hryKMr26KE

— レ点🧬💉💊 (@m0370) December 14, 2025

技術的な工夫——決定論的レイアウトの実現

最も苦労したのは、レイアウトアルゴリズムの実装でした。家系図では、世代ごとに個体を水平に配置し、親子線や兄弟線を適切に描画する必要があります。しかし、兄弟の数や配偶者の配置によって、各個体のX座標が動的に変化します。親と子の位置関係を保ちながら、重なりや不自然な線の交差を避けるためには、慎重な座標計算が必要でした。

特に難しかったのは、兄弟関係の配置と描画です。母方の伯父・叔父など、親世代を記載せずに兄弟だけを表示する場合、コの字型の兄弟線(sibship line)を描く必要があります。また、夫婦の両方に兄弟がいる場合は親子線と兄弟線が交わったり重なったりして読みにくくなります。無用な画像の重なりをできるだけ減らすのに苦労しました。

遺伝学的検査結果や診断情報の表示では、テキストの折り返しや行間の調整に気を配りました。診断が複数ある場合、「45y 乳癌」「60y 卵巣癌」といった情報が縦に並びますが、記号の下に収まるように配置し、読みやすさを保つ必要がありました。

複数疾患の塗り分けでは、記号を左右に分割して異なる色で塗る処理を実装しました。例えば、乳癌と白血病の両方を持つ方の記号は、左半分が乳癌の色、右半分が白血病の色になります。これにより、一目でどの疾患を持っているかが分かるようにしています。

まとめ——AIを活用した遺伝診療支援ツールの可能性

ChatGPTsを活用した遺伝学的家系図作成ツールは、遺伝性腫瘍の診療やがんゲノム医療において有用な支援ツールになる可能性があるだけでなく、このノウハウは家系図作成以外にもかなり役立ちそうです。

自分の仕事上の手間を減らすために何時間も仕事以外の作業を増やすのは本末転倒ではありますが、今後も実臨床でのフィードバックを得ながら改善を続け、遺伝診療の質向上に貢献できるツールに育てていきたいと思います。


この記事に対するコメント

このページには、まだコメントはありません。

お名前:


*1 https://chatgpt.com/g/g-693e11fa538c8191956ab1c9aa0d3912-jia-xi-tu-zuo-cheng-v0-7

更新日:2025-12-14 閲覧数:408 views.