↓ ↑ページトップへ
表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
PR
61/72

2026年7月5日 AM その5

それはさておいて、まずはデータの整理方法だ。

視線をさくらのPCのデスクトップに戻す。

さてどうやって問いかけたものかと少し考えてから、キーボードを叩く。


『あなたに、HTMLをベースに、画像、添付のpdfなどで構成されたWebサイトの情報を渡す際に、

1.サイト構成そのままにダウンロードしたファイル群

2.WebサイトをPDF変換したもの

3.Webサイトの情報をMarkdownに変換したもの

4.Webサイトの情報をプレーンテキストにファイル名を埋め込む形で関連付けて変換したもの

のそれぞれで渡す場合のメリット/デメリットを提示してください。』


「はい、晴菜さん。

現在の私の構成を前提にすると、私が何をするためにデータを渡していただくのかによって、各方式の間には明確な違いがあります。具体的な項目としては、…」


観点としては、情報の保持、RAGの元データとしての適性、構造の保持の3つが挙げられている。

ダウンロードしてきたサイト構成そのままのデータを消すつもりはないので、情報はコピーしたままのデータを持っておけばよい。

RAGの元になるデータとしての適性は、やはりMarkdownが有力ということだった。

画像については、さくらと連携できるように構成されたモデルの中に、画像解析に特化したAIモデルが含まれているので、そのモデルで画像の説明文を生成してから、説明文の方をRAGに登録するという方法が提示されている。

そして、ページ本文とは別に、Webサイトとしての構成情報にあたるmetadata、ページ内の文章と画像の関係とか、ページ間の親子関係とか、といった内容を、jsonのような形で構造化されたテキスト情報に書き出したものを、別に作成しておくのが良いという提案まであった。


そうなると、次に必要なのは、Markdownの文書と、Metadataをどうやって生成するかだろうか。

『上記の前提で、Markdownへ変換する手段と、Metadataを作成する手段には、どのようなものがありますか?』


「はい。

まず、Markdownの文書とMetadataの作成については、すべてをAIに任せない方がよいです。

なぜなら、…」

HTMLも、Markdownも、Metadataも、もともと構造化された文字列で構成されているという点は共通している。

なので、HTMLからMarkdownの文書とMetadataの生成は、かなりの部分を機械的に変換できるだろう、というのがさくらの見立てだ。

これは、私の持っている知識とも一致していて、とてもリーズナブルに思えた。


『HTMLをMarkdownに変換する部分を、Pythonスクリプトで自動化する場合の、サンプルコードを作成してください。』


「もちろんです。

今回の場合、HTMLからMarkdownへの変換する部分だけではなくて、Metadataの生成を同時に実行できる形にしておくと、後の工程がかなり楽になると思います。

ローカルストレージに保存されているWebサイトのHTMLを入力とする場合には、…」

さくらがてきぱきとスクリプトを構成していく。

きっと、彼女の得意分野だろうから、なんとなく弾んでいるように見えた。

…いや、私の方が、自分にもなじみのある領域の話になって、少し浮ついているのかもしれない。


読み進めていくと、"必要なライブラリ"という項目が目に入って、息が詰まった。

「ライブラリ、今手元にあるもの以外は、もう手に入らないや…」

インターネットが生きていた頃であれば、コマンド一つで様々なライブラリが導入できたけれど、今はもう、それらへのアクセスは失われてしまっている。

もし、手元にライブラリがなければ、実装は何倍も大変になるだろう。


さくらが提示したライブラリは2つ。

HTMLの解析をする機能を提供するライブラリと、HTMLやPDFのデータを、Markdownに変換する機能を提供するライブラリのようだ。


そのうちの1つには、幸いなことに見覚えがあった。

Webサイトをローカルにコピーしてくるときに使ったものだ。

先日、"彼女"とWebのデータを集めたときに、"彼女"に勧められたコピー方法を実行するときに必要だった。

今、Webサイトが元の構造を保ったまま手元に残せているのはそのおかげで、それが、こんなところにまで影響してくるということがわかって、"彼女"にはどれだけ感謝しても足りないなと思う。


問題は、もう一つの方だ。

HTMLやPDFのデータを、Markdownに変換する機能を提供するライブラリ。

少なくとも私はこれまで、そのような用途のコードを書いていない。

まずは、自分のノートPCの方で調べてみたが、当該ライブラリはやはりインストールされていなかった。

後は、

「お父さんが、さくらのPCに入れているかどうか、か。」


さくらのPCでコンソールを立ち上げる。

私のPCの開発環境は、基本的には父の方法に倣って構築したものだから、扱いはわかっている。

当該ライブラリを検索してみる。

「…入ってたよ、お父さーん。」

力が抜ける。

なんて準備のいい人なんだろう、ちょっと都合がよすぎやしないだろうかとも思ったけれど、父はmarkdownで文書を残していたのだから、その作成過程で使っていたのだろうと推測する。

逆に、さくらのPCにはHTML解析のライブラリが入っていなかった。


でも、父ならきっと…

そう思って、workディレクトリの中を少し探すと、Markdown変換用のライブラリのダウンロードパッケージと思しきファイルが見つかる。


『いいかい晴菜、ライブラリとかって、結構更新が入って、使い方が変わることがあるんだ。

だから、特に人に渡して使ってもらうようなソフトを作る場合は、互換性を保つために、使っているライブラリもできるだけその当時のバージョンのものをローカルにダウンロードしておくのがいいと、父さんは思っている。』

今の状況は、きっと父が想定していたような状況ではないけれど、父のその考え方が、また私を助けてくれている。


「私、お父さんみたいになれるかな?」

少なくとも、これからも父の考え方を見習らって、できるだけ実践していきたいと思った。

10月に入ってからなかなか執筆時間が確保できなくなっているので、次回から更新ペースを隔日に戻します。

少し間延びしてしまって申し訳ないですが、引き続き読んでいただけると嬉しいです。

よろしくお願いします。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。