chroma: [Bug]: /docker_entrypoint.sh: line 5: 29 Illegal instruction (core dumped)

What happened?

I’ve made a simple deploy of the chrome on a dedicated server with 4GB RAM The following line if performed correctly:

collection = client.get_or_create_collection( name=CHROMA_COLLECTION, embedding_function=openai_ef )

the following line instead raised the issue: collection.add(documents=[document], metadatas=[metadatas], ids=[pid])

I’ve tried the same on a more powerful server with 16GB and the server does not fail.

I’ve arrived to the conclusion that it is a memory issue. but from the documentation (https://docs.trychroma.com/deployment#simple-aws-deployment), I’ve seen that chroma needs 2GB for running. so i’m a bit confused here, why do I have this memory problem ?

Versions

Chroma:0.3.25 Python: 3.9

Relevant log output

2023-05-31 15:50:11 WARNING  chromadb.api.models.Collection No embedding_function provided, using default embedding function: DefaultEmbeddingFunction https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2

2023-05-31 15:50:11 INFO     uvicorn.access  109.252.33.216:1559 - "POST /api/v1/collections HTTP/1.1" 200

/docker_entrypoint.sh: line 5:    29 Illegal instruction     (core dumped) uvicorn chromadb.app:app --workers 1 --host 0.0.0.0 --port 8000 --proxy-headers --log-config log_config.yml

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Reactions: 4
  • Comments: 15 (2 by maintainers)

Most upvoted comments

That’s strong argument for switching to something else, it’s not Docker friendly in that case 😕

Hi @HammadB, does it mean chroma doesn’t support running the image on the platform which was different from which the image was built?

For example, if I want to build the image on a CPU node and use the image on a GPU machine, we might encounter the core dumped issue?

Please build on the same platform you expect to run on.

I have the same problem with this error “Illegal instruction (core dumped)” when I just run the code below:

import chromadb chroma_client = chromadb.Client()

I try it in 3 different machines,only one with this problem

@dswah by early next week it definitely will be fine for single-node chroma.