neo4j圖數據庫基本概念和向量使用

一.節點

1.新建節點

create (n:GroupProduct {name:'都邦高保額團意險',description: "保險產品名稱"} ) return n

CREATE:Neo4j 的關鍵字,用于創建新節點或關系。


(n:GroupProduct):
n 是節點的臨時別名(變量名),方便在return中引用,創建完成之后就沒用了。


GroupProduct 是節點的標簽(Label),用于分類節點(如 Person, Product 等)。


{name:'都邦高保額團意險',description: "保險產品名稱"}
節點的屬性(Properties),鍵值對形式:


RETURN n:
返回新創建的節點 n,用于驗證操作是否成功。

2.已有節點創建關系

MATCH (a:GroupProductA {name:'保高空'}), (b:GroupProduct {name:'都邦高保額團意險'})
CREATE (a)-[:INCLUDE {restrict: "涉電及高空作業按6類可承保"}]->(b)

變量名可以隨意定義,只要能區分出來兩個節點的區別,簡短有意義

關系名稱INCLUDE: 也可以隨意定義,最好是能夠見名知意,最好定義統一的團隊規范

關系也可以添加屬性: 比如表明這個關系有什么限制條件

使用箭頭 -> 表示從左到右的關系方向

3.刪除節點

MATCH (n:GroupProductA {name:'保高空' })
DETACH DELETE n

4.查詢節點之間的相鄰節點

MATCH (startNode {屬性名: 值})-[:關系類型*..N]-(relatedNode)
RETURN startNode, relatedNode

例如:

MATCH (a {name: "保高空"})-[*..1]-(b)
RETURN a,b

關鍵參數說明
參數說明示例
*表示遍歷任意深度的關系(包括直接關聯和間接關聯)。-[*] 表示所有層級關聯。
*..N最大遍歷深度。例如 *..2 表示遍歷 1 層或 2 層關聯。-[:EXCLUDES*..2] 最多找兩跳關聯。
-[]->單向遍歷(從左到右)。(a)-[:PARENT_OF]->(b) 只找 a 的子節點。
<-[]-反向遍歷(從右到左)。(a)<-[:CHILD_OF]-(b) 找到 b 的父節點。

?注意事項

性能問題:遍歷深度(如 *..N)越大,查詢耗時越長,建議根據需求限制深度。
方向性:若關系是單向的(如 EXCLUDES),需注意方向(如 ()-[:EXCLUDES]->())。

屬性唯一性:確保查詢的屬性(如 product_id)是唯一標識符,否則可能返回多個節點。


5.對已創建好的節點添加屬性

MATCH (a:GroupProductA {name:'保高空' })
SET a+= { embedding: [] }
RETURN b;

二.節點向量存儲和檢索

1.節點需要添加向量數組

可以選擇一開添加節點的時候加一個向量屬性

create (n:GroupProductA {name:'保高空',description: "保險產品可以保高空作業",embedding: [向量的具體值]}) return n

或者后續添加

MATCH (a:GroupProductA {name:'保高空' })
SET a+= { embedding: [向量具體數值] }
RETURN b;

2.給節點增加向量索引

CREATE VECTOR INDEX 索引名稱 IF NOT EXISTS
FOR (具體的節點標簽)
ON n.embedding
OPTIONS { indexConfig: {
?`vector.dimensions`: 向量維度數值,
?`vector.similarity_function`: 向量計算方法
}}

例如:

CREATE VECTOR INDEX HighDutyIdx IF NOT EXISTS
FOR (n:HighDuty)
ON n.embedding
OPTIONS { indexConfig: {
?`vector.dimensions`: 1536,
?`vector.similarity_function`: 'cosine'
}}

3.計算向量余弦相似度

MATCH (a:GroupProductA)
WHERE a.embedding IS NOT NULL
WITH n,
???? // 計算向量余弦相似度或歐氏距離
???? vector.similarity.cosine(n.embedding, [0.1, 0.2, ...]) AS similarity
RETURN n.name, similarity
ORDER BY similarity DESC
LIMIT 10;

4.查詢兩個節點的向量相似度


MATCH (a:GroupProductA {name: '保高空'})
MATCH (b:GroupProductA {name:'團意'})
RETURN vector.similarity.cosine(a.embedding, b.embedding)

5.查詢所有向量索引


SHOW VECTOR INDEXES

6.刪除指定向量索引


DROP INDEX moviePlots

三.RAG向量檢索最佳實踐

1.先查詢出所有符合的向量節點,有個閾值,比如大于0.8的查詢出所有符合的節點

2.然后再通過這些符合的節點,根據節點之間的關系,找到想要查詢出來的節點屬性

3.根據查詢出來的節點屬性和用戶問題,給大模型總結

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/80786.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/80786.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/80786.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2025年滲透測試面試題總結-滲透測試紅隊面試八(題目+回答)

網絡安全領域各種資源&#xff0c;學習文檔&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各種好玩的項目及好用的工具&#xff0c;歡迎關注。 目錄 滲透測試紅隊面試八 二百一十一、常見中間件解析漏洞利用方式 二百一十二、MySQL用戶密碼存儲與加密 …

大語言模型主流架構解析:從 Transformer 到 GPT、BERT

&#x1f4cc; 友情提示&#xff1a; 本文內容由銀河易創AI&#xff08;https://ai.eaigx.com&#xff09;創作平臺的gpt-4-turbo模型生成&#xff0c;旨在提供技術參考與靈感啟發。文中觀點或代碼示例需結合實際情況驗證&#xff0c;建議讀者通過官方文檔或實踐進一步確認其準…

Java設計模式之裝飾器模式:從基礎到高級的全面解析(萬字解析)

裝飾器模式(Decorator Pattern)是一種結構型設計模式,它允許向一個現有的對象添加新的功能,同時又不改變其結構。這種模式創建了一個裝飾類,用來包裝原有的類,并在保持類方法簽名完整性的前提下,提供了額外的功能。 一、裝飾器模式基礎概念 1.1 什么是裝飾器模式 裝飾…

RN 鴻蒙混合開發實踐(踩坑)

#三方框架# #React Native # 1 。環境配置&#xff1b; 安裝 DevEco 開發工具&#xff1b; Node 版本16&#xff1b; hdc環境配置 hdc 是 OpenHarmony 為開發人員提供的用于調試的命令行工具&#xff0c;鴻蒙 React Native 工程使用 hdc 進行真機調試。hdc 工具通過 OpenHa…

動態網站 LNMP

一、名詞解釋&#xff1a; LNMP&#xff1a; L : 代表 Linux 操作系統&#xff0c;為網站提供了可靠的運行環境N : 代表 Nginx&#xff0c;它是一款輕量級的高性能 Web 服務器&#xff0c;能夠快速處理大量并 發連接&#xff0c;有效提升網站的訪問速度和性能 M : 代表…

DAY04:Vue.js 指令與事件處理深度解析之從基礎到實戰

1. 指令系統核心概念 1.1 插值表達式與基礎指令 Vue.js 的指令系統是其響應式編程模型的核心&#xff0c;我們首先從最基礎的插值表達式開始&#xff1a; <div id"app"><!-- 基礎文本插值 --><p>{{ message }}</p><!-- JavaScript 表達…

12配置Hadoop集群-集群配置

&#xff08;一&#xff09;Hadoop的組成 對普通用戶來說&#xff0c; Hadoop就是一個東西&#xff0c;一個整體&#xff0c;它能給我們提供無限的磁盤用來保存文件&#xff0c;可以使用提供強大的計算能力。 在Hadoop3.X中&#xff0c;hadoop一共有三個組成部…

Kubernetes生產實戰(四):kubelet日志快速定位指南

kubelet作為Kubernetes節點的核心管家&#xff0c;其日志是排查節點問題的金鑰匙。本文將分享生產環境中查看和分析kubelet日志的完整方案&#xff0c;助你快速定位節點級故障。 一、基礎操作&#xff1a;快速查看日志 1. systemd服務日志&#xff08;推薦首選&#xff09; …

麥科信獲評CIAS2025金翎獎【半導體制造與封測領域優質供應商】

在蘇州舉辦的2025CIAS動力能源與半導體創新發展大會上&#xff0c;深圳麥科信科技有限公司憑借在測試測量領域的技術積累&#xff0c;入選半導體制造與封測領域優質供應商榜單。本屆大會以"新能源芯時代"為主題&#xff0c;匯集了來自功率半導體、第三代材料應用等領…

Python實例題:pygame開發打飛機游戲

目錄 Python實例題 題目 pygame-aircraft-game使用 Pygame 開發的打飛機游戲腳本 代碼解釋 初始化部分&#xff1a; 游戲主循環&#xff1a; 退出部分&#xff1a; 運行思路 注意事項 Python實例題 題目 pygame開發打飛機游戲 pygame-aircraft-game使用 Pygame 開發…

Gin 框架入門

Gin 框架入門 一、響應數據 JSON 響應 在 Web 開發中&#xff0c;JSON 是一種常用的數據交換格式。Gin 提供了簡便的方法來響應 JSON 數據。 package mainimport ("github.com/gin-gonic/gin" )func main() {r : gin.Default()r.GET("/json", func(c *…

Flink實時數倉數據突變時,如何快速排查原因

在大數據時代,數據的價值已經被無數企業和組織深刻認識到,而實時數倉作為數據處理和分析的重要基礎設施,正在逐漸成為推動業務增長和決策優化的核心引擎。想象一下,電商平臺在雙十一大促期間需要實時監控訂單量、用戶行為,甚至庫存變化,以便及時調整營銷策略和物流調度;…

視頻人像摳圖技術選型--截止2025年4月

前言&#xff1a;我是一名算法工程師&#xff0c;經常需要對某個AI功能做技術調研和輸出技術選型報告&#xff0c;在過去多年的工作當中&#xff0c;積累了很多內容&#xff0c;我會陸陸續續將這些內容整理出來分享給大家&#xff0c;希望大家喜歡&#xff0c;感謝您的閱讀&…

docker compose ps 命令

docker compose ps 命令用于列出與 Docker Compose 項目相關的容器及其狀態。 docker compose ps 能顯示當前項目中所有服務容器的運行狀態、端口映射等信息。 語法 docker compose ps [OPTIONS] [SERVICE…] SERVICE&#xff08;可選&#xff09;&#xff1a;指定要查看狀態…

C語言 字符函數和字符串函數(1)

目錄 1.字符分類函數 2.字符轉換函數 3.strlen的使用和模擬實現 4.strcpy的使用和模擬實現 在編程的過程中&#xff0c;我們經常要處理字符和字符串&#xff0c;為了方便操作字符和字符串&#xff0c;C語言標準庫中提 供了一系列庫函數&#xff0c;接下來我們就學習一下這…

MySQL 中如何進行 SQL 調優?

在MySQL中進行SQL調優是一個系統性工程&#xff0c;需結合索引優化、查詢改寫、性能分析工具、數據庫設計及硬件配置等多方面策略。以下是具體優化方法及案例說明&#xff1a; 一、索引優化&#xff1a;精準提速的關鍵 索引類型選擇 普通索引&#xff1a;加速頻繁查詢的列&…

OpenCV圖像金字塔詳解:原理、實現與應用

一、什么是圖像金字塔&#xff1f; 圖像金字塔是圖像處理中一種重要的多尺度表示方法&#xff0c;它通過對圖像進行重復的平滑和降采樣&#xff08;或上采樣&#xff09;操作&#xff0c;生成一系列分辨率逐漸降低&#xff08;或升高&#xff09;的圖像集合。這種結構形似金字…

收集飛花令碎片——C語言分支與循環語句(上)

前言 Hello,各位碼友&#xff0c;本章將會給大家帶來C語言的分支與循環整章串講&#xff0c;這一張的內容分為基礎知識和程序練習兩個部分 希望通過這一章能夠帶大家更好地去掌握C語言的分支與循環語句 大家一起努力吧 C語言分支與循環語句&#xff08;基礎知識&#xff09; C…

嵌入式硬件篇---TOF|PID

文章目錄 前言1. 硬件準備主控芯片ToF模塊1.VL53L0X2.TFmini 執行機構&#xff1a;電機舵機其他 2. 硬件連接(1) VL53L0X&#xff08;IC接口&#xff09;(2) TFmini&#xff08;串口通信&#xff09; 3. ToF模塊初始化與數據讀取(1) VL53L0X&#xff08;基于HAL庫&#xff09;(…

PCB設計實踐(十二)PCB設計電容選型:功能、材質、規則

在PCB設計中&#xff0c;電容作為基礎元件承擔著濾波、儲能、去耦、耦合等核心功能。其分類與使用規則直接影響電路穩定性、抗干擾能力和信號完整性。本文從工程實踐角度系統梳理PCB設計中電容的五大分類、選型規范及布局布線規則&#xff0c;幫助設計者構建科學的電容應用體系…