這一組可以想成:
Neo4j = 後端知識圖資料庫
Bloom = 前端「看圖+編輯」的圖形介面(給技術+非技術一起用)
我幫你做一份「實際可落地」的使用指南,重點放在:
組織內部知識管理
技術+非技術一起用、一起編
可以手動調整關係強度 / 距離
一、整體架構概念(先用白話講清楚)
Neo4j:
把所有東西變成「節點 (node)」,節點之間用「關係 (relationship)」連起來。
每個節點 / 關係都可以有屬性(例如:title、type、weight…)。
非常適合做 knowledge graph。
Bloom:
官方的圖形化探索工具,不用寫 Cypher(查詢語言),就能看圖、搜尋、編輯。
有「場景 scene」可以拖曳節點,互動式探索。
可以直接在畫面上新增 / 修改 / 刪除節點與關係(有寫入權限時)。
你可以把它想成:
技術同事:設計 schema、匯資料、寫自動化
非技術同事:在 Bloom 裡「看圖+微調關係」
二、安裝與啟動(兩種路線)
1. 雲端:Neo4j AuraDB + Bloom
Neo4j AuraDB 是官方雲端托管版 Neo4j,免自己維運。
在 AuraDB 控制台裡,會有 Bloom/Explore 分頁,可以直接連到你的資料庫視覺化。
適合:
你不想管 VM、安裝、備份
組織已經習慣用雲服務
2. 本機:Neo4j Desktop + Bloom
安裝 Neo4j Desktop → 建一個本機 DB。
Desktop 裡的「Explore」工具就是 Bloom 驅動的圖形化探索介面。
適合:
PoC、個人實驗、內部先玩玩看
沒有馬上要上雲端
建議:
個人 / 小團隊先用 Desktop 做 PoC
確認模式 OK 再搬到 AuraDB 給整個組織使用
三、先決定你的知識圖資料模型(給技術+架構概念)
以「組織內部知識管理」來說,可以這樣設計 schema:
節點類型 (labels):
:Document —— 各種檔案 / 文件
:Concept —— 抽象概念或主題
:Person —— 作者 / 使用者 / Stakeholder
(選配):Project, :System, 等
關係類型:
(:Document)-[:ABOUT]->(:Concept)
(:Document)-[:RELATED_TO { baseWeight, aliceWeight, bobWeight }]->(:Document)
(:Person)-[:AUTHORED]->(:Document)
這樣每一條 RELATED_TO 就可以放你的「強度 / 距離」屬性。
建立簡單範例(Cypher)
技術同事可以在 Neo4j Browser / Desktop「Query」執行:
CREATE (d1:Document {id: 'doc1', title: 'Neo4j 簡介'})
CREATE (d2:Document {id: 'doc2', title: 'Bloom 使用手冊'})
CREATE (c1:Concept {id: 'kgraph', name: 'Knowledge Graph'})
CREATE (p1:Person {id: 'alice', name: 'Alice'})
MERGE (d1)-[:ABOUT]->(c1)
MERGE (d2)-[:ABOUT]->(c1)
MERGE (p1)-[:AUTHORED]->(d1)
MERGE (d1)-[:RELATED_TO {
baseWeight: 0.6,
aliceWeight: 0.9,
bobWeight: 0.3
}]->(d2);這些資料一進 DB,就能在 Bloom 裡看到、操作。
四、Bloom 基本介面與核心概念
Bloom 的核心元素:
Scene(場景)
你目前畫面中看到的那一小片圖,就是一個 scene。
可以拖曳節點、放大縮小、右鍵開選單。
Perspective(視角)
定義「這張圖想給誰看」:
要 expose 哪些 label / relationship
每種類型用什麼顏色 / 圖示 / caption
允許哪些搜尋語句
同一個 Neo4j graph 可以有多個 perspective,對應不同部門 / 使用情境。
Legend panel(圖例 / 樣式控制)
列出所有類別(節點 / 關係型別)與其樣式(顏色、大小、線型)。
可以在這裡做 rule-based styling(依某個屬性改顏色、大小)。
對你來說:
Perspective + Legend = 定義「知識地圖看起來怎樣」的地方。
五、從零開始:建立一個給「非技術同事」用的 Bloom 視角
假設你已經有 Neo4j DB,裡面照剛剛的 schema 存東西。
Step 1:建立 Perspective
在 Bloom 裡:
開啟 Bloom → 連線到你的 Neo4j DB。
打開「Perspectives」管理畫面。
選擇「Blank Perspective」,自己手動挑要用的 labels(Document、Concept、Person)。
定義每個類別的:
顏色(例如 Document 藍、Concept 綠、Person 橘)
圖示
Caption 顯示哪個 property(例如 Document 顯示 title)
Step 2:定義關係的樣式(包含權重)
在 Legend panel:
找到 RELATED_TO relationship type。
設定基本顏色、線寬。
加入 rule-based style:
例如以 baseWeight 或 aliceWeight 做樣式規則。
Bloom 支援「依屬性改顏色與大小的 rule-based styling」。
可以設計成:
weight >= 0.8 → 粗線+亮色
0.4–0.8 → 中等線寬
< 0.4 → 細線+淡色
Step 3:讓非技術同事「看圖」
在 Bloom 中:
使用搜尋欄位輸入 Document 名稱或關鍵字。
Bloom 會顯示對應節點及其鄰居,形成 scene。
同事可以:
拖曳節點(整理成自己看得懂的布局)
滑鼠滾輪縮放
右鍵節點展開更多關聯(例如再展開 ABOUT 的 Concept)
六、在 Bloom 裡「編輯圖」:讓人手動調整關係
Bloom 支援直接在畫面上編輯 graph(前提:連線帳號有寫入權限)。
1. 新增關係(讓使用者補充他覺得「有關」的連結)
操作:
在 scene 中按住 Ctrl / Cmd 選兩個節點。
右鍵 →「Create Relationship」。
選 RELATED_TO 類型,輸入初始 weight(例如 0.5)。
→ 資料會直接寫回 Neo4j。
2. 修改關係強度 / 欄位
操作:
點選一條關係線。
右側 Inspector 會顯示 relationship 的 properties。
直接編輯 aliceWeight / baseWeight 等欄位。
結果:
Bloom 依照 Legend 裡的 rule-based styling 立刻更新線的顏色 / 粗細。
這就是你要的:
人類使用者透過 UI 手動調整關係強度(權重),而且立刻在視覺上看到差異。
3. 新增 / 編輯節點
非技術同事也可以:
在空白處右鍵 → Create Node
填 Document 或 Concept 相關欄位
再用 Create Relationship 接到其他節點
Bloom 官方也有示範「如何建立與複製 node/relationship」的影片教學。
七、探索功能:讓大家玩出「知識之間的路線」
Shortest Path(最短路徑)
選兩個節點 → 右鍵 → Shortest Path(二者間最短關係鏈會自動畫出來)。
可以用來找:「兩個看似無關的主題,中間是透過哪些文件連起來?」
Graph Data Science Integration(進階)
可以從 Bloom scene 直接呼叫 Graph Data Science 演算法(例如 community detection、centrality),並用結果來上色 / 大小。
適合後期:根據使用者調整過的權重來算群聚與重要度。
八、權限與分工建議(讓技術+非技術和平共處)
角色分工建議:
Graph Admin(多半是技術)
設計 Neo4j schema(節點/關係類型、欄位)
管理 AuraDB / Desktop instance
建立、管理 Bloom Perspectives
設定 Legend、rule-based styling
撰寫必要的 Cypher / 自動匯入腳本
Domain Experts / 非技術使用者
使用 Bloom 搜尋與探索
手動新增 / 調整關係
調整 weight(代表自己的認知)
回饋「哪種視圖、顏色、分群」最符合他們的思考方式
Knowledge Owner / KM 管理者
定期 review 使用者編輯過的關係
決定哪些變更要變成「官方 baseWeight」
管理 perspectives(例如某些敏感資料不在一般視角顯示)
Bloom 本身就是設計給「非技術人可視化探索並互動」的工具,官方也強調「無需寫程式、可直接編輯圖」。
九、導入你組織的實際 roadmap(簡版)
你如果真的想在組織裡推這組技術,可以照這個節奏:
PoC(1–2 週)
用 Neo4j Desktop + Bloom
匯入 100–300 筆文件+10–20 個主題當試驗
跟 3–5 位同事玩「關係調整」練習
設計正式 schema + 欄位
決定節點類型與關係類型
設計 baseWeight + userWeight 的欄位架構
搬到 AuraDB(或正式 Neo4j 伺服器)
開雲端 instance
匯入較完整的組織資料
在 Bloom 建立 2–3 個 Perspectives
一個給技術
一個給一般同事
一個給主管(簡化版)
教育訓練:教大家怎麼「看圖」+「調關係」
只要讓他們會:搜尋、拖節點、改 weight 就夠強大了