main
黄海 5 months ago
parent c2e351396b
commit 7dc4c02572

@ -3,9 +3,10 @@ from pathlib import Path
# 固定配置项
# 阿里云中用来调用deepseek r1的密钥
MODEL_API_KEY = "sk-01d13a39e09844038322108ecdbd1bbc"
MODEL_NAME = "deepseek-r1"
#MODEL_NAME='qwen-plus'
MODEL_API_URL= 'https://dashscope.aliyuncs.com/compatible-mode/v1'
MODEL_NAME = "deepseek-v3"
#MODEL_NAME='qwen-plus'
# 华为云
HW_API_KEY='2R7vrjfIZO1chcfk4V3zDscx2Ms4I4kdoY7XSFnxa8Z2RNfAztg8qrXXKkwJGZWvMtS4qnN782WmaY4xZfMhyg'

@ -20,8 +20,9 @@ class KnowledgeGraph:
def _generate_stream(self) -> Iterator[ChatCompletionChunk]:
"""流式生成内容优化约束和MERGE"""
system_prompt = f'''请按以下要求生成Neo4j 5.26+的Cypher语句
system_prompt = f'''
总结本题有哪些知识点和能力点
将总结出的知识点能力点等信息按以下要求生成Neo4j 5.26+的Cypher语句
1. 必须包含约束创建
CREATE CONSTRAINT IF NOT EXISTS FOR (kp:KnowledgePoint) REQUIRE kp.id IS UNIQUE;
CREATE CONSTRAINT IF NOT EXISTS FOR (ab:AbilityPoint) REQUIRE ab.id IS UNIQUE;
@ -118,10 +119,6 @@ SET r.weight = 0.8'''
print(f"\n\n❌ 生成失败:{str(e)}")
return False, str(e), ""
# 最终保底返回
finally:
return False, "未知错误", "" # 这行应该被移除,保留仅用于演示
if __name__ == '__main__':
shiti_content = '''

@ -1,39 +1,11 @@
// 约束
CREATE CONSTRAINT IF NOT EXISTS FOR (kp:KnowledgePoint) REQUIRE kp.id IS UNIQUE;
CREATE CONSTRAINT IF NOT EXISTS FOR (ab:AbilityPoint) REQUIRE ab.id IS UNIQUE;
// 索引 (修正版)
CREATE FULLTEXT INDEX questionContent IF NOT EXISTS
FOR (q:Question)
ON EACH [q.content];
// 节点 (替换参数)
MERGE (q:Question {id: "a1b2c3d4"})
SET q.content = "巧求周长7个相同小长方形拼成大长方形小长方形长10厘米求大长方形周长",
q.difficulty = 3;
MERGE (kp:KnowledgePoint {id: "KP_101"})
SET kp.name = "长方形周长计算",
kp.level = "小学";
MERGE (ab:AbilityPoint {id: "AB_025"})
SET ab.name = "图形拼接分析",
ab.category = "几何推理";
// 关系 (使用具体ID)
MATCH (q:Question {id: "a1b2c3d4"}), (kp:KnowledgePoint {id: "KP_101"})
kp.level = "小学"
MERGE (q:Question {id: "66c060a1"})
SET q.content = "巧求周长7个相同小长方形拼图求周长",
q.difficulty = 3
MATCH (q:Question {id: "66c060a1"}), (kp:KnowledgePoint {id: "KP_101"})
MERGE (q)-[r:TESTS_KNOWLEDGE]->(kp)
SET r.weight = 0.8,
r.created_at = timestamp();
MATCH (q:Question {id: "a1b2c3d4"}), (ab:AbilityPoint {id: "AB_025"})
MERGE (q)-[r:REQUIRES_ABILITY]->(ab)
SET r.weight = 0.7,
r.created_at = timestamp();
MERGE (s:Shape {id: "FIG_007"})
SET s.type = "复合长方形结构";
MATCH (q:Question {id: "a1b2c3d4"}), (s:Shape {id: "FIG_007"})
MERGE (q)-[c:CONSISTS_OF]->(s)
SET c.weight = 1.0;
SET r.weight = 0.8
Loading…
Cancel
Save