LostRuins / koboldcpp

Run GGUF models easily with a KoboldAI UI. One File. Zero Install.
https://github.com/lostruins/koboldcpp
GNU Affero General Public License v3.0
5k stars 349 forks source link

[Unhandled exception] PyInstallerImportError: Failed to load dynlib/dll '[...]\\koboldcpp_clblast.dll' #194

Closed yungsoyboy closed 1 year ago

yungsoyboy commented 1 year ago

I've looked around and haven't found anyone reporting this yet.

I've tried to run the newest version of koboldcpp, but it doesn't work when enabling CLBlast for me. This is the error I am getting using the koboldcpp.exe.

I'm on Windows 10 using a Ryzen processor and a 3060 Ti - everything works fine, and has been working fine, except CLBlast.

--useclblast 0 0 --gpulayers 12 (but I tried all kinds of different settings as well)

I also tried running as administrator, for if it had something to do with folder access. The folder ("_MEI...") gets generated and the files mentioned in the output are there as well. Am I just doing something wrong?

2023-05-22 21_09_05-Window

LostRuins commented 1 year ago

For some reason it is refusing the load that dll. You said the koboldcpp_clblast.dll is in the temp folder at that path? Is clblast.dll there too? Do the other non-clblast modes work?

yungsoyboy commented 1 year ago

Yes, the clblast.dll is inside that folder as well - here is what's inside the folder that gets generated inside Temp:

2023-05-23 12_47_58-Window

All other modes and features work perfectly fine. (OpenBLAS, No BLAS, token streaming, smart context, adjusting BLAS batch size)

The models I've been trying to load are all LLaMA variants, some newer, some older. They are the same models that load successfully without CLBlast. Just in case it matters, the newest model I've tried was WizardLM-30B-Uncensored.ggmlv3.q4_0.bin and it says in the console that it is a LLaMA model ver 5.

LostRuins commented 1 year ago

Hmm I'm not too sure then. Clearly there is some dependency missing. Only thing I can think of is to rebuild that library from source.

yungsoyboy commented 1 year ago

Hmm okay, thanks for your reply. I've just downloaded a tool called Dependency Walker and went over the koboldcpp_clblast.dll - not entirely sure how to fix this, but this is the result:

2023-05-23 16_17_40-Dependency Walker -  koboldcpp_clblast dll

There are also a ton of MS-... errors, but apparently those can be ignored because it is said those are false positives .

So, apparently the problem for me is a missing/inaccessible/broken OpenCL.dll.. I'll look further into it the coming days.

yungsoyboy commented 1 year ago

Oh no.

Okay, so I've reinstalled/updated my GPU drivers, checked for OpenCL support in GPU-Z and did a windows system file integrity check (sfc) - and all say everything should be working. I tested running koboldcpp with CLBlast again and, uh, it works. (Yay! And also, 💀). Sadly, I didn't check GPU-Z or did the system file check before updating drivers to see if that would have given it away.

So, the solution was just to update the GPU driver. Sorry!

But at least if someone else should run into that error message it's clear what they should check first.

Thanks for taking the time 😭

LostRuins commented 1 year ago

Nice! This is a valuable find. So I guess it was a faulty environment on your end. Hopefully this is useful to others! Feel free to close this issue if everything is ok.