h2oai / h2ogpt

Private chat with local GPT with document, images, video, etc. 100% private, Apache 2.0. Supports oLLaMa, Mixtral, llama.cpp, and more. Demo: https://gpt.h2o.ai/ https://gpt-docs.h2o.ai/
http://h2o.ai
Apache License 2.0
11.32k stars 1.24k forks source link

Dependency conflicts when using the "pip install -r requirements.txt --extra-index https://download.pytorch.org/whl/cu117" command #976

Closed frivasplata closed 11 months ago

frivasplata commented 11 months ago

I have reinstalled the h2ogpt in my server and I noticed that 2 dependency errors arise when using the command: pip install -r requirements.txt --extra-index https://download.pytorch.org/whl/cu117

This file (requirements.txt) together with the extra index url are for some reason uninstalling the required torch and numpy versions then the torchvision and openvino packages are not properly installed and now the answers I'm receiving are completely crazy.

Below the error I'm receiving in the server console during the installation, pay attention to the fact that the installation process managed by the pip install command is removing the numpy 1.23.4 and the torch 2.1.0 and then the error arise saying that those versions are missed. Any help with this issue will be very appreciated.

Installing collected packages: numpy, triton, torch Attempting uninstall: numpy Found existing installation: numpy 1.23.4 Uninstalling numpy-1.23.4: Successfully uninstalled numpy-1.23.4 Attempting uninstall: triton Found existing installation: triton 2.1.0 Uninstalling triton-2.1.0: Successfully uninstalled triton-2.1.0 Attempting uninstall: torch Found existing installation: torch 2.1.0 Uninstalling torch-2.1.0: Successfully uninstalled torch-2.1.0 ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. openvino 2022.3.0 requires numpy<=1.23.4,>=1.16.6, but you have numpy 1.24.3 which is incompatible. torchvision 0.16.0 requires torch==2.1.0, but you have torch 2.0.1+cu117 which is incompatible. Successfully installed numpy-1.24.3 torch-2.0.1+cu117 triton-2.0.0

pseudotensor commented 11 months ago

torch 2.1.0 should only be for CPU, so the uninstall makes sense. But, shouldn't have had it already in first place.

torchvision etc. are only installed with DocTR dependency AFAIK, which comes later in instructions.

So I'm guessing you have an existing environment and trying to install things. Can you try a fresh env and installing things in the steps documented? I've never hit an issue with following the steps.

Thanks!

frivasplata commented 11 months ago

Ok I will do that, thank you

Regards Fernando Rivasplata

On Fri, Oct 20, 2023 at 5:31 PM pseudotensor @.***> wrote:

torch 2.1.0 should only be for CPU, so the uninstall makes sense.

torchvision etc. are only installed with DocTR dependency AFAIK, which comes later in instructions.

So I'm guessing you have an existing environment and trying to install things. Can you try a fresh env and installing things in the steps documented? I've never hit an issue with following the steps.

Thanks!

— Reply to this email directly, view it on GitHub https://github.com/h2oai/h2ogpt/issues/976#issuecomment-1773419923, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHIZJRXSACLB4OA7ULLXPS3YALUUZAVCNFSM6AAAAAA6JS55ZOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZTGQYTSOJSGM . You are receiving this because you authored the thread.Message ID: @.***>

frivasplata commented 11 months ago

Hi, I completely removed the conda env (conda remove -n name --all) then I reinstalled h2ogpt but it has the same issues, it is highly probably that I'm doing something wrong so if you can help me to find the issue in the installation sequence I'll appreciate it. Since I decided to reinstall h2ogpt the model is returning super crazy answers.

Here the installation process command by command I'm following, it seems that I'm missing something or adding something that I shouldn't. The server I'm using has 1 x GPU RTX-A6000 with 48Gb of VRAM and CUDA version 12.2, it was working fine 2 days ago but since I reinstalled it is almost useless, please help me.

creating a conda env and installing python 3.10

conda create -n h2ogpt -y conda activate h2ogpt conda install python=3.10 -c conda-forge -y

Cloning the h2ogpt from github

git clone https://github.com/h2oai/h2ogpt.git cd h2ogpt

Installing CUDA toolkit

conda install cudatoolkit=11.7 -c conda-forge -y export CUDA_HOME=$CONDA_PREFIX

Installing dependencies

pip uninstall -y pandoc pypandoc pypandoc-binary flash-attn pip install -r requirements.txt --extra-index https://download.pytorch.org/whl/cu117

May be required for jq package:

sudo apt-get -y install autoconf libtool

Required for Doc Q/A: LangChain:

pip install -r reqs_optional/requirements_optional_langchain.txt --extra-index https://download.pytorch.org/whl/cu117

Optional: PyMuPDF/ArXiv:

pip install -r reqs_optional/requirements_optional_langchain.gpllike.txt --extra-index https://download.pytorch.org/whl/cu117

Optional: Selenium/PlayWright:

pip install -r reqs_optional/requirements_optional_langchain.urls.txt --extra-index https://download.pytorch.org/whl/cu117

Optional: support docx, pptx, ArXiv, etc. required by some python packages

sudo apt-get install -y libmagic-dev poppler-utils tesseract-ocr libtesseract-dev libreoffice

Improved OCR with DocTR:

conda install -y -c conda-forge pygobject pip install -r reqs_optional/requirements_optional_doctr.txt --extra-index https://download.pytorch.org/whl/cu117

go back to older onnx so Tesseract OCR still works

pip install onnxruntime==1.15.0 onnxruntime-gpu==1.15.0 --extra-index https://download.pytorch.org/whl/cu117

Optional: for supporting unstructured package

python -m nltk.downloader all

Optional but required for PlayWright

playwright install --with-reps

Control core count for chroma

pip install https://h2o-release.s3.amazonaws.com/h2ogpt/duckdb-0.8.2.dev4025%2Bg9698e9e6a8.d20230907-cp310-cp310-linux_x86_64.whl --no-cache-dir --force-reinstall --no-deps

Then I'm running the generate.py with the following attributes: python generate.py --base_model=/root/experiments/mistral-7B-1108-v8-linear+lora200alpha128dropout0-1 --load_8bit=True --score_model=None --temperature=0.01 --visible_submit_buttons=True --visible_side_bar=False --visible_chat_tab=True --visible_doc_selection_tab=False --visible_doc_view_tab=False --visible_chat_history_tab=False --visible_expert_tab=False --visible_models_tab=False --visible_system_tab=False --visible_tos_tab=False --visible_hosts_tab=False --chat_tabless=False --visible_h2ogpt_header=False --append_sources_to_answer=False

Regards Fernando Rivasplata

On Fri, Oct 20, 2023 at 5:32 PM Fernando @.***> wrote:

Ok I will do that, thank you

Regards Fernando Rivasplata

On Fri, Oct 20, 2023 at 5:31 PM pseudotensor @.***> wrote:

torch 2.1.0 should only be for CPU, so the uninstall makes sense.

torchvision etc. are only installed with DocTR dependency AFAIK, which comes later in instructions.

So I'm guessing you have an existing environment and trying to install things. Can you try a fresh env and installing things in the steps documented? I've never hit an issue with following the steps.

Thanks!

— Reply to this email directly, view it on GitHub https://github.com/h2oai/h2ogpt/issues/976#issuecomment-1773419923, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHIZJRXSACLB4OA7ULLXPS3YALUUZAVCNFSM6AAAAAA6JS55ZOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZTGQYTSOJSGM . You are receiving this because you authored the thread.Message ID: @.***>

pseudotensor commented 11 months ago

Hi, you showed all the above, but in that case, what error do you get? Garbage output? But no package issues? Please explain.

pseudotensor commented 11 months ago

I'd run your case but it uses a model I don't have.

If I just change to mistral instruct itself I get:

image

Note that "mistral instruct" requires --prompt_type=mistral but that is chosen automatically if the model name is known. Your model is not known, so you need to pass that to the generate.py line.

That's probably at least one of your issues.

frivasplata commented 11 months ago

Thank you, that worked.

Regards Fernando Rivasplata

On Fri, Oct 20, 2023 at 8:06 PM pseudotensor @.***> wrote:

I'd run your case but it uses a model I don't have.

If I just change to mistral instruct itself I get:

[image: image] https://user-images.githubusercontent.com/2249614/277071069-059f0917-ff78-43f3-8ca5-f893c1ffef60.png

Note that "mistral instruct" requires --prompt_type=mistral but that is chosen automatically if the model name is known. Your model is not known, so you need to pass that to the generate.py line.

That's probably at least one of your issues.

— Reply to this email directly, view it on GitHub https://github.com/h2oai/h2ogpt/issues/976#issuecomment-1773540975, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHIZJRQVCXLUS6PEBSPDL3LYAMG2DAVCNFSM6AAAAAA6JS55ZOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZTGU2DAOJXGU . You are receiving this because you authored the thread.Message ID: @.***>