Unable to run rasa docker image from docker compose

unable to run

docker-compose file : [https://github.com/RasaHQ/rasa/blob/main/docker/docker-compose.yml]

rasa.core.agent - Could not load model due to Error initializing graph component for node ‘run_DIETClassifier4’…

@azizullah2017 please share all your Dockerfile and docker-compose files.

@nik202

version: '3.0'

services:
  rasa:
    image: rasa/rasa:3.0.8-full
    networks: ['rasa-network']
    ports:
    - "5005:5005"
    volumes:
    - "./formbot/:/app/"
    environment:
      MPLCONFIGDIR: "/tmp/"
    command:
    - run
    - --enable-api  
    - --cors   
    - "*"  

  action_server:
    image: rasa/rasa-sdk:latest
    networks: ['rasa-network']
    ports:
    - "5055:5055"
    volumes:
    - "./formbot/actions:/app/actions"

  duckling:
    image: rasa/duckling:latest
    networks: ['rasa-network']
    ports:
    - "8000:8000"

@azizullah2017 can you share the error message you are getting whilst building the image? a screenshot will be fine.

I have already did.

@azizullah2017 yes, I can see but I want to see on the terminal what message you are getting as a screenshot, please.

@nik202 here is the full log

docker-compose up


WARNING: Found orphan containers (test-doc_server_1) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
Starting test-doc_rasa_1          ... done
Starting test-doc_duckling_1      ... done
Starting test-doc_action_server_1 ... done
Attaching to test-doc_duckling_1, test-doc_action_server_1, test-doc_rasa_1
action_server_1  | 2022-02-14 17:12:05 INFO     rasa_sdk.endpoint  - Starting action endpoint server...
action_server_1  | 2022-02-14 17:12:05 INFO     rasa_sdk.executor  - Registered function for 'validate_restaurant_form'.
action_server_1  | 2022-02-14 17:12:05 INFO     rasa_sdk.endpoint  - Action endpoint is up and running on http://0.0.0.0:5055
duckling_1       | Listening on http://0.0.0.0:8000
rasa_1           | 2022-02-14 17:12:11 INFO     root  - Starting Rasa server on http://0.0.0.0:5005
rasa_1           | 2022-02-14 17:12:20 INFO     rasa.core.processor  - Loading model models/20220212-205144-small-slider.tar.gz...
rasa_1           | 2022-02-14 17:12:20 ERROR    rasa.core.agent  - Could not load model due to Error initializing graph component for node 'run_DIETClassifier4'..
rasa_1           | 2022-02-14 17:12:20 INFO     root  - Rasa server is up and running.


rasa_1           | 2022-02-14 17:16:55 INFO     rasa.core.agent  - Ignoring message as there is no agent to handle it.

OK @azizullah2017 please share config.yml and do you have any Dockerfile?

I have tried with Dockerfile and without it too, neither of this working here he my docker file

FROM rasa/rasa:3.0.8-full

WORKDIR /app

COPY ./formbot /app

USER root

USER 1001

@azizullah2017 can you try to follow this thread and make the necessary changes like the rasa and rasa-sdk versions : Dockerizing my rasa chatbot application that has botfront - #11 by nik202

@nik202 do you what is the issue in above file ?

@azizullah2017 can not comment on that, can be a known bug. I am aware that you opened the issue on rasa Github, mean while trying to use a lower version of the rasa image and see if the issue persists?

@azizullah2017 could you update your issue description. This issue isn’t related to docker-compose. Should be something like Cannot load model, error initializing graph for DIETClassifier.

Thanks,

Greg

I updated the issue.

The problem is related to the release of scipy 1.8.0 on February 5. I worked around the problem by going back to 1.7.3. I think any models trained in an environment with Scipy 1.8.0 will fail when deployed to a production environment.

@stephens thanks for the update.

@DC1991Lau noted in the issue that this is also a problem for 2.x:

It happens with the version 2.8.0 as well:

`File “/opt/venv/lib/python3.8/site-packages/rasa/utils/io.py”, line 81, in pickle_load return pickle.load(f)

ModuleNotFoundError: No module named ‘scipy.sparse._coo’`

may be we are missing something here they have used

FROM rasa/rasa:2.8.0

@azizullah2017 are you able to solve this issue?

nope, I getting error in order version too.

docker run -it --rm --user root -v $(pwd):/app rasa/rasa:2.2.0-full init --no-prompt docker run -it --rm --user root -v $(pwd):/app rasa/rasa:3.0.8-full train --debug

docker-compose up

version: '3.0'

services:
  rasa:
    image: rasa/rasa:2.2.0-full
    user: root
    restart: always
    ports:   
      - 5005:5005  
    volumes:   
      - .:/app  
    command:  
      - run  
      - -m  
      - models   
      - --enable-api  
      - --cors   
      - "*"  
      - --debug

  action_server:
    image: rasa/rasa-sdk:2.2.0
    networks: ['rasa-network']
    ports:
    - "5055:5055"
    volumes:
    - "./formbot/actions:/app/actions"

  duckling:
    image: rasa/duckling:latest
    networks: ['rasa-network']
    ports:
    - "8000:8000"

networks: {rasa-network: {}}

@nik202 do you any idea what i am missing?

rasa_1           | 2022-02-24 13:50:00 DEBUG    rasa.core.lock_store  - Deleted lock for conversation 'default'.
rasa_1           | 2022-02-24 13:50:00 ERROR    rasa.core.channels.rest  - An exception occured while handling user message 'None'.
rasa_1           | Traceback (most recent call last):
rasa_1           |   File "/opt/venv/lib/python3.7/site-packages/rasa/core/channels/rest.py", line 126, in receive
rasa_1           |     metadata=metadata,
rasa_1           |   File "/opt/venv/lib/python3.7/site-packages/rasa/core/channels/channel.py", line 85, in handler
rasa_1           |     await app.agent.handle_message(*args, **kwargs)
rasa_1           |   File "/opt/venv/lib/python3.7/site-packages/rasa/core/agent.py", line 528, in handle_message
rasa_1           |     return await processor.handle_message(message)
rasa_1           |   File "/opt/venv/lib/python3.7/site-packages/rasa/core/processor.py", line 87, in handle_message
rasa_1           |     tracker = await self.log_message(message, should_save_tracker=False)
rasa_1           |   File "/opt/venv/lib/python3.7/site-packages/rasa/core/processor.py", line 304, in log_message
rasa_1           |     await self._handle_message_with_tracker(message, tracker)
rasa_1           |   File "/opt/venv/lib/python3.7/site-packages/rasa/core/processor.py", line 566, in _handle_message_with_tracker
rasa_1           |     parse_data = await self.parse_message(message, tracker)
rasa_1           |   File "/opt/venv/lib/python3.7/site-packages/rasa/core/processor.py", line 539, in parse_message
rasa_1           |     if text.startswith(INTENT_MESSAGE_PREFIX):
rasa_1           | AttributeError: 'NoneType' object has no attribute 'startswith'


@azizullah2017 are you using some parser? or can you tell me what is this startwith any code? OR some custom channel?