ParisNeo/lollms-webui

Inability to Change Settings and Select Models in gpt4all Docker Container

Hikari0Des opened this issue · 3 comments

Expected Behavior

I expect the running Docker container for gpt4all to function properly with my specified path mappings.

Current Behavior

Currently, the Docker container is working and running fine. I am able to create discussions, but I cannot send messages within the discussions because no model is selected. Additionally, I am unable to change settings or select a model.

Steps to Reproduce

To reproduce the issue, please follow these steps:

  1. Step 1: Create a Dockerfile with the following content:
FROM python:3.10

# Update apt packages and upgrade system
RUN apt-get update && apt-get upgrade -y

# Install Nano and Git
RUN apt-get install -y nano git

# Clone the GitHub repository
RUN git clone https://github.com/ParisNeo/gpt4all-ui

# Set the working directory to the cloned repository
WORKDIR /gpt4all-ui

# Run the webui.sh script
CMD ["./webui.sh"]
  1. Step 2: Use the following Docker Compose file to run the container:
version: "3"
services:
  gpt4all-ui:
    image: gpt4all-ui:latest
    container_name: gpt4all-ui
    network_mode: bridge
    ports:
      - 9600:9600
    volumes:
      - /home/ubuntu/docker_configs/gpt4all/configs:/gpt4all-ui/configs
      - /home/ubuntu/docker_configs/gpt4all/databases:/gpt4all-ui/databases
      - /srv/dev-disk-by-uuid-6D51A3F571A5430B/Misc/gpt4all-models:/gpt4all-ui/models
    restart: unless-stopped

Make sure to adjust the volume mappings in the Docker Compose file according to your preferred host paths. Also, ensure that you have downloaded the config.yaml file from the Git repository and placed it in the host configs path. Similarly, for the database.db file, download it to the host databases path.

  1. Step 3: To make the web UI accessible from outside the machine, follow these sub-steps:

    • Enter the container console using the command:
      sudo docker exec -it gpt4all-ui /bin/bash
      
    • Use nano to edit /gpt4all-ui/webui.sh inside the Docker container. Replace python app.py with python app.py --host 0.0.0.0 --port 9600. You can edit the file with the command:
      nano /gpt4all-ui/webui.sh
      
  2. Step 4: Recommit the edited Docker container using the command:

    sudo docker commit gpt4all-ui gpt4all-ui
    
  3. Step 5: Restart the Docker container or re-run the Docker Compose file, and the issue should occur.

Context

When accessing the web UI, everything seems to be working fine except for the settings tab. I've tried changing the model and binding, and I have also downloaded the model and placed it in the correct mapping. However, when I click "Apply Changes," the script gets stuck in a loop, and I need to restart the container to regain access to the web UI. Additionally, when attempting to click "Reset Settings," it displays an error message saying "Couldn't reset settings!" as shown in the provided screenshots.

Furthermore, it's worth mentioning that only the "Discussion"

and "Settings" tabs are working, while the "Extensions," "Training," and "Help" tabs are not functioning and only display their respective tab names.

Screenshots

The screenshot of the apply settings loop issue:
Apply Settings Loop

The screenshot of the settings reset issue:
Settings Reset Issue

tried to add the new requirments and still same issue, this is new requirements.txt file:

tqdm
psutil
flask
flask_socketio
pytest
pyyaml
markdown
gevent
gevent-websocket
pyaipersonality>=0.0.14
langchain
beautifulsoup4
wget

any fix?

Did you try last version ?

Did you try last version ?

Which one?, lemme check latest one