guinmoon / LLMFarm

llama and other large language models on iOS and MacOS offline using GGML library.
https://llmfarm.site
MIT License
1.06k stars 64 forks source link

Fine tuning does not work #24

Closed solidityenthusiast closed 2 months ago

solidityenthusiast commented 6 months ago

Hi, I'm using LLMFarm testflight on M1 Max with 64 GB RAM. I cannot get fine-tuning to run. When I click the run button, nothing happens in the UI. Is there something I'm missing?

For reference, I'm trying to train mistral-7b-instruct-v0.2 on 1,000 rows of a .JSONL file. I have also tried a basic .TXT file and *.JSON array file, but neither worked. Changing the params or toggling "Metal" didn't help either.

Any ideas?

guinmoon commented 6 months ago

Could you send a screenshot of what you see when you click "run finetune"?

guinmoon commented 6 months ago

If finetune is running you should see something like this Screenshot 2023-12-16 at 11 42 00

solidityenthusiast commented 6 months ago

Hey @guinmoon, I'm not getting any output in the logs. No CPU usage in activity monitor. I am on the latest testflight. Any idea what could be going wrong? See the video below:

https://github.com/guinmoon/LLMFarm/assets/95111407/c02ec66c-c0a3-4b37-9114-053c89c629b2

guinmoon commented 6 months ago

That's weird. It's not supposed to be like that. I'll look into it.

jasjeev4 commented 5 months ago

I tried the same on my M1 Pro Macbook as well as my iPhone 15 Pro and I too don't see logs when I run fine tuning.

jasjeev4 commented 5 months ago

I believe it's due to a commented line which disables the file from being created. Changing it fixes the issue for me:

https://github.com/guinmoon/LLMFarm/pull/34

guinmoon commented 3 months ago

Can you tell me if this problem still occurs in the new version?

kebbbnnn commented 1 month ago

Had the same issue. The reason was my fine tuning dataset was on my mac's Download folder instead of the "datasets" folder of the app that's why get_path_by_short_name() function returned nil path aborting the finetuning. Make sure everything is in the right place.