以下是2個最近爆火的人工智能工具,
DeepSeek:DeepSeek
Kimi: Kimi - 會推理解析,能深度思考的AI助手
1、提示詞:
你能幫我生成一個知識圖譜嗎,等一下我會給你一篇文章,幫我從內容中提取關鍵要素,然后以Neo4j的語法的形式構建知識圖譜
2、待處理文字:
喂給它的文字是從 https://www.zhihu.com/question/361137050/answer/3186161914?復制的一段,(此段文字可以是任意的,不需要理解,復制即可)。
3、DeepSeek生成的Cypher代碼:
4、把DeepSeek生成的Cypher?代碼插入到Neo4j中
先刪除所有節點: ?match?(n)?detach?delete?n;
把DeepSeek生成的Cypher 代碼插入到Neo4j中。
節點分散,如下圖:
5、Kimi生成的Cypher代碼:
// 創建實體節點 CREATE (ng:NebulaGraph {name: "NebulaGraph", description: "開源圖數據庫"}) CREATE (gd:GraphDatabase {name: "圖數據庫", description: "存儲圖形網絡的數據庫"}) CREATE (cpp:ProgrammingLanguage {name: "C++", description: "編程語言"}) CREATE (java:ProgrammingLanguage {name: "Java", description: "編程語言"}) CREATE (python:ProgrammingLanguage {name: "Python", description: "編程語言"}) CREATE (go:ProgrammingLanguage {name: "Go", description: "編程語言"}) CREATE (apache:License {name: "Apache 2.0", description: "開源許可協議"}) CREATE (github:Platform {name: "GitHub", description: "代碼托管平臺"}) CREATE (ldap:Protocol {name: "LDAP", description: "輕量級目錄訪問協議"}) CREATE (studio:Tool {name: "NebulaGraph Studio", description: "原生工具"}) CREATE (console:Tool {name: "NebulaGraph Console", description: "原生工具"}) CREATE (exchange:Tool {name: "NebulaGraph Exchange", description: "原生工具"}) CREATE (spark:Product {name: "Spark", description: "大數據處理框架"}) CREATE (flink:Product {name: "Flink", description: "流處理框架"}) CREATE (hbase:Product {name: "HBase", description: "分布式存儲系統"}) CREATE (tencent:Company {name: "騰訊", description: "科技公司"}) CREATE (meituan:Company {name: "美團", description: "科技公司"}) CREATE (jd:Company {name: "京東", description: "科技公司"}) CREATE (kuaishou:Company {name: "快手", description: "科技公司"}) CREATE (qihoo:Company {name: "360", description: "科技公司"}) CREATE (fraud:Application {name: "欺詐檢測", description: "應用場景"}) CREATE (recommendation:Application {name: "實時推薦", description: "應用場景"}) CREATE (kg:Application {name: "知識圖譜", description: "應用場景"}) CREATE (social:Application {name: "社交網絡", description: "應用場景"}) CREATE (ng)-[:IS_A]->(gd) CREATE (ng)-[:WRITTEN_IN]->(cpp) CREATE (ng)-[:SUPPORTS]->(java) CREATE (ng)-[:SUPPORTS]->(python) CREATE (ng)-[:SUPPORTS]->(go) CREATE (ng)-[:FOLLOWS]->(apache) CREATE (ng)-[:HOSTED_ON]->(github) CREATE (ng)-[:SUPPORTS]->(ldap) CREATE (ng)-[:INCLUDES]->(studio) CREATE (ng)-[:INCLUDES]->(console) CREATE (ng)-[:INCLUDES]->(exchange) CREATE (ng)-[:INTEGRATES_WITH]->(spark) CREATE (ng)-[:INTEGRATES_WITH]->(flink) CREATE (ng)-[:INTEGRATES_WITH]->(hbase) CREATE (tencent)-[:USES]->(ng) CREATE (meituan)-[:USES]->(ng) CREATE (jd)-[:USES]->(ng) CREATE (kuaishou)-[:USES]->(ng) CREATE (qihoo)-[:USES]->(ng) CREATE (ng)-[:APPLICABLE_FOR]->(fraud) CREATE (ng)-[:APPLICABLE_FOR]->(recommendation) |
6、把Kimi生成的Cypher代碼插入到Neo4j中
先刪除所有節點: ?match?(n)?detach?delete?n;
把Kimi生成的Cypher代碼插入到Neo4j中,節點分散,如下圖:
7、兩幅圖不同的原因
在使用Cypher語言生成圖數據時,即使使用相同的文字數據,最終生成的圖可能會有巨大的不同,這主要是由于以下幾個原因:
-
布局算法:不同的布局算法會導致節點和邊的排列方式不同。Cypher本身不負責布局,布局通常由圖可視化工具(如Neo4j Browser、Gephi等)完成。不同的工具或同一工具中的不同布局算法可能會導致圖的視覺表現差異很大。
-
節點和邊的屬性:如果節點和邊的屬性不同(例如,權重、標簽、顏色等),即使使用相同的數據,布局算法可能會根據這些屬性來調整節點的位置和邊的顯示方式。
-
數據模型:數據模型的設計(例如,節點之間的關系類型、節點的屬性等)也會影響圖的生成。不同的數據模型可能會導致不同的圖結構。
-
圖的復雜性:如果圖非常復雜(例如,包含大量的節點和邊),布局算法可能會采用不同的策略來避免節點重疊或邊交叉,從而導致不同的視覺效果。
-
參數設置:布局算法通常有一些參數可以調整,例如節點之間的距離、邊的彎曲程度等。不同的參數設置會導致不同的布局結果。
-
隨機性:某些布局算法可能包含隨機性,這意味著每次運行時生成的圖可能會有所不同。
注:隨著時間的變化,在之后再次向大語言模型詢問相同問題時,給出的代碼表現效果相比實驗記錄時優化了很多,相關模型都在飛速提升。