Multimodal-workshop

Hi there,

I am trying to run the multimodal-workshop notebooks without luck.

I tried building the docker image locally and in codespace.

Here is the error message on codespace:

 /workspaces/multimodal-workshop/2-multimodal (main) $ docker compose up
[+] Running 2/0
 ✔ Container 2-multimodal-weaviate-1        Running                                                                                                                                                0.0s 
 ✔ Container 2-multimodal-multi2vec-bind-1  Created                                                                                                                                                0.0s 
Attaching to multi2vec-bind-1, weaviate-1
weaviate-1        | {"action":"multi2vec_remote_wait_for_startup","error":"send check ready request: Get \"http://multi2vec-bind:8080/.well-known/ready\": context deadline exceeded","level":"warning","msg":"multi2vec-bind inference service not ready","time":"2024-01-23T23:56:15Z"}

I have seen Error resolving node name to host
but I did not do any migrations. Especially not on Codespace.

I did not modify the docker-compose file.

Any idea how to solve this?

All the best,
rsale

hi @rsale really sorry for the delay here :frowning:

This os probably due to the fact that multi2vec-bind can take quite some time to be up and running.

One way to avoid this, is to make sure multi2vec-bind is running first, then spinning up Weaviate, like so

docker compose up -d multi2vec-bind

now you monitor the status of that cluster first, with docker ps

Once you are sure it is running, you can spin docker compose up -d again.

Here an example of docker-compose that solves this:

---
version: '3.4'
services:
  weaviate:
    command:
    - --host
    - 0.0.0.0
    - --port
    - '8080'
    - --scheme
    - http
    image: semitechnologies/weaviate:1.23.7
    ports:
    - 8080:8080
    - 50051:50051
    restart: on-failure:0
    depends_on:
      multi2vec-bind:
        condition: service_healthy    
    environment:
      QUERY_DEFAULTS_LIMIT: 25
      AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED: 'true'
      PERSISTENCE_DATA_PATH: '/var/lib/weaviate'
      DEFAULT_VECTORIZER_MODULE: 'multi2vec-bind'
      ENABLE_MODULES: 'multi2vec-bind'
      BIND_INFERENCE_API: 'http://multi2vec-bind:8080'
      CLUSTER_HOSTNAME: 'node1'
  
  multi2vec-bind:
    mem_limit: 12G
    image: semitechnologies/multi2vec-bind:imagebind
    environment:
      ENABLE_CUDA: '0'
    healthcheck:
      test: wget --no-verbose --tries=3 --spider http://localhost:8080/.well-known/ready || exit 1
      interval: 10s
      retries: 5
      start_period: 15s
      timeout: 30s      
...

Hi @DudaNogueira ,

yes I figured it out. It was the version number. It worked after I used the latest I think it was the weaviate version. From “image: semitechnologies/weaviate:1.22.5” to I think it was the weaviate version. This “image: semitechnologies/weaviate:1.23.7”

Thank you

1 Like