Filter
Exclude
Time range
-
Near
RAGで「なんか微妙な回答しか返ってこないな」と思ったこと、ない?それ、LLMのせいじゃなくて、検索の仕組みに限界があるだけかもしれない。 Googlerが Google Developer Forums にVertex AI上で「Agentic GraphRAG」を構築する実装ガイド(Part 1 & 2)を投稿していて、これが「RAGの次のフェーズ」を考える上でかなり良い教材だったので、整理してみた。 ━━━━━━━━━━━━━━━━━━━━ 【前提:普通のRAGは何をやっているか】 まずRAG(Retrieval Augmented Generation)をおさらいしておく。 LLMは学習データにない情報を知らない。だから社内文書や最新情報を答えさせたいとき、「質問に関連しそうな文書を先に検索して、その文書と一緒に質問をLLMに渡す」という仕組みを使う。これがRAG。 具体的には: 1. 社内文書をチャンク(段落くらいの塊)に分割する 2. 各チャンクをベクトル(数値の配列)に変換してデータベースに格納する 3. ユーザーの質問もベクトルに変換する 4. 質問ベクトルと「意味的に近い」チャンクをtop-k個取ってくる 5. 取ってきたチャンクと質問を一緒にLLMに渡す 6. LLMがチャンクを参照しながら回答を生成する これがいわゆる「Vector RAG」で、現在最も広く使われている方式。LangChainやLlamaIndexで構築するRAGも基本この仕組み。 ━━━━━━━━━━━━━━━━━━━━ 【Vector RAGの限界:マルチホップ推論ができない】 Vector RAGは「意味的に近いテキストを探す」のは得意。でも「関係性の連鎖を辿る」のが構造的に苦手。 記事のユースケースはサイバーセキュリティの脅威分析。たとえばこんな質問: 「製薬業界を攻撃する脅威アクターが使うマルウェアが悪用する脆弱性は何?」 この質問に答えるには、3つの関係を順番に辿る必要がある: 脅威アクター →【標的にしている】→ 製薬業界 脅威アクター →【使っている】→ マルウェア マルウェア →【悪用している】→ 脆弱性 これが「マルチホップ推論」。点Aから隠れた点Cを経由して点Bに到達する。 Vector RAGだとどうなるか: → 「製薬業界」に意味的に近いチャンクは取ってこれる → でもそのチャンクに「APT29がWellMessを使い、WellMessがCVE-2023-1234を悪用する」という情報が丸ごと入っている保証はない → 情報が別々のチャンクに散らばっていたら、繋がらない 人間に例えると、図書館で「製薬業界のセキュリティ」の棚から本を3冊持ってきて「この中から答えて」と言っているようなもの。たまたま3冊の中に全部書いてあればいいけど、犯人の情報がサイバー犯罪の棚に、マルウェアの情報がソフトウェアの棚にあったら、答えられない。 ━━━━━━━━━━━━━━━━━━━━ 【GraphRAGという解決策】 GraphRAGは「ナレッジグラフ」を使って、この問題を解決する。 ■ ナレッジグラフとは 情報を「エンティティ(モノ・人・概念)」と「関係性」の網目で表現したデータ構造のこと。 例えばサイバーセキュリティなら: ・APT29(脅威アクター)——USES——> WellMess(マルウェア) ・WellMess(マルウェア)——EXPLOITS——> CVE-2023-1234(脆弱性) ・APT29(脅威アクター)——TARGETS——> 製薬業界(セクター) テキストを塊で保存するのではなく、「誰が何を使って何を攻撃しているか」を明示的に構造化して格納している。 ■ GraphRAGの検索フロー Vector RAGが「似たテキストを探す」のに対して、GraphRAGは「グラフの構造を辿る」。 先ほどの質問なら、Neo4j(グラフデータベース)に対してCypherというクエリ言語で、「製薬業界を標的にしているアクター → そのアクターが使うマルウェア → そのマルウェアが悪用する脆弱性」を一発で辿れる。「たぶん近いテキストが引っかかるだろう」という確率的なアプローチじゃなくて、構造的・確定的に辿れる。 ■ 何が嬉しいか ・マルチホップ推論が確実にできる——関係の連鎖をクエリ1本で辿れる ・説明可能性が高い——「どのノードとどのエッジを辿ったか」で答えの根拠が完全にトレースできる。Vector RAGだと「このチャンクが類似度スコア高かったので取ってきました」としか言えない ・網羅的クエリに強い——「APT29に関連するすべての脆弱性を列挙せよ」に完全な結果を返せる。ベクトル検索はtop-kの近似結果しか返せない ━━━━━━━━━━━━━━━━━━━━ 【で、"Agentic"が付くと何が変わるか】 ここからが本題。「GraphRAG」と「Agentic GraphRAG」は別物。 ■ 普通のGraphRAG 質問が来たら、固定のパイプラインで処理する。 質問 → ベクトル検索+グラフ検索 → 結果をLLMに渡す → 回答 毎回同じフローを通る一本道。質問がグラフ検索向きだろうがベクトル検索向きだろうが、同じ処理をする。 ■ Agentic GraphRAG(一般的な概念) LLMが「エージェント」として、どのツールをどの順番で使うかを質問ごとに自分で判断する。 質問 → エージェント(LLM)が考える ├→ 「これはグラフ検索が必要だな」→ Cypherクエリ実行 ├→ 「これはベクトル検索の方がいいな」→ ベクトル検索 ├→ 「まずグラフで調べて、足りない情報をベクトル検索で補おう」→ 両方実行 └→ 「これは自分の知識で答えられる」→ 直接回答 人間のアナリストが「まずこっちのDBで調べて、その結果を見てから別の資料にあたろう」とやるのと同じ動き。 ■ 今回の記事の実装 今回の記事では、エージェントにグラフ検索ツール(query_threat_graph)を1つ登録し、Instructionで「脅威・アクター・CVEについての質問にはこのツールを必ず使え。内部知識に頼るな」と明示的に強制している。完全に自律的な判断というよりは、ルールベースでツール使用を強制する設計。 ただしADKのエージェントフレームワーク上に乗っているので、ツールを追加すれば判断の幅を広げられる拡張性がある。今回はシンプルなユースケースで「Agenticな骨格」を作った、というのが正確な理解だと思う。 エージェントの実行ログ(Part 2より)はこうなっている: 1. Reasoning:「ユーザーはマルウェアについて聞いている。グラフを検索すべきだ」 2. Tool Call:query_threat_graphツールを呼び出し 3. Graph Execution:CypherクエリをNeo4jで実行 4. Final Answer:結果を元に回答を生成 固定パイプラインから、ツール呼び出しを判断できるエージェントアーキテクチャへ。これが"Agentic"の意味。 ━━━━━━━━━━━━━━━━━━━━ 【Googleの実装アーキテクチャ】 記事ではサイバーセキュリティ脅威分析エージェントを、以下の構成で構築している: ■ Vertex AI Reasoning Engine(マネージドランタイム) エージェントのコードをホストするマネージドランタイム。スケーリングやインフラ管理を抽象化し、スケーラブルなAPIエンドポイントを作ってくれる。 ■ Google ADK(Agent Development Kit) エージェントの「頭脳」を定義するフレームワーク。ペルソナ(あなたはサイバーセキュリティアナリストです)、ツールバインディング(このツールを使え)、状態管理を設定する。 ■ Neo4j(ナレッジグラフ) ThreatActor、Malware、Vulnerability、Targetといったノードと、USES、EXPLOITS、TARGETSといったエッジを格納するグラフデータベース。 ■ Gemini 2.0 Flash(LLM) 自然言語の質問をCypherクエリに変換し、グラフから取得した結果を自然言語の回答に合成する。低レイテンシなので、ツール呼び出しの応答速度が重要なエージェントアーキテクチャに向いている。 仕組みの要はLangChainのGraphCypherQAChain。ユーザーの自然言語 → LLMがCypherに変換 → Neo4jで実行 → 結果をLLMが要約、という流れを1つのチェーンで実現している。 ━━━━━━━━━━━━━━━━━━━━ 【デプロイで待ってる地獄たち】 Part 2がこの記事の本当の価値だと思った。ローカルで動かすのは簡単。問題は本番デプロイ。 Vertex AI Reasoning Engineにデプロイしようとすると、3つのエラーに直面する: ■ PicklingError(シリアライゼーション失敗) Reasoning Engineはコードを「pickle」(Pythonオブジェクトをバイト列に変換)してリモートコンテナにアップロードする。ところがNeo4jへのソケット接続やスレッドロックはpickleできない。ローカルで動いてたオブジェクトをそのまま渡すと死ぬ。 解決策:デプロイ専用に新しい(Fresh)インスタンスを作り直す。ローカルで使っていたオブジェクトは捨てる。 ■ FailedPrecondition(認証コンテキスト喪失) ローカルのColab/ノートブックでは認証が通っている。でもリモートコンテナにアップロードされたコードは、そのコンテキストを引き継がない。「vertexai.init()が呼ばれていない」状態でSDKが動いて400エラー。 解決策:リモート側の実行時にvertexai.init()を再度呼ぶ。 ■ Async Mismatch(非同期/同期の不一致) Google ADKのメソッドは非同期(async)。Reasoning Engineは同期的なストリーミングを期待している。このミスマッチで「APIメソッドの登録に失敗」という警告が出る。 解決策:同期ラッパークラスを実装する。 記事ではこれらの解決策を「AgentWrapperパターン」として1つのクラスにまとめている。主な役割はリモートコンテナ内でvertexai.init()を再呼び出しして認証コンテキストを再確立し、同期的なstream_queryインターフェースを公開すること。PicklingErrorの方はAgentWrapperとは別のステップで、デプロイ時にFresh Instanceを新しく生成することで回避する。 概念はエレガントでも、デプロイは泥臭い。このへんの実践知が一番価値あると思った。 ━━━━━━━━━━━━━━━━━━━━ 【もう一つ面白かったところ:ツール関数内インポート問題】 地味だけど重要なハマりポイントがもう1つ紹介されていた。 エージェントが呼び出すツール関数(query_threat_graph)の中で、LangChainやNeo4jのライブラリをインポートする位置が問題になる。 普通はファイルの先頭でimportする。でもReasoning Engineにデプロイすると、関数がシリアライズされてリモートで実行されるため、関数の外のimportはリモート側で見えない。 解決策は「関数スコープ内でインポートする」。Pythonの常識からすると気持ち悪いが、サーバーレス的な環境ではこれが正解。AWS LambdaやCloud Functionsに慣れている人なら「あるある」だけど、初めて踏むと意味がわからなくて数時間溶ける。 ━━━━━━━━━━━━━━━━━━━━ 【GraphRAGの正直な限界】 万能じゃない。ここは正直に書いておく(以下は元記事の主張ではなく、一般論としての補足)。 ■ ナレッジグラフの構築・維持コストが重い スキーマ設計(どんなノードとエッジを定義するか)、データ投入、更新の仕組み、全部自分で作る必要がある。Vector RAGなら「ドキュメントをチャンクに分割してベクトル化」で済むところが、GraphRAGは「エンティティを抽出し、関係性を定義し、グラフに投入する」というパイプラインが必要。 ■ 非構造化テキストの柔軟な意味検索はVector RAGの方が得意 「なんとなくこういう話が書いてある文書」を探すようなファジーな検索は、ベクトル検索の方が向いている。グラフは構造化された関係性に強い反面、構造化されていない情報は扱えない。 ■ スキーマの設計が悪いと逆効果 「どのエンティティをノードにするか」「どの関係性をエッジにするか」の設計がユースケースに合っていないと、せっかくグラフを作っても有用なクエリが書けない。ここはドメイン知識が必須。 ━━━━━━━━━━━━━━━━━━━━ 【個人的な考察】 今のベストプラクティスは「Vector RAGで広く意味検索 GraphRAGで関係性の深い推論」のハイブリッドだと思う。今回の記事はグラフ検索側に特化した実装だが、ADKのエージェントにベクトル検索ツールを追加すれば、そのままハイブリッド構成に拡張できる骨格になっている。 面白いのは、Harness Problemの記事と同じ構造が見えること。Vector RAGで「なんか微妙」と感じていたのは、LLMの能力が足りないんじゃなくて、検索の仕組み(=ハーネス)がユースケースに合っていなかっただけかもしれない。モデルを変える前に、検索の仕組みを変える。 実際にどういうユースケースでGraphRAGが効くかというと: ・サプライチェーン分析(部品A → 製造元B → 原材料C の連鎖) ・脅威インテリジェンス(この記事のユースケース) ・医薬品の相互作用分析(薬A → 成分B → 酵素C → 薬D の相互作用) ・組織のナレッジマネジメント(人 → プロジェクト → 技術 → 顧客 の関係性) 共通するのは「関係性の連鎖が価値を持つドメイン」。こういうドメインでVector RAGだけでやろうとすると、チャンクの切り方やtop-kの設定をどんなに工夫しても構造的に限界がある。 RAGの次のフェーズ、確実にここに来てると感じた。 ━━━━━━━━━━━━━━━━━━━━ 元記事(Part 1:アーキテクチャ & 開発): discuss.google.dev/t/buildin… 元記事(Part 2:デプロイ & 可視化 & 本番運用): discuss.google.dev/t/buildin… Microsoft Research GraphRAG論文: arxiv.org/abs/2404.16130
3
7
1,244
WE NEED TO DO A WELLMESS CHECK ON ALL LOVEBUGS AFTER THAT CONCERT IMMEDIATELY 😳 IS IT TOO LATE?! CAN ANY OF THEM BE SAVED??
1
16
231
2 Dec 2025
Replying to @dr_andrealove
The wellmess grifters have always been the Vaccine manufscturers since 1986.
2
59
Today on EMBN, Neil Donoghue rides with the one and only Chris Akrigg (Chris eKrigg), six-time British Trials Champion and master of mountain bike flow! Neil Donoghue gets a lesson as Chris breaks down the technique required to ride a technical e-bike climb, explaining the crucial difference between power and predictable grip. From his history in trials and his thoughts on that infamous crash to the enduring "buzz" that keeps him riding. 🎵 Music - licensed by Epidemic Sound 🎵 Hank's Acid Trip - Daniel Fridell Streetlight Jam - The New Fools It Breaks Me Down (Instrumental Version) - Parellite Ney Ney Ney (Instrumental Version) - Wellmess WHEW CHILE! - Sarah, the Illstrumentalist Symmetry - Christoffer Moe Ditlevsen It Goes Down - Dyalla #embn #ebikes #eMTB #bike #eBiking #emountainbike
36
27
2,905
@mddcTV : Wellness DRINK FOR A BETTER HEALTH. "Matcha Tea" #matchalover #wellmess #HealthyHabits #TrendingProducts
6
1
9
149
10 Aug 2025
Witamy w ⚡️Ford Capri City Legendy nigdy nie umierają☝️ 🎶 Utwór: Say You Will 🎹 Artysta: Wellmess ✍️ Napisany przez: Wellmess 📀 Wyprodukowany przez: Kasper Lindgren ☝️ Dzięki uprzejmości: Epidemic Sounds
1
2
560
10 Aug 2025
🚨#Summer: Calm Before Solana Storm 🎵Track: I Can't Wait No More - #Wellmess ⚡️🎧Turn Up! $CNN #FakeNews #Bullrun #CitizenNewsNetwork #Solana #Moon
1
3
175
25 Jul 2025
💊Visited one of my Friend Salon. Whenever she is out of her Collagen supplies, she always ask me to visit her. Since I work with the same Industry so, I get free supplies and she knows how to save money. Well, that's what friends are for. “Good friends, good books, and a sleepy conscience: this is the ideal life.” #Collegen #Wellmess #Friends #Freindship
2
47
I also like Spock's Beard, Porcupine Tree, and many other modern prog groups, even quite recent groups. I'm also quite keen with non-prog groups who do some prog music, even recent ones. Check Wellmess, for example: youtube.com/watch?v=wwGuUsZ1…

2
20
15 Apr 2025
Day 14 #DavidsMonthofMusic I'm A Hurricane - Wellmess youtu.be/rlrH3TNHyYU?si=TccW…
2
46
🧘‍♂️ De Wellness a Wellmess 😵‍💫 Cuando lo "saludable" se convierte en obsesión, deja de ser bienestar. María Laura Salazar nos habla sobre cómo el wellness puede transformarse en conductas de riesgo como la ortorexia o la vigorexia. 🚨 Episodio completo: youtube.com/watch?v=mxL1uEZ5…
4
338
Replying to @lfs6b
Bump music 5 - Urban Farm by Gary the Canary Bump music 6 - Mr Lollipop by Andreas Dahlback Bump music 7 - Hip Hop Rock Song by Def Lev Bump in music 8 - Beyond Elysium (Instrumental Version) by Wellmess, Tommy Ljungberg Bump music 8 - We Just Gotta (Get Together) - Wanda Shakes
2
38
28 Feb 2025
Replying to @theliverdoc
1. You are the best 2. You have more number of followers. 3. Your tweets are most relevant. 4. Your tweets if followed will contribute to wellmess and prevent iatrogenic diseases. 5. Don't try to be any man made list. 6. Value Your followers, viewership and engagement on X.
6
105
11,122
Listos para el siguiente capítulo de #mentealcuadrado sobre el #wellmess
3
12
2,331
❤️✨ Free pull Valentine's Day • Oh, My Darling: What You Need to Know (Hidden Truth Oracle, Lovers Message Oracle & Island Time Wellmess Love Oracle) Drop ur initial an emoji. RT, MBF, like this post and my pinned tweet (link below).

Knock, Knock, My Love 💞 Dalam rangka menyambut bulan Februari yang dikenal sebagai bulan kasih sayang, aku mau bawain penawaran khusus utk siapa pun yang kepo soal energi romantisnya. #zonauang #zonajajan #zonaba #tarotreader jasa baca tarot #tarotindonesia
27
24
21
3,366
Unmasking Cozy Bear: Inside the Operations of APT29 Cozy Bear, also known as APT29, is a notorious Russian state-sponsored advanced persistent threat (APT) group linked to the Russian Foreign Intelligence Service (SVR). Active since at least 2008, APT29 is renowned for its sophisticated cyber-espionage targeting government, diplomatic, think-tank, healthcare, and energy organizations globally. Key Figures in APT29 1. Sergey Morgachev: A highly skilled malware developer, Sergey Morgachev has been a key figure in crafting sophisticated espionage tools used by APT29. His work includes developing the Hammertoss malware, which uses innovative methods such as social media for command-and-control functions, enhancing persistence and covert communication. Morgachev's ability to integrate complex algorithms and obfuscation techniques into malware makes it highly resilient against detection and removal efforts. 2. Dmitry Dokuchaev: Known for his strategic mind, Dmitry Dokuchaev manages APT29’s overall strategy and operations. He is responsible for coordinating cyber-espionage campaigns that align with Russian intelligence objectives, ensuring seamless execution and alignment with broader geopolitical goals. Dokuchaev’s expertise in operational planning and resource allocation has been crucial in the successful deployment of high-stakes cyber operations, including high-profile breaches of government and private sector networks. 3. Anton Egorov: Specializing in the technical execution of espionage campaigns, Anton Egorov plays a vital role in APT29's operations. He focuses on network infiltration and data exfiltration, utilizing advanced techniques to bypass security defenses and maintain access to compromised systems. Egorov’s technical skills in deploying and managing malware make him a critical asset in the group’s ability to extract valuable information from targeted networks. 4. Igor Suslov: A master at exploiting vulnerabilities, Igor Suslov identifies and leverages weaknesses in target systems to gain initial access. His role is essential for setting the stage for further exploitation and data collection. Suslov’s deep understanding of software and hardware vulnerabilities allows APT29 to execute precise and effective attacks, often using zero-day exploits that catch targets off guard. 5. Nikolai Mikhailov: Tasked with developing secure communication channels, Nikolai Mikhailov ensures that APT29’s operations remain covert and effective. He designs encrypted communication methods that facilitate the safe transfer of commands and data between the group’s members and their malware implants. Mikhailov’s innovations in encryption and steganography help maintain the integrity and secrecy of APT29's operations. 6. Yevgeny Alexeyev: An expert in social engineering, Yevgeny Alexeyev crafts sophisticated spear-phishing campaigns to deceive targets and gain access to sensitive information. His ability to design persuasive phishing emails and malware-laden attachments that bypass security filters has significantly increased the success rate of APT29's initial intrusions. Alexeyev’s targeted approach often involves extensive research on victims to create highly personalized attacks. 7. Vladimir Kuznetsov: A prolific malware developer, Vladimir Kuznetsov is responsible for the creation and deployment of custom malware used in APT29’s operations. His continuous refinement of tools to evade detection ensures that the group’s malware remains effective against evolving security measures. Kuznetsov’s contributions to malware engineering include developing modular components that can adapt quickly to different operational environments. Notable Operations and Techniques APT29’s operations are characterized by their use of spear-phishing emails, which are meticulously crafted to appear legitimate and deceive recipients into revealing credentials or installing malware. These targeted attacks employ advanced social engineering techniques, enhancing their success rate. The group exploits both known and zero-day vulnerabilities in popular software, such as Microsoft Office, Adobe Flash, and network management tools, to gain unauthorized access to target networks. The group develops custom malware tools designed for stealth and persistence, including WellMess, WellMail, and Hammertoss. These tools are integrated with advanced obfuscation and encryption techniques to bypass traditional security measures and maintain long-term access to compromised systems. APT29 continuously updates and refines their malware, ensuring their operations remain effective against the latest security defenses. APT29’s strategic use of supply chain attacks allows them to compromise multiple organizations through a single point of entry. The SolarWinds attack is a prime example, where the group injected malicious code into software updates, infiltrating numerous networks simultaneously. This method is particularly effective for penetrating well-defended systems and showcases APT29's technical sophistication and strategic planning. Major Incidents In 2014, APT29 infiltrated the email systems of the US State Department and the White House using spear-phishing and advanced malware, gaining access to sensitive communications and exfiltrating critical information. These incidents highlighted APT29's capability to target and compromise high-profile government institutions with precision and stealth. The 2016 breach of the Democratic National Committee (DNC) by APT29 involved spear-phishing emails that accessed internal communications and sensitive data, which were subsequently leaked, causing significant political fallout. This operation demonstrated APT29's proficiency in conducting politically motivated espionage and influence operations, showcasing their impact on global political dynamics. In 2020, APT29 executed one of the most significant cyber-espionage campaigns by compromising the software supply chain of SolarWinds, a major IT management company. By injecting malicious code into software updates, the group gained access to the networks of numerous organizations, including government agencies and Fortune 500 companies. This attack underscored APT29's ability to execute highly coordinated and impactful operations, highlighting their technical expertise and strategic approach. Attribution and Affiliations APT29 is widely believed to be affiliated with the Russian Foreign Intelligence Service (SVR). This attribution is based on technical evidence, operational patterns, and historical targeting, aligning with Russian strategic interests. The group's activities consistently support Russia's geopolitical objectives by gathering intelligence on foreign governments and organizations. Conclusion APT29, or Cozy Bear, exemplifies the blurred lines between state-sponsored espionage and sophisticated cybercrime. Their dual engagement in traditional espionage activities and financially motivated attacks makes them a versatile and persistent threat. Understanding their key members, operations, and techniques is crucial for developing effective cybersecurity strategies and mitigating the risks posed by this formidable group.
2
2
834
ATTENTION PANTHERS TERRITORY. WE NEED ALL HA DS ON DECK FOR THIS. HE HAS NOT RESPONDED IN MORE THAN 24 HOURS. PLEASE LET ANY OF US KNOW IF YOU KNOW WHERE HE IS OR WHERE HE LVIES SO WE CAN DO A WELLMESS CHECK ASAP.
7 Jun 2024
If tonight was my last night on earth, would that be good or bad for the panthers cup chances
3
2
30
7,036