Networkx bug for crew import

We are currently facing the following error.
2025-09-09 07:47:52,458 INFO Included extra file "/etc/supervisor/conf.d/supervisord.conf" during parsing

2025-09-09 07:47:52,462 INFO Creating socket tcp://localhost:9000

2025-09-09 07:47:52,466 INFO Closing socket tcp://localhost:9000

2025-09-09 07:47:52,467 INFO supervisord started with pid 8

2025-09-09 07:47:53,468 INFO Creating socket tcp://localhost:9000

2025-09-09 07:47:53,471 INFO spawned: 'uvicorn00' with pid 9

INFO: Will watch for changes in these directories: ['/home/agenticragservice']

INFO: Uvicorn running on http://0.0.0.0:9001 (Press CTRL+C to quit)

INFO: Started reloader process [10] using WatchFiles

2025-09-09 07:47:55,068 INFO success: uvicorn00 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)

Process SpawnProcess-1:

Traceback (most recent call last):

File "/usr/lib64/python3.12/multiprocessing/process.py", line 314, in _bootstrap

self.run()

File "/usr/lib64/python3.12/multiprocessing/process.py", line 108, in run

self._target(*self._args, **self._kwargs)

File "/opt/venv/lib64/python3.12/site-packages/uvicorn/_subprocess.py", line 80, in subprocess_started

target(sockets=sockets)

File "/opt/venv/lib64/python3.12/site-packages/uvicorn/server.py", line 65, in run

return asyncio.run(self.serve(sockets=sockets))

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/lib64/python3.12/asyncio/runners.py", line 195, in run

return runner.run(main)

^^^^^^^^^^^^^^^^

File "/usr/lib64/python3.12/asyncio/runners.py", line 118, in run

return self._loop.run_until_complete(task)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "uvloop/loop.pyx", line 1518, in uvloop.loop.Loop.run_until_complete

File "/opt/venv/lib64/python3.12/site-packages/uvicorn/server.py", line 69, in serve

await self._serve(sockets)

File "/opt/venv/lib64/python3.12/site-packages/uvicorn/server.py", line 76, in _serve

config.load()

File "/opt/venv/lib64/python3.12/site-packages/uvicorn/config.py", line 434, in load

self.loaded_app = import_from_string(self.app)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/opt/venv/lib64/python3.12/site-packages/uvicorn/importer.py", line 19, in import_from_string

module = importlib.import_module(module_str)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/lib64/python3.12/importlib/__init__.py", line 90, in import_module

return _bootstrap._gcd_import(name[level:], package, level)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "<frozen importlib._bootstrap>", line 1387, in _gcd_import

File "<frozen importlib._bootstrap>", line 1360, in _find_and_load

File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked

File "<frozen importlib._bootstrap>", line 935, in _load_unlocked

File "<frozen importlib._bootstrap_external>", line 999, in exec_module

File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed

File "/home/agenticragservice/agenticrag_service/app.py", line 2, in <module>

from agenticrag_service.routes import setup_routes

File "/home/agenticragservice/agenticrag_service/routes.py", line 3, in <module>

from agenticrag_service.patches import networkx_patch

File "/home/agenticragservice/agenticrag_service/patches/networkx_patch.py", line 40, in <module>

patch_networkx_backends()

File "/home/agenticragservice/agenticrag_service/patches/networkx_patch.py", line 15, in patch_networkx_backends

from networkx.utils import backends

File "/opt/venv/lib64/python3.12/site-packages/networkx/__init__.py", line 23, in <module>

config = utils.backends._set_configs_from_environment()

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/opt/venv/lib64/python3.12/site-packages/networkx/utils/backends.py", line 134, in _set_configs_from_environment

backend_config = Config(**backend_config)

^^^^^^^^^^^^^^^^^^^^^^^^

File "/opt/venv/lib64/python3.12/site-packages/networkx/utils/configs.py", line 82, in __new__

cls = dataclass(

^^^^^^^^^^

File "/usr/lib64/python3.12/dataclasses.py", line 1265, in wrap

return _process_class(cls, init, repr, eq, order, unsafe_hash,

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/lib64/python3.12/dataclasses.py", line 1063, in _process_class

_init_fn(all_init_fields,

File "/usr/lib64/python3.12/dataclasses.py", line 619, in _init_fn

return _create_fn('__init__',

^^^^^^^^^^^^^^^^^^^^^^

File "/usr/lib64/python3.12/dataclasses.py", line 473, in _create_fn

exec(txt, globals, ns)

File "<string>", line 1

def __create_fn__(__dataclass_type_nx-loopback__, __dataclass_HAS_DEFAULT_FACTORY__, __dataclass_builtins_object__, __dataclass_return_type__):

^

SyntaxError: invalid syntax

we are using networkx to 3.3 and crewaversion to 0.177

Are you able to give some context about what you are looking to do

we are seeing this error during the import statement:
from crewai import Agent, Task, Crew, Process
This is causing the following error

def __create_fn__(__dataclass_type_nx-loopback__, __dataclass_HAS_DEFAULT_FACTORY__, __dataclass_builtins_object__, __dataclass_return_type__):

^

SyntaxError: invalid syntax

This seems to be an internal library called networkx which we are not using or added as a specific dependency in our project. When investigated we found that the networkx version 3.3 internally being used from crewai dependency is causing this import error. So, we are trying to look for a robust solution to bypass this error.