szcf-weiya / Su-Shi

基于林语堂《苏东坡传》的知识图谱
https://blog.hohoweiya.xyz/2023/05/31/su-shi/
0 stars 0 forks source link

extract relation via LLM? #2

Open szcf-weiya opened 1 month ago

szcf-weiya commented 1 month ago
>>> print(rag.query("请用一个三列的表格总结书中出现的所有人与苏轼之间的关系,第一列为姓名name,第二列为关系relation,第三列为职业career(可以为空)", param=QueryParam(mode="hybrid")))
INFO:lightrag:Creating a new event loop in a sub-thread.
INFO:httpx:HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
INFO:httpx:HTTP Request: POST https://api.openai.com/v1/embeddings "HTTP/1.1 200 OK"
INFO:lightrag:Local query uses 60 entites, 41 relations, 3 text units
INFO:httpx:HTTP Request: POST https://api.openai.com/v1/embeddings "HTTP/1.1 200 OK"
INFO:lightrag:Global query uses 48 entites, 60 relations, 3 text units
INFO:httpx:HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
以下是书中出现的与苏轼之间的关系的总结表格:

| 姓名         | 关系              | 职业         |
|--------------|------------------|--------------|
| 苏洵         | 父亲             | 学者         |
| 苏辙         | 兄弟             | 文人         |
| 苏过         | 儿子             | 诗人、画家    |
| 苏夫人       | 妻子             | -            |
| 李师师       | 友人             | 名妓         |
| 李尚         | 朋友             | -            |
| 范纯仁       | 朋友             | 官员         |
| 章停         | 朋友转敌         | 政客         |
| 吴复古       | 朋友             | 道士         |
| 秦观         | 朋友             | 诗人         |
| 黄实         | 亲戚             | -            |
| 章元弼       | 友人             | 学者         |
| 胜元发       | 朋友             | 官员         |
| 佛印         | 朋友             | 高僧         |
| 张全真       | 朋友             | 官员         |
| 陈季常       | 朋友             | 官员         |
| 柳仲远       | 亲戚             | 文人         |
| 杨畏         | 对手             | 政客         |
| 嘉佑         | 皇帝             | -            |
| 子由         | 兄弟             | 门下侍郎     | 

该表根据文本中提供的信息整理了苏轼的亲属和友人关系,展示了其在文学、政治及个人生活中的重要联系。
szcf-weiya commented 1 month ago
>>> print(rag.query("请用一个三列的表格总结书中出现的所有人(请不要限制人数,有多少返回多少)与苏轼之间的关系,第一列为姓名name,第二列为关系relation,第三列为职业career(可以为空)", param=QueryParam(mode="hybrid")))
INFO:lightrag:Creating a new event loop in a sub-thread.
INFO:openai._base_client:Retrying request to /chat/completions in 0.389339 seconds
INFO:httpx:HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
INFO:httpx:HTTP Request: POST https://api.openai.com/v1/embeddings "HTTP/1.1 200 OK"
INFO:lightrag:Local query uses 60 entites, 41 relations, 3 text units
INFO:httpx:HTTP Request: POST https://api.openai.com/v1/embeddings "HTTP/1.1 200 OK"
INFO:lightrag:Global query uses 36 entites, 60 relations, 3 text units
INFO:httpx:HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
以下是关于书中出现的与苏轼(苏东坡)之间关系的总结,包含姓名、关系及其职业(如有):

| 姓名       | 关系                     | 职业                  |
|------------|-------------------------|-----------------------|
| 苏辙      | 兄弟                   | 文学家                |
| 李白      | 文学遗产                 | 诗人                  |
| 六一翁    | 文学关系                 | 未知                  |
| 书生      | 知识关注,情感支持         | 学生                  |
| 陈太守    | 相互尊重                 | 官员                  |
| 舒禀      | 政治对立,文人对立         | 官员                  |
| 李琪      | 文化交流                 | 未知                  |
| 范镇      | 朋友,政治环境            | 官员                  |
| 刁景纯    | 个人联系                  | 未知                  |
| 二十七娘  | 情感深厚,支持            | 未知                  |
| 章停      | 友谊转为政治敌对          | 政客                  |
| 吴复古    | 朋友,文化影响            | 未知                  |
| 孙觉      | 朋友,政治影响            | 未知                  |
| 秦观      | 朋友,文学连接            | 诗人                  |
| 张方平    | 朋友,导师               | 官员                  |
| 程之才    | 家族关系                 | 未知                  |
| 李常      | 朋友,文学交往            | 未知                  |
| 杨桂      | 朋友                     | 未知                  |
| 章援      | 学生,关心               | 未知                  |
| 刘安世    | 政治对立                 | 官员                  |
| 参寥      | 朋友,山水诗人         | 僧人                  |
| 龙在九泉  | 作品内容联系             | 未知                  |
| 蒲宗孟    | 朋友                     | 未知                  |
| 阿信      | 朋友                     | 未知                  |

以上是与苏东坡相关的主要人物及其关系的汇总。职务信息部分根据提供的内容适时为空。请注意,某些角色的确切职业未在现有数据中详细说明,因此这些部分留空。
szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

zoom in & set color image

szcf-weiya commented 1 month ago

focus on person

image

szcf-weiya commented 1 month ago

standalone

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago
MATCH (n1 {id: '东坡'}), (n2 {id: '苏东坡'})
CALL apoc.refactor.mergeNodes([n1, n2]) YIELD node
RETURN node
MATCH (n1 {id: 'SU DONGPO'}), (n2 {id: '苏东坡'})
CALL apoc.refactor.mergeNodes([n1, n2]) YIELD node
RETURN node
szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

but

$ grep -n "丸" 林语堂:苏东坡传_UTF8.txt
755:  西南火星如弹丸,角尾奕奕苍龙幡。
950:  关于炼制外丹,苏东坡写了两篇札记,一篇叫“阳丹”,一篇叫“阴丹”。阴丹是从生第一胎男婴的母乳中提炼出来的。把乳在文火上加热,用的锅是银汞合金制成的,一边加热,一边用同一金属制的调羹缓缓扰动,直到奶凝结,最后制成药丸状。阳丹是用尿蛋白中的尿素制成。此一蛋白沉淀物经过多次净化,最后变成白色无味的粉状物,再加枣泥做成药丸,空腹用酒送服。
szcf-weiya commented 1 month ago
MATCH (n)-[r]-(m) WHERE n.description CONTAINS '酒' OR n.description CONTAINS '肉' RETURN n,r,m LIMIT 300

image

szcf-weiya commented 1 month ago

save and reload

just give the workdir

In [2]: WORKING_DIR = "./sushi2"
   ...: 

In [3]: rag = LightRAG(
   ...:     working_dir=WORKING_DIR,
   ...:     llm_model_func=gpt_4o_mini_complete  # Use gpt_4o_mini_complete LLM model
   ...:     # llm_model_func=gpt_4o_complete  # Optionally, use a stronger model
   ...: )
INFO:lightrag:Logger initialized for working directory: ./sushi2
DEBUG:lightrag:LightRAG init with param:
  working_dir = ./sushi2,
  chunk_token_size = 1200,
  chunk_overlap_token_size = 100,
  tiktoken_model_name = gpt-4o-mini,
  entity_extract_max_gleaning = 1,
  entity_summary_to_max_tokens = 500,
  node_embedding_algorithm = node2vec,
  node2vec_params = {'dimensions': 1536, 'num_walks': 10, 'walk_length': 40, 'window_size': 2, 'iterations': 3, 'random_seed': 3},
  embedding_func = {'embedding_dim': 1536, 'max_token_size': 8192, 'func': <function openai_embedding at 0x7a8ec476c550>},
  embedding_batch_num = 32,
  embedding_func_max_async = 16,
  llm_model_func = <function gpt_4o_mini_complete at 0x7a8ec475bf40>,
  llm_model_name = meta-llama/Llama-3.2-1B-Instruct,
  llm_model_max_token_size = 32768,
  llm_model_max_async = 16,
  key_string_value_json_storage_cls = <class 'lightrag.storage.JsonKVStorage'>,
  vector_db_storage_cls = <class 'lightrag.storage.NanoVectorDBStorage'>,
  vector_db_storage_cls_kwargs = {},
  graph_storage_cls = <class 'lightrag.storage.NetworkXStorage'>,
  enable_llm_cache = True,
  addon_params = {},
  convert_response_to_json_func = <function convert_response_to_json at 0x7a8ec4759990>

INFO:lightrag:Load KV full_docs with 5 data
INFO:lightrag:Load KV text_chunks with 182 data
INFO:lightrag:Load KV llm_response_cache with 379 data
INFO:lightrag:Loaded graph from ./sushi2/graph_chunk_entity_relation.graphml with 2158 nodes, 1124 edges
INFO:nano-vectordb:Load (2150, 1536) data
INFO:nano-vectordb:Init {'embedding_dim': 1536, 'metric': 'cosine', 'storage_file': './sushi2/vdb_entities.json'} 2150 data
INFO:nano-vectordb:Load (1124, 1536) data
INFO:nano-vectordb:Init {'embedding_dim': 1536, 'metric': 'cosine', 'storage_file': './sushi2/vdb_relationships.json'} 1124 data
INFO:nano-vectordb:Load (182, 1536) data
INFO:nano-vectordb:Init {'embedding_dim': 1536, 'metric': 'cosine', 'storage_file': './sushi2/vdb_chunks.json'} 182 data
szcf-weiya commented 1 month ago
苏东坡,作为中国文学史上杰出的诗人和政治家,他的饮食趣味也反映了他对生活的热爱和对地方文化的尊重。从资料中,我们可以总结出苏东坡所喜欢的几种食物及其出处或理由:

### 1. 南方的美食
苏东坡对南方美食的喜爱明显体现在他对江南饮食文化的适应和欣赏之中。根据数据,他在江南期间品尝到的各种美食反映了他对当地文化的深刻体验和热爱。他的饮食不仅是身体的满足,更是与地方文化的密切关系。[来源于“南方的美食”概念]

### 2. 鱼
在苏东坡与朋友们的聚会中,朋友捕获的鱼象征着生活的简单乐趣和喜悦,这让他们的聚会增添了欢庆的气氛。这种与朋友分享简单美食的行为,体现了苏东坡对友情和生活乐趣的重视。[来源于“鱼”事件]

### 3. 猪肉和牛肉
苏东坡的饮食中也包括猪肉和牛肉。这些食物在当时的社会中普遍受到欢迎,反映了他的饮食习惯和对常见食材的低调偏爱。猪肉和牛肉作为传统的中国饮食文化重要组成部分,是他日常生活中不可或缺的内容。[来源于“猪肉”和“牛肉”事件]

### 4. 月饼
在中秋节的聚会中,月饼作为团圆和亲情的象征,被苏东坡和其家人享用。月饼不仅代表了节日的庆祝,更是家庭团聚的重要食物,反映了苏东坡对家庭和节日文化的重视。[来源于“月饼”事件]

### 5. 酒
苏东坡不仅热爱饮食,酒也是他生活中不可或缺的一部分。他的《酒颂》充分表达了他对饮酒乐趣的雅致享受,体现了酒在他生活中的文化和社交功能。饮酒不仅是为了消遣,更是一种深刻的文化体验。[来源于“酒颂”事件]

### 6. 酥花
酥花作为精致的传统小吃,也常常出现在苏东坡的社交饮食中,显示了他对细腻美食的欣赏。[来源于“酥花”事件]

通过以上几种食物,我们可以看到苏东坡在饮食上的多样性和对富有文化内涵的食品的喜爱。这些食物不仅仅是他的味觉享受,它们与他的人生经历、文化背景及文学创作交织在一起,反映了他对生活的深刻理解和热情。
szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

image

image

szcf-weiya commented 1 month ago

一本正经地胡说八道 image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image image

szcf-weiya commented 1 month ago

image

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image

szcf-weiya commented 1 month ago

image image

szcf-weiya commented 4 weeks ago

image