1616
1717import neo4j
1818import pytest
19+ from neo4j_graphrag .embeddings import Embedder
1920from neo4j_graphrag .experimental .components .entity_relation_extractor import OnError
2021from neo4j_graphrag .experimental .components .schema import SchemaEntity , SchemaRelation
2122from neo4j_graphrag .experimental .pipeline .exceptions import PipelineDefinitionError
2829async def test_knowledge_graph_builder_init_with_text () -> None :
2930 llm = MagicMock (spec = LLMInterface )
3031 driver = MagicMock (spec = neo4j .Driver )
32+ embedder = MagicMock (spec = Embedder )
3133
3234 kg_builder = SimpleKGPipeline (
3335 llm = llm ,
3436 driver = driver ,
37+ embedder = embedder ,
3538 from_pdf = False ,
3639 )
3740
3841 assert kg_builder .llm == llm
3942 assert kg_builder .driver == driver
43+ assert kg_builder .embedder == embedder
4044 assert kg_builder .from_pdf is False
4145 assert kg_builder .entities == []
4246 assert kg_builder .relations == []
@@ -60,10 +64,12 @@ async def test_knowledge_graph_builder_init_with_text() -> None:
6064async def test_knowledge_graph_builder_init_with_file_path () -> None :
6165 llm = MagicMock (spec = LLMInterface )
6266 driver = MagicMock (spec = neo4j .Driver )
67+ embedder = MagicMock (spec = Embedder )
6368
6469 kg_builder = SimpleKGPipeline (
6570 llm = llm ,
6671 driver = driver ,
72+ embedder = embedder ,
6773 from_pdf = True ,
6874 )
6975
@@ -92,10 +98,12 @@ async def test_knowledge_graph_builder_init_with_file_path() -> None:
9298async def test_knowledge_graph_builder_run_with_both_inputs () -> None :
9399 llm = MagicMock (spec = LLMInterface )
94100 driver = MagicMock (spec = neo4j .Driver )
101+ embedder = MagicMock (spec = Embedder )
95102
96103 kg_builder = SimpleKGPipeline (
97104 llm = llm ,
98105 driver = driver ,
106+ embedder = embedder ,
99107 from_pdf = True ,
100108 )
101109
@@ -114,11 +122,13 @@ async def test_knowledge_graph_builder_run_with_both_inputs() -> None:
114122async def test_knowledge_graph_builder_run_with_no_inputs () -> None :
115123 llm = MagicMock (spec = LLMInterface )
116124 driver = MagicMock (spec = neo4j .Driver )
125+ embedder = MagicMock (spec = Embedder )
117126
118127 kg_builder = SimpleKGPipeline (
119128 llm = llm ,
120129 driver = driver ,
121- from_pdf = True , # or False
130+ embedder = embedder ,
131+ from_pdf = True ,
122132 )
123133
124134 with pytest .raises (PipelineDefinitionError ) as exc_info :
@@ -133,10 +143,12 @@ async def test_knowledge_graph_builder_run_with_no_inputs() -> None:
133143async def test_knowledge_graph_builder_document_info_with_file () -> None :
134144 llm = MagicMock (spec = LLMInterface )
135145 driver = MagicMock (spec = neo4j .Driver )
146+ embedder = MagicMock (spec = Embedder )
136147
137148 kg_builder = SimpleKGPipeline (
138149 llm = llm ,
139150 driver = driver ,
151+ embedder = embedder ,
140152 from_pdf = True ,
141153 )
142154
@@ -159,10 +171,12 @@ async def test_knowledge_graph_builder_document_info_with_file() -> None:
159171async def test_knowledge_graph_builder_document_info_with_text () -> None :
160172 llm = MagicMock (spec = LLMInterface )
161173 driver = MagicMock (spec = neo4j .Driver )
174+ embedder = MagicMock (spec = Embedder )
162175
163176 kg_builder = SimpleKGPipeline (
164177 llm = llm ,
165178 driver = driver ,
179+ embedder = embedder ,
166180 from_pdf = False ,
167181 )
168182
@@ -184,6 +198,7 @@ async def test_knowledge_graph_builder_document_info_with_text() -> None:
184198async def test_knowledge_graph_builder_with_entities_and_file () -> None :
185199 llm = MagicMock (spec = LLMInterface )
186200 driver = MagicMock (spec = neo4j .Driver )
201+ embedder = MagicMock (spec = Embedder )
187202
188203 entities = ["Document" , "Section" ]
189204 relations = ["CONTAINS" ]
@@ -192,6 +207,7 @@ async def test_knowledge_graph_builder_with_entities_and_file() -> None:
192207 kg_builder = SimpleKGPipeline (
193208 llm = llm ,
194209 driver = driver ,
210+ embedder = embedder ,
195211 entities = entities ,
196212 relations = relations ,
197213 potential_schema = potential_schema ,
@@ -221,10 +237,12 @@ async def test_knowledge_graph_builder_with_entities_and_file() -> None:
221237def test_simple_kg_pipeline_on_error_conversion () -> None :
222238 llm = MagicMock (spec = LLMInterface )
223239 driver = MagicMock (spec = neo4j .Driver )
240+ embedder = MagicMock (spec = Embedder )
224241
225242 kg_builder = SimpleKGPipeline (
226243 llm = llm ,
227244 driver = driver ,
245+ embedder = embedder ,
228246 on_error = "RAISE" ,
229247 )
230248
@@ -234,11 +252,13 @@ def test_simple_kg_pipeline_on_error_conversion() -> None:
234252def test_simple_kg_pipeline_on_error_invalid_value () -> None :
235253 llm = MagicMock (spec = LLMInterface )
236254 driver = MagicMock (spec = neo4j .Driver )
255+ embedder = MagicMock (spec = Embedder )
237256
238257 with pytest .raises (PipelineDefinitionError ) as exc_info :
239258 SimpleKGPipeline (
240259 llm = llm ,
241260 driver = driver ,
261+ embedder = embedder ,
242262 on_error = "IGNORE" ,
243263 )
244264
@@ -248,9 +268,14 @@ def test_simple_kg_pipeline_on_error_invalid_value() -> None:
248268def test_simple_kg_pipeline_no_entity_resolution () -> None :
249269 llm = MagicMock (spec = LLMInterface )
250270 driver = MagicMock (spec = neo4j .Driver )
271+ embedder = MagicMock (spec = Embedder )
251272
252273 kg_builder = SimpleKGPipeline (
253- llm = llm , driver = driver , on_error = "CONTINUE" , perform_entity_resolution = False
274+ llm = llm ,
275+ driver = driver ,
276+ embedder = embedder ,
277+ on_error = "CONTINUE" ,
278+ perform_entity_resolution = False ,
254279 )
255280
256281 assert "resolver" not in kg_builder .pipeline
0 commit comments