Re: Installing openAI's GPT-2 Ada AI Language Model
- In reply to: Mario Marietto : "Re: Installing openAI's GPT-2 Ada AI Language Model"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 22 Apr 2023 08:19:00 UTC
On Fri, Apr 21, 2023 at 8:31 AM Mario Marietto <marietto2008@gmail.com> wrote: > > If you don't want to use the GPU,the commands should be more or less the following : > > > sudo touch /usr/local/etc/rc.d/ubuntu && chmod +x /usr/local/etc/rc.d/ubuntu > > # Make it have this content: > > #!/bin/sh > # > # PROVIDE: ubuntu > # REQUIRE: archdep mountlate > # KEYWORD: nojail > # > # This is a modified version of /etc/rc.d/linux > # Based on the script by mrclksr: > # https://github.com/mrclksr/linux-browser-installer/blob/main/rc.d/ubuntu.in > # > . /etc/rc.subr > > name="ubuntu" > desc="Enable Ubuntu chroot, and Linux ABI" > rcvar="ubuntu_enable" > start_cmd="${name}_start" > stop_cmd=":" > > unmounted() > { > [ `stat -f "%d" "$1"` == `stat -f "%d" "$1/.."` -a \ > `stat -f "%i" "$1"` != `stat -f "%i" "$1/.."` ] > } > > ubuntu_start() > { > local _emul_path _tmpdir > > load_kld -e 'linux(aout|elf)' linux > case `sysctl -n hw.machine_arch` in > amd64) > load_kld -e 'linux64elf' linux64 > ;; > esac > if [ -x /compat/ubuntu/sbin/ldconfigDisabled ]; then > _tmpdir=`mktemp -d -t linux-ldconfig` > /compat/ubuntu/sbin/ldconfig -C ${_tmpdir}/ld.so.cache > if ! cmp -s ${_tmpdir}/ld.so.cache /compat/ubuntu/etc/ld.so.cache; then > cat ${_tmpdir}/ld.so.cache > /compat/ubuntu/etc/ld.so.cache > fi > rm -rf ${_tmpdir} > fi > > # Linux uses the pre-pts(4) tty naming scheme. > load_kld pty > > # Handle unbranded ELF executables by defaulting to ELFOSABI_LINUX. > if [ `sysctl -ni kern.elf64.fallback_brand` -eq "-1" ]; then > sysctl kern.elf64.fallback_brand=3 > /dev/null > fi > > if [ `sysctl -ni kern.elf32.fallback_brand` -eq "-1" ]; then > sysctl kern.elf32.fallback_brand=3 > /dev/null > fi > sysctl compat.linux.emul_path=/compat/ubuntu > > _emul_path="/compat/ubuntu" > unmounted "${_emul_path}/dev" && (mount -o nocover -t devfs devfs "${_emul_path}/dev" || exit 1) > unmounted "${_emul_path}/dev/fd" && (mount -o nocover,linrdlnk -t fdescfs fdescfs "${_emul_path}/dev/fd" || exit 1) > unmounted "${_emul_path}/dev/shm" && (mount -o nocover,mode=1777 -t tmpfs tmpfs "${_emul_path}/dev/shm" || exit 1) > unmounted "${_emul_path}/home" && (mount -t nullfs /home "${_emul_path}/home" || exit 1) > unmounted "${_emul_path}/proc" && (mount -o nocover -t linprocfs linprocfs "${_emul_path}/proc" || exit 1) > unmounted "${_emul_path}/sys" && (mount -o nocover -t linsysfs linsysfs "${_emul_path}/sys" || exit 1) > unmounted "${_emul_path}/tmp" && (mount -t nullfs /tmp "${_emul_path}/tmp" || exit 1) > unmounted /dev/fd && (mount -o nocover -t fdescfs fdescfs /dev/fd || exit 1) > unmounted /proc && (mount -o nocover -t procfs procfs /proc || exit 1) > true > } > > load_rc_config $name > run_rc_command "$1" > > sysrc ubuntu_enable=YES > > # Create necessary mount points for a working Linuxulator: > mkdir -p {/compat/ubuntu/dev/fd,/compat/ubuntu/dev/shm,/compat/ubuntu/home,/compat/ubuntu/tmp,/compat/ubuntu/proc,/compat/ubuntu/sys} > > # Start Ubuntu service: > service ubuntu start > > # Install needed packages: > pkg install debootstrap pulseaudio > > # Install Ubuntu 20.04 into /compat/ubuntu: > debootstrap --arch=amd64 --no-check-gpg focal /compat/ubuntu > > # Restart Ubuntu service to make sure everything is properly mounted: > service ubuntu restart > > # Fix broken symlink: > cd /compat/ubuntu/lib64/ && rm ./ld-linux-x86-64.so.2 ; ln -s ../lib/x86_64-linux-gnu/ld-2.31.so ld-linux-x86-64.so.2 > > # Chroot into your Linux environment: > chroot /compat/ubuntu /bin/bash > > # Set correct timezone inside your chroot: > printf "%b\n" "0.0 0 0.0\n0\nUTC" > /etc/adjtime > sudo dpkg-reconfigure tzdata # For some reason sudo is necessary here, otherwise it fails. > > # Fix APT package manager: > printf "APT::Cache-Start 251658240;" > /etc/apt/apt.conf.d/00aptitude > > # Enable more repositories: > printf "deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse" > /etc/apt/sources.list > > # Install required programs: > > apt update ; apt install -y apt-transport-https curl fonts-symbola gnupg pulseaudio build-essential gcc gfortran > > # Exit out of chroot > exit > > # Fix x86_64-linux-gnu libraries path between ubuntu and freebsd > cp -r /compat/ubuntu/usr/lib/x86_64-linux-gnu /lib > > > --> Installing PyTorch and your chatgpt github fork on FreeBSD > > > # fetch https://gist.githubusercontent.com/shkhln/40ef290463e78fb2b0000c60f4ad797e/raw/f640983249607e38af405c95c457ce4afc85c608/uvm_ioctl_override.c > > # /compat/ubuntu/bin/gcc --sysroot=/compat/ubuntu -m64 -std=c99 -Wall -ldl -fPIC -shared -o dummy-uvm.so uvm_ioctl_override.c > > # pkg install linux-miniconda-installer > # miniconda-installer > # bash > # source /home/marietto/miniconda3/etc/profile.d/conda.sh > # conda activate > > (base) # conda activate pytorch > > (pytorch) # conda activate > > (base) # conda activate > > (base) # git clone your chatgpt github fork I have done that I think and get: (base) [babyspock@babyspock ~]$ python src/generate_unconditional_samples.py --model_name 117M --nsamples 5 --length 512 python: can't open file '/usr/opt/babySpock/src/generate_unconditional_samples.py': [Errno 2] No such file or directory (base) [babyspock@babyspock ~]$ cd gpt-2/ (base) [babyspock@babyspock ~/gpt-2]$ python src/generate_unconditional_samples.py --model_name 117M --nsamples 5 --length 512 2023-04-22 00:17:18.661083: I tensorflow/tsl/cuda/cudart_stub.cc:28] Could not find cuda drivers on your machine, GPU will not be used. 2023-04-22 00:17:18.710468: I tensorflow/tsl/cuda/cudart_stub.cc:28] Could not find cuda drivers on your machine, GPU will not be used. 2023-04-22 00:17:18.710951: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations. To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags. 2023-04-22 00:17:19.429409: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT Traceback (most recent call last): File "/usr/opt/babySpock/gpt-2/src/generate_unconditional_samples.py", line 9, in <module> import model, sample, encoder File "/usr/opt/babySpock/gpt-2/src/model.py", line 3, in <module> from tensorflow.contrib.training import HParams ModuleNotFoundError: No module named 'tensorflow.contrib' > > > On Fri, Apr 21, 2023 at 1:34 PM Aryeh Friedman <aryeh.friedman@gmail.com> wrote: >> >> On Fri, Apr 21, 2023 at 6:40 AM Mario Marietto <marietto2008@gmail.com> wrote: >> > >> > You don't need bhyve to make that,but only the Linuxulator. I don't think the type of cpu will make any difference. I've used the Intel I9 cpu. I tried FreeBSD 13.1 and I haven't found problems. For sure using python env is tricky,but if you have the thinkering attitude,you will have some fun. >> >> I already have a VM allocated on it (the same host has 3 other VM's on >> it). I guess that is one thing I missed was the linuxulator (the >> linsuckslator is more like it) and as far tinkering goes it is fine to >> a point but not when it has taken *DAYS* away from paying projects (I >> am a freelancer). >> >> BTW I will be trying your specific command lines tomorrow (I must get >> back to paid work). >> >> P.S. The point of this project is to start a new project called >> babySpock that is a personal assistant for me and my programming >> partner/wife in all but legal detail. babySpock will hopefully be >> able to help with pair programming/design brainstorming, general >> clerical office tasks, be a halfway decent conversation partner >> (roughly on or near the level of chatGPT which inspired this project >> in the first place in order to increase the amount of "context" that >> it could store and to slice and dice context as needed to feed the >> more expensive models just relevant context as well use multiple >> models.... basically a DIY hobbyist AM (artificial mind with the final >> goal being artificial mature minds [AMM] instead of AGI due to the >> rule making paradox) lab that has to "earn its own way in life" (i.e. >> if it is not useful it will likely die from misuse). >> >> > >> > On Fri, Apr 21, 2023 at 12:26 PM Aryeh Friedman <aryeh.friedman@gmail.com> wrote: >> >> >> >> The more I am fighting with it in linux (only thing there is docs for) >> >> the more obvious it just doesn't work on >> >> >> >> On Fri, Apr 21, 2023 at 6:19 AM Mario Marietto <marietto2008@gmail.com> wrote: >> >> > >> >> > Can't you install pytorch using the linux miniconda installer like below ? >> >> > >> >> > # fetch https://gist.githubusercontent.com/shkhln/40ef290463e78fb2b0000c60f4ad797e/raw/f640983249607e38af405c95c457ce4afc85c608/uvm_ioctl_override.c >> >> > >> >> > # /compat/ubuntu/bin/gcc --sysroot=/compat/ubuntu -m64 -std=c99 -Wall -ldl -fPIC -shared -o dummy-uvm.so uvm_ioctl_override.c >> >> > >> >> > # pkg install linux-miniconda-installer >> >> > # miniconda-installer >> >> > # bash >> >> > # source /home/marietto/miniconda3/etc/profile.d/conda.sh >> >> > # conda activate >> >> > >> >> > (base) # conda activate pytorch >> >> > >> >> Will this work a bhyve on an AMD Ryzen 5 host? After playing with it >> >> in several linux instances I always get stuck when it can't find a >> >> compatible version >> >> >> >> -- >> >> Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org >> > >> > >> > >> > -- >> > Mario. >> >> >> >> -- >> Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org > > > > -- > Mario. -- Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org