chroma-core / chroma

the AI-native open-source embedding database
https://www.trychroma.com/
Apache License 2.0
14.54k stars 1.21k forks source link

[Bug]: AttributeError: 'NoneType' object has no attribute 'get' #2723

Open mit1503 opened 2 weeks ago

mit1503 commented 2 weeks ago

What happened?

2024-08-15 10:38:08 Traceback (most recent call last): 2024-08-15 10:38:08 File "/root/ollama-rag/app/load_data.py", line 92, in 2024-08-15 10:38:08 collection = client.get_or_create_collection("rag_private") 2024-08-15 10:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:08 File "/usr/local/lib/python3.11/site-packages/chromadb/api/client.py", line 166, in get_or_create_collection 2024-08-15 10:38:08 model = self._server.get_or_create_collection( 2024-08-15 10:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:08 File "/usr/local/lib/python3.11/site-packages/chromadb/telemetry/opentelemetry/init.py", line 146, in wrapper 2024-08-15 10:38:08 return f(*args, kwargs) 2024-08-15 10:38:08 ^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:08 File "/usr/local/lib/python3.11/site-packages/chromadb/api/fastapi.py", line 247, in get_or_create_collection 2024-08-15 10:38:08 return self.create_collection( 2024-08-15 10:38:08 ^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:08 File "/usr/local/lib/python3.11/site-packages/chromadb/telemetry/opentelemetry/init.py", line 146, in wrapper 2024-08-15 10:38:08 return f(*args, *kwargs) 2024-08-15 10:38:08 ^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:08 File "/usr/local/lib/python3.11/site-packages/chromadb/api/fastapi.py", line 206, in create_collection 2024-08-15 10:38:08 model = CollectionModel.from_json(resp_json) 2024-08-15 10:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:08 File "/usr/local/lib/python3.11/site-packages/chromadb/types.py", line 139, in from_json 2024-08-15 10:38:08 configuration = CollectionConfigurationInternal.from_json( 2024-08-15 10:38:08 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:08 The data is being loaded to the collection 2024-08-15 10:38:08 <class 'list'> 2024-08-15 10:38:08 1 2024-08-15 10:38:08 creatting client instance 2024-08-15 10:38:08 Resetting the client 2024-08-15 10:38:08 Setting the embedding model 2024-08-15 10:38:08 Converting data 2024-08-15 10:38:08 2 2024-08-15 10:38:08 0 2024-08-15 10:38:08 0 2024-08-15 10:38:08 Embedding: 2024-08-15 10:38:08 [[-0.48140115 0.07457735 0.43727493 ... -0.17524345 -0.5039072 2024-08-15 10:38:08 -0.03979333] 2024-08-15 10:38:08 [-0.06443053 -0.38931713 0.16623124 ... -0.3373302 0.21833304 2024-08-15 10:38:08 0.17818175]] 2024-08-15 10:38:08 Embedding type: <class 'numpy.ndarray'> 2024-08-15 10:38:08 Embedding length: 2 2024-08-15 10:38:08 Metada length is 2 2024-08-15 10:38:08 Metada type is <class 'list'> 2024-08-15 10:38:08 documents type is 2 2024-08-15 10:38:08 Data converted to embeddings 2024-08-15 10:38:11 Creating client 2024-08-15 10:38:11 Resetting client 2024-08-15 10:38:11 Embedding model is being loaded 2024-08-15 10:38:08 File "/usr/local/lib/python3.11/site-packages/chromadb/api/configuration.py", line 207, in from_json 2024-08-15 10:38:08 if cls.name != json_map.get("_type", None): 2024-08-15 10:38:08 ^^^^^^^^^^^^ 2024-08-15 10:38:08 AttributeError: 'NoneType' object has no attribute 'get' 2024-08-15 10:38:11 USER_AGENT environment variable not set, consider setting it to identify your requests. 2024-08-15 10:38:11 Traceback (most recent call last): 2024-08-15 10:38:11 File "/usr/local/bin/uvicorn", line 8, in 2024-08-15 10:38:11 sys.exit(main()) 2024-08-15 10:38:11 ^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1157, in call 2024-08-15 10:38:11 return self.main(args, kwargs) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1078, in main 2024-08-15 10:38:11 rv = self.invoke(ctx) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1434, in invoke 2024-08-15 10:38:11 return ctx.invoke(self.callback, ctx.params) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/click/core.py", line 783, in invoke 2024-08-15 10:38:11 return callback(*args, **kwargs) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 416, in main 2024-08-15 10:38:11 run( 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 587, in run 2024-08-15 10:38:11 server.run() 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 61, in run 2024-08-15 10:38:11 return asyncio.run(self.serve(sockets=sockets)) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/asyncio/runners.py", line 190, in run 2024-08-15 10:38:11 return runner.run(main) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run 2024-08-15 10:38:11 return self._loop.run_until_complete(task) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "uvloop/loop.pyx", line 1517, in uvloop.loop.Loop.run_until_complete 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 68, in serve 2024-08-15 10:38:11 config.load() 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/uvicorn/config.py", line 467, in load 2024-08-15 10:38:11 self.loaded_app = import_from_string(self.app) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/uvicorn/importer.py", line 21, in import_from_string 2024-08-15 10:38:11 module = importlib.import_module(module_str) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/importlib/init__.py", line 126, in import_module 2024-08-15 10:38:11 return _bootstrap._gcd_import(name[level:], package, level) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "", line 1204, in _gcd_import 2024-08-15 10:38:11 File "", line 1176, in _find_and_load 2024-08-15 10:38:11 File "", line 1147, in _find_and_load_unlocked 2024-08-15 10:38:11 File "", line 690, in _load_unlocked 2024-08-15 10:38:11 File "", line 940, in exec_module 2024-08-15 10:38:11 File "", line 241, in _call_with_frames_removed 2024-08-15 10:38:11 File "/root/ollama-rag/app/server.py", line 4, in 2024-08-15 10:38:11 from .chain import chain as rag_chroma_private_chain 2024-08-15 10:38:11 File "/root/ollama-rag/app/chain.py", line 57, in 2024-08-15 10:38:11 collection_r = client._server.create_collection( 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/chromadb/telemetry/opentelemetry/init.py", line 146, in wrapper 2024-08-15 10:38:11 return f(*args, kwargs) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/chromadb/api/fastapi.py", line 206, in create_collection 2024-08-15 10:38:11 model = CollectionModel.from_json(resp_json) 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/chromadb/types.py", line 139, in from_json 2024-08-15 10:38:11 configuration = CollectionConfigurationInternal.from_json( 2024-08-15 10:38:11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2024-08-15 10:38:11 File "/usr/local/lib/python3.11/site-packages/chromadb/api/configuration.py", line 207, in from_json 2024-08-15 10:38:11 if cls.name != json_map.get("_type", None): 2024-08-15 10:38:11 ^^^^^^^^^^^^ 2024-08-15 10:38:11 AttributeError: 'NoneType' object has no attribute 'get'

Versions

chromadb = ">=0.4.14" python = 3.11.9

Relevant log output

No response

tazarov commented 2 weeks ago

@mit1503, this is usually observed if you use a newer client, e.g. 0.5.5, with an older Chroma server (e.g. <0.5.0).

Are you able to upgrade your Chroma server to the latest version?