neo4j-graphrag-python icon indicating copy to clipboard operation
neo4j-graphrag-python copied to clipboard

Type error during building the KG: creating a LOCAL_DATE which is not recognized

Open xpilasneo4j opened this issue 4 months ago • 0 comments

It seems it created a LOCAL_DATE and it isn't recognized. I reran it on the same document and it worked Not urgent but worth checking

 ----------- Start C:\Users\XavierPilas\Documents\GitHub\work-rag-graphrag\Small10k\extracted_content-2\page_0065.txt
Traceback (most recent call last):
  File "C:\Users\XavierPilas\Documents\GitHub\rag-graphrag\GenericGraphRag\loadDataFromContent.py", line 189, in <module>
    print(asyncio.run(run(d.page_content)))
          ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\.conda\envs\graphrag-neo4j\Lib\asyncio\runners.py", line 195, in run
    return runner.run(main)
           ~~~~~~~~~~^^^^^^
  File "C:\Users\XavierPilas\.conda\envs\graphrag-neo4j\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "C:\Users\XavierPilas\.conda\envs\graphrag-neo4j\Lib\asyncio\base_events.py", line 725, in run_until_complete
    return future.result()
           ~~~~~~~~~~~~~^^
  File "C:\Users\XavierPilas\Documents\GitHub\rag-graphrag\GenericGraphRag\loadDataFromContent.py", line 176, in run
    res_pipeline = await define_and_run_pipeline(llm, content)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\Documents\GitHub\rag-graphrag\GenericGraphRag\loadDataFromContent.py", line 142, in define_and_run_pipeline
    return await kg_builder.run_async(text=content)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\pipeline\kg_builder.py", line 160, in run_async
    return await self.runner.run({"file_path": file_path, "text": text})
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\pipeline\config\runner.py", line 135, in run
    result = await self.pipeline.run(data=run_param)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\pipeline\pipeline.py", line 572, in run
    await orchestrator.run(data)
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\pipeline\orchestrator.py", line 270, in run
    await asyncio.gather(*tasks)
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\pipeline\orchestrator.py", line 89, in run_task
    res = await task.run(context, inputs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\pipeline\pipeline.py", line 103, in run
    res = await self.execute(context, inputs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\pipeline\pipeline.py", line 89, in execute
    component_result = await self.component.run_with_context(
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        context_=context, **inputs
        ^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\pipeline\component.py", line 110, in run_with_context
    return await self.run(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\pydantic\_internal\_validate_call.py", line 34, in wrapper_function
    return await wrapper(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\neo4j_graphrag\experimental\components\schema.py", line 605, in run
    return GraphSchema.model_validate(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~^
        {
        ^
    ...<3 lines>...
        }
        ^
    )
    ^
  File "C:\Users\XavierPilas\AppData\Roaming\Python\Python313\site-packages\pydantic\main.py", line 705, in model_validate
    return cls.__pydantic_validator__.validate_python(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        obj, strict=strict, from_attributes=from_attributes, context=context, by_alias=by_alias, by_name=by_name
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
pydantic_core._pydantic_core.ValidationError: 1 validation error for GraphSchema
node_types.0.properties.1.type
  Input should be 'BOOLEAN', 'DATE', 'DURATION', 'FLOAT', 'INTEGER', 'LIST', 'LOCAL_DATETIME', 'LOCAL_TIME', 'POINT', 'STRING', 'ZONED_DATETIME' or 'ZONED_TIME' [type=literal_error, input_value='LOCAL_DATE', input_type=str]
    For further information visit https://errors.pydantic.dev/2.11/v/literal_error

xpilasneo4j avatar Aug 21 '25 08:08 xpilasneo4j