コース目次
アカデミーモジュール 8 · 資料収集と実践的な活用
フィード・ニュース・価格データの収集
このレッスンで学ぶこと
- ライブデータがグラフへ入る3つの方法(今すぐ検索、エンティティのフォロー、継続フィード)を説明できる
- スケジュール、取得、重複排除、live/ノートまたは数値観測というフィードの処理を追跡できる
- タイトルバーのライブウィンドウで分単位の収集時間を選び、ライブフィードと定期(毎時・毎日)フィードを見分けられる
- カタログのソースや任意のRSSフィードを有効にし、エンティティのニュースをフォローできる
- 株式・暗号資産の価格をスパークラインで追跡し、すべてのフィードを横断してキーワードを監視できる
ここまで構築してきたものは、すべて自分の情報です。自分で書いたノート、取り込んだファイル、そしてエージェントが推論に使うグラフです。
一方、外の世界は動き続けます。競合が価格を下げ、企業が8-Kを提出し、株価が窓を開けて下落し、速報が流れます。先週入力した情報しか知らないナレッジグラフは、常に一歩遅れてしまいます。
ライブデータは、その差を埋めます。Consilienceはニュース、届出、調査、価格をワークスペースへ直接取り込みます。文章は通常のノートとなり、他のノートと同じグラフへ抽出されます。このレッスンでは、次の実践レシピへ進む前の最後の要素として、3つの取り込み方とフィードの内部処理を学びます。
- ライブフィード
- Consilienceが一定の間隔で確認するソースです(ニュース、届出、価格など)。新しい項目はワークスペースへ自動的に記録されます。
- ライブウィンドウ
- 分単位のフィードを収集する時間を、ワークスペースごとに切り替える設定です。タイトルバーのアンテナボタンから、オフ、30分、数時間、常時を選びます。毎時・毎日のフィードには影響しません。
- live/フォルダ
- フィードから記録した項目をMarkdownノートとして保存する場所です。追記専用で時刻が付き、自分で書いたノートと同様にグラフへ抽出されます。
- フォロー
- エンティティページからワンクリックで、そのエンティティに紐づくニュースフィードを作成する機能です。
- 観測値
- 価格など、1回分の数値サンプルです。専用の時系列ストアへ保存され、スパークラインで描画されます。ノートにはなりません。
- 監視
- キーワードのルールです。いずれかのフィードが一致する項目を記録すると通知されます。
外部データを受け取る3つの方法
ライブデータの取り込み方は、一度きりの検索から常時監視まで3つあります。どの程度継続して追いたいかで選びます。
| モード | 動作 | 適している場面 |
|---|---|---|
| 今すぐ検索 | エンティティについて、その場で1回だけウェブ検索する。定期実行はしない | 1つの対象について、今回だけ最新情報を知りたいとき |
| エンティティをフォロー | エンティティに紐づくニュースフィードを作成し、関連ニュースを継続的に取り込む | 特定のエンティティを継続して追いたいとき |
| 継続フィード | 媒体、届出ストリーム、価格などのソースを一定の間隔で確認する | 1つのエンティティではなく、情報の流れ全体を追いたいとき |
3つに共通する仕組み
どのモードでも、結果の形は同じです。項目は時刻付きの追記専用Markdownノートとして`live/`フォルダへ保存されます。通常のノートなので、自分で入力した内容と同じようにナレッジグラフへ抽出されます。そこに登場する人物、企業、主張が、エンティティとつながりに加わります。ライブデータとは、自動的に届くノートです。
例外は純粋な数値です。価格の1ティックには抽出する文章がないため、軽量な時系列ストアに観測値として保存し、スパークラインで表示します。ノートにもグラフにも入りません。文章はlive/、数値は観測値と、保存先が分かれます。
フィードの内部処理
バックグラウンドでは1つのスケジューラーが動き、各フィードに実行時刻かどうかを確認します。実行時刻になると、簡潔なパイプラインが動きます。この流れを理解すると、画面に表示される状態を読み取れます。
各サイクルで起きること
- スケジュール
スケジューラーが各フィードの実行間隔を確認します。対象のフィードだけが動き、それ以外は待機します。フィードが動くのは、そのワークスペースを開いている間だけです。ワークスペースを閉じると収集も止まります。さらに、分単位(5〜30分)のフィードはライブウィンドウがオンの間だけ実行されます。毎時・毎日のフィードは、後述のとおりウィンドウに関係なく予定どおり収集します。
- 取得
コネクターがRSS/Atomフィード、GDELTのニュース検索、SEC EDGARの届出ストリーム、価格エンドポイントなどから情報を取得します。条件付きリクエストを使うため、ソースに変更がなければ通信量はごくわずかです。
- 重複排除
各項目を、すでに記録済みの内容と照合します。既出の項目は抽出前にここで除外されます。判定はワークスペース全体に及ぶため、重複する2つのフィードが同じ記事を取得しても、既存のノートを参照し、二重には書き込みません。高頻度のフィードでグラフが埋まるのを防ぐ仕組みです。
- 記録
新しい項目はlive/フォルダへノートとして書き込まれ、抽出待ちに入ります。数値なら観測値ストアへ追加されます。どちらも、その画面を開き直さなくても自動的に反映されます。
カタログと任意のフィード
左サイドバーからライブフィードを開きます。コマンドパレットやmacOSの「移動」メニューからも開けます。「ソースを追加」では、ニュース、金融、調査、ソーシャルなど8つのカテゴリに約60の内蔵ソースが用意されています。大半はAPIキーなしですぐに記録を始めます。株価取得のFinnhubなど、一部は無料のAPIキーが必要ですが、接続画面から取得ページへ移動できます。
カタログにない場合は、上部にある破線の「独自のフィードを追加」へRSSまたはAtomのURLを貼り付け、「追加」をクリックします。他のソースと同じフィードとして登録され、ファイルツリーのlive/フォルダにノートが保存されます。
フィードはワークスペース単位で、明示的に有効化する
フィードは追加したワークスペースに属し、そのワークスペースを開いている間だけ収集します。アプリを閉じているときに、全体で動くバックグラウンドクローラーはありません。
記録済みのノートは追記専用です。フィードをオフにする、またはエンティティのフォローを解除すると、新規項目の取得は止まりますが、作成済みのノートと既出項目を記憶する重複排除台帳は残ります。後で再びオンにしても、ソースの履歴をすべて記録し直さず、新しい項目から再開します。
収集時間を決めるライブウィンドウ
ライブ収集は、アプリを開いている間ずっと分刻みで流し続ける必要はありません。タイトルバー右側、エンティティテーブルボタンの左にあるアンテナボタンが切り替え口です。クリックして、オフ・30分・1時間・4時間・本日終了まで・常時オンから選ぶと、分単位のフィードはその時間だけ新しい項目を取得します。
ライブ収集と定期収集は異なる
分単位のフィード(5分、15分、30分間隔)は、ライブウィンドウがオンの間だけ収集します。一定時間だけ監視したいときにオンにし、オフにすれば静かになります。初期値はオフなので、アプリを開いたままでもデータが流れ続けることはありません。
毎時・毎日のフィードは定期収集です。ワークスペースが開いていれば、ライブウィンドウの状態に関係なく指定の間隔で動きます。「毎朝1回だけ確認する」といった運用にウィンドウは不要です。フィード一覧のライブ / 定期チップで区別できます。
ライブウィンドウがオフで、分単位のフィードが待機している場合、アンテナボタンに件数バッジが付きます。アクティビティセンターの未読件数と同じ考え方です。フィードのタブにも、オンにするためのバナーが表示されます。意図せずオンのままにするより、静かなオフ状態を明確にします。
エンティティのニュースをフォローする
エンティティのプロフィールページを開き、外部シグナルを探します。ニュースをフォローを押すと、そのエンティティの名前を検索条件にしたニュースフィードが作られます。関連する記事がlive/フォルダとグラフへ継続的に入ります。
もう一度クリックするとフォローを解除します。フィードはオフになりますが、ノートは残ります。削除ではなく無効化なので、後で再びフォローしても、同じ記事を重複記録せず続きから再開します。適切なソースを探し回らずに、1つの企業、人物、製品を最新状態に保つ最短の方法です。
価格をスパークラインで追跡する
同じ「外部シグナル」に、価格を追跡と株式 / 暗号資産の切り替えがあります。暗号資産はAPIキー不要なので、BTCのようなシンボルだけで始められます。株式にはFinnhubを使います。初回だけ無料のAPIキーを貼り付けると、OSのキーチェーンに保存され、以後の銘柄でも再利用されます。
- 追跡する価格ごとに、最新値と系列開始時からの変化を示すスパークラインが表示されます。最初のサンプルはすぐに現れ、データが蓄積するにつれて推移が見えるようになります。
- 取得間隔は5分、15分、1時間、毎日から選びます(初期値は15分)。5分と15分はライブウィンドウがオンの間だけ取得し、1時間と毎日はウィンドウに関係なく定期収集します。編集画面を開き直しても前回選んだ間隔が選択済みになるため、意図せず初期値へ戻りません。
- 価格は観測値です。専用ストアの時系列であり、ノートではありません。グラフを埋め尽くすこともありません。
すべてのフィードでキーワードを監視する
ライブフィード画面の下部にある「キーワードを監視」から、監視ルールを追加できます。製品名、競合、フレーズなどを入力すると、いずれかのフィードが一致する項目を記録した際に「監視:Nvidia」のような通知が届き、対象ノートへ直接移動できます。大量のフィードを眺める代わりに、本当に重要な1件を知らせてもらえます。
フィードを追加し、エンティティをフォローする
- 左サイドバーからライブフィードを開きます。破線の「独自のフィードを追加」へ、普段読むRSS URL(ニュースサイトのフィードなど)を貼り付け、「追加」をクリックします。
- ファイルツリーにlive/フォルダが現れ、その中にノートが届く様子を確認します。1件開き、見出し、出典、時刻を確認します。
- 次にエンティティのプロフィールページを開き、「外部シグナル」から「ニュースをフォロー」をクリックします。
- 少し待ってから、エンティティのシグナル一覧とlive/フォルダに最初の記事が届いているか確認します。
フィードのノートがlive/に保存され、グラフへ抽出されます。フォローしたエンティティには、その対象に紐づく記事が、自分で何度も検索しなくても蓄積されます。
届いた情報をまとめて確認する場所
ナレッジグラフのビューには、最近届いたフィード項目をソース別にまとめる専用の外部シグナルパネルがあります。ノートを1件ずつ開かなくても、新着内容を確認できます。
フィードを設定せず、今回だけ最新の回答が必要なら、エンティティページの「今すぐウェブで検索」を使います。1回だけのウェブ検索で、結果をワークスペースへ保存できます。「外部シグナル」内でフィードと並んでいます。
仕組みは、スケジュール、取得、重複排除ゲート、その後のノートまたは数値という流れです。ノートは、これまで構築してきたグラフへ入ります。次にエージェントへ質問するときは、先月書いた内容だけでなく、今朝起きた出来事も推論の対象になります。
次は、調査、読解、意思決定を結び付ける、初めての一連の実践レシピです。