Тёмный

Running a Hugging Face LLM on your laptop 

Learn Data with Mark
Подписаться 9 тыс.
Просмотров 65 тыс.
50% 1

In this video, we'll learn how to run a Large Language Model (LLM) from Hugging Face on our own machine.
Blog post: www.markhneedham.com/blog/202...
Notebook: github.com/mneedham/LearnData...
Other videos showing how to run LLMs on your own machine
• Running Mixtral on you...
• LLMs on your own machi...
• Running Mistral AI on ...
• Hugging Face GGUF Mode...

Наука

Опубликовано:

 

3 авг 2023

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 110   
@ravirajasekharuni
@ravirajasekharuni 3 дня назад
Amazing and outstanding. This video and presentation is awesome.
@elmino19
@elmino19 Год назад
You explained completely and perfectly without wasting the audience's time! well done
@learndatawithmark
@learndatawithmark 10 месяцев назад
Thanks!
@norwegiansmores811
@norwegiansmores811 Месяц назад
except for the part that i have got no clue what the required software to start is. what os to run on nor how to run the code in step 2. the farthest i got was git bash for the transformer and thats about it. i just want to run some local ai, why does it have to be so obtuse??
@learndatawithmark
@learndatawithmark Месяц назад
@@norwegiansmores811 It's running in a Jupyter notebook - jupyter.org/ but you can run the code anywhere that can run Python code e.g. a Python REPL or a Python script.
@learndatawithmark
@learndatawithmark Месяц назад
@norwegianmores811 I think the easiest way to run local AI as of June 2024 is now this - lmstudio.ai/
@headshorts_YT
@headshorts_YT 4 месяца назад
Awesome! Thanks for this video.
@NappoAvanti
@NappoAvanti 6 месяцев назад
Thanks for this video!!
@armantech5926
@armantech5926 3 месяца назад
That's Great! Thank you!
@tee_iam78
@tee_iam78 29 дней назад
Thank you for the contents.
@alexandrerodtchenko6099
@alexandrerodtchenko6099 4 месяца назад
Super video!
@MitulGarg3
@MitulGarg3 3 месяца назад
Absolutely wonderful video! to the point and well explianed! way to go! thanks a lot!
@learndatawithmark
@learndatawithmark 2 месяца назад
Thanks - very kind of you :D
@piyushharsh01
@piyushharsh01 11 месяцев назад
Super helpful and easy to understand!
@learndatawithmark
@learndatawithmark 10 месяцев назад
Glad it was helpful :)
@flaviocorreia4462
@flaviocorreia4462 4 месяца назад
Thank you very much, you helped me a lot
@youssefabbas6349
@youssefabbas6349 Месяц назад
thank you very much for this great explaination
@shivamroy1775
@shivamroy1775 Год назад
This was an extremely informative video. Really appreciate it.
@learndatawithmark
@learndatawithmark Год назад
Thanks, glad you enjoyed it!
@enceladus96
@enceladus96 8 месяцев назад
this video saved my day
@knotfoursail6404
@knotfoursail6404 11 месяцев назад
Super helpful 👍
@knotfoursail6404
@knotfoursail6404 11 месяцев назад
Random idea, but a video on how to run an embeddings model on a laptop would be really cool 😀 Could even combine embeddings + text2text for more specific answers. Or even t5_3b + selenium to create something similar to bing chat. Anyway, wish you luck on RU-vid 😊
@learndatawithmark
@learndatawithmark 11 месяцев назад
Sorry, I didn't see this reply! I've got a notebook with that idea sketched out, so I'll create a video for that soon. On holiday at the moment, but will do it when I get back home!
@wasgeht2409
@wasgeht2409 2 месяца назад
thx
@viniciustsugi8007
@viniciustsugi8007 11 месяцев назад
Awesome content, love your channel! Video is very informative and concise, thanks. As a friendly suggestion, you might want to give a couple of secs at the end for the video for slow people like me to hit that well deserved like button :)
@learndatawithmark
@learndatawithmark 11 месяцев назад
Thanks for your kind words! Let me see if I can figure out a good way to implement your suggestion 🙂
@user-ph5is3hi9c
@user-ph5is3hi9c 6 месяцев назад
thanks Mark, very nice video, super clearly put! could you please suggest, what could be the reason if (when trying to set the wifi off) the output of those lines of code is "ModuleNotFoundError: No module named utils"?
@learndatawithmark
@learndatawithmark 6 месяцев назад
utils should be referring to this file - github.com/mneedham/LearnDataWithMark/blob/main/llm-own-laptop/notebooks/utils.py - so in theory that's independent of WiFi connectivity. If it can't find that module you could copy/paste those functions into the notebook and use them like that.
@mikiallen7733
@mikiallen7733 5 месяцев назад
thanks sir , however I want to know 1- how one can integrate specific set of models (pre-trained) ones in to Rstudio ? so that one can simply run examples on data "proprietary in my case " locally within R 2- is there a way to ask the inference API for tasks different from the typical sentiment classification of text for example "multi-entity tagging" , "modalities" ....etc your input is highly appreciated
@imaginarybuddy
@imaginarybuddy 19 дней назад
hi, thanks for the video. May I ask what's the meaning of legacy=False when using the pretrained model?
@user-du8hf3he7r
@user-du8hf3he7r 6 месяцев назад
An API key is not needed if the model is downloaded and run locally.
@itspaintosee
@itspaintosee 5 месяцев назад
So long as you have a behemoth of a machine. 16GB Ram = 100% memory usage 😭😂
@jayo3074
@jayo3074 4 месяца назад
I don't think anyone can afford an expensive laptop lol
@Sovereignl55
@Sovereignl55 3 месяца назад
Do you know how to run it on live servers!! How to get?
@Sendero-yp5gi
@Sendero-yp5gi Месяц назад
It is needed to download the model!
@mortysmith666
@mortysmith666 26 дней назад
The api key is used to authenticate account for huggingface
@dimitripetrenko438
@dimitripetrenko438 8 месяцев назад
Hi Mark! This video is very helpful, may I ask do you think fastchat can be used in combination with Qdrant for RAG? Thank you in advance
@learndatawithmark
@learndatawithmark 8 месяцев назад
Yeh you can could combine it with any database to do RAG.
@user-lx1th5gr5z
@user-lx1th5gr5z 7 месяцев назад
Thank you! I finally downloaded a big llama model.. lol 😹
@learndatawithmark
@learndatawithmark 6 месяцев назад
Winning!
@l501l501l
@l501l501l 9 месяцев назад
Hi Mark, great video. May I know your notebook and the configuration? I’m thinking switching to MacOS to play around with Gen AI.
@learndatawithmark
@learndatawithmark 8 месяцев назад
I'm using the latest version of Jupyter Lab and I have it set to dark mode with pretty much every one of the views hidden so that I can use as much of the screen as I can. Not sure if that answered your question, so feel free to follow up!
@wadejohnson4542
@wadejohnson4542 7 месяцев назад
What is the configuration of your local environment
@Shivam-bi5uo
@Shivam-bi5uo 6 месяцев назад
i want to work with a model that is tagged as 'text-generation' how do i run it?
@MarxTech_DIY
@MarxTech_DIY 8 месяцев назад
Hey, great tutorial! I also found your blog on this and followed that, but I always get this error: Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained. This is my first time experimenting with LLMs, so any assistance would be greatly appreciated.
@learndatawithmark
@learndatawithmark 8 месяцев назад
Oh I'm not sure about that error - I haven't seen that one before. Since I made this video I've been playing around with another tool called Ollama which I found easier to use. It might be worth giving that a try to see if that works for you? ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-NFgEgqua-fg.html
@riok4523
@riok4523 Месяц назад
hi Mark - super helpful. can i run all of this in terminal?
@learndatawithmark
@learndatawithmark Месяц назад
You can. You can use a Python REPL or even the iPython CLI. Or you could put it all in a Python script and run that.
@dgl3283
@dgl3283 Месяц назад
I deeply appreciate your video! Although I have a question, does this still works when the model file is a .safetensors or .pth file, not a .bin file? Thank you!
@learndatawithmark
@learndatawithmark Месяц назад
Yeh I think it should work with both of those.
@radoslavkoynov322
@radoslavkoynov322 5 месяцев назад
I am getting an error/ info log from transformers (twice) stating "Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained." The model then generates only a bunch of whitespace, no matter the input. I have followed through your steps and made sure the files were downloaded at the expected location. The behavior occurrs both with and without setting legacy=False.
@learndatawithmark
@learndatawithmark 5 месяцев назад
Does it work after you see that message?
@kyledavelaar455
@kyledavelaar455 4 месяца назад
@@learndatawithmark getting the same error and hang when running in colab or locally. seems like the pipeline("my query") never resolves
@engineeringcareer8313
@engineeringcareer8313 Месяц назад
Same thing happens to me! Hanging and giving random replies! I am using mac m3
@Cynadyde
@Cynadyde 8 месяцев назад
If you're getting a wacky error trying to perform `AutoTokenizer.from_pretrained(model_id, legacy=False)`, do pip install protobuf==3.20.1 and restart the jupyter kernel
@learndatawithmark
@learndatawithmark 8 месяцев назад
Good tip! I get that error somewhat randomly but never quite figured out the combination steps that result in it happening!
@rodriguezmj11
@rodriguezmj11 6 месяцев назад
Has anyone built a GUI for this?
@SudhakarVyas
@SudhakarVyas Месяц назад
Thanks Mark for this video. A quick question- Is this safe to pass some PII data to one of the open source hugging face models that require the hugging face API token ? If No, how can this be resolved in deployment so that there is no risk of data leakage ? Please guide through this.
@learndatawithmark
@learndatawithmark Месяц назад
It depends. If you are passing your HF API token because you're using the HF inference endpoint then your data is getting sent to the HF API. If you're passing it because you're downloading a model that requires token auth then your data will only be local to where you run the model that you download.
@mokh1611
@mokh1611 4 месяца назад
I'm probably missing something, but where are you using the downloaded files? you are entering model_id in .from_pretrained(), how is it finding/using the downloaded model?
@learndatawithmark
@learndatawithmark 4 месяца назад
It's reading from the ~/.cache directory. So it constructs a file path based on that directory & the model id
@static_frostBRK
@static_frostBRK Месяц назад
Hello there Mark i was wondering if i could use this method to download other ai models for example text to image models?
@learndatawithmark
@learndatawithmark Месяц назад
Yes you should be able to use a similar approach. There's a good guide on image to text over here - huggingface.co/tasks/image-text-to-text
@Sendero-yp5gi
@Sendero-yp5gi Месяц назад
What is the difference w.r.t to using the classical: from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained(model_id) model = AutoModelForCausalLM.from_pretrained(model_id) Thanks in advance!
@learndatawithmark
@learndatawithmark 24 дня назад
I think it's the same thing under the hood - no need to change from your approach!
@Xploitacademy
@Xploitacademy 3 месяца назад
What is the editor you are using on localhost ?
@learndatawithmark
@learndatawithmark 3 месяца назад
I'm using a Jupyter notebook in the video
@Haui1985m
@Haui1985m 8 месяцев назад
Hi, wich webinterface you use for python scripts? I want to use it to :)
@learndatawithmark
@learndatawithmark 8 месяцев назад
This is Jupyter Lab - jupyter.org/
@engineeringcareer8313
@engineeringcareer8313 Месяц назад
Hey, can you tell me about your system info, i am using mac m3 and its not giving any response and running continuously?
@learndatawithmark
@learndatawithmark Месяц назад
I use a Mac M1 with 64GB RAM. I think it's a 2021 edition. I've found in general that the quantised models work better on my machine - either using Ollama or llama.cpp. ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-YDj_ScvBpKU.html ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-NFgEgqua-fg.html
@OmarAli19591
@OmarAli19591 9 месяцев назад
sorry i'm just starting with this, the code you're writing in the beginning, what is the website called?
@learndatawithmark
@learndatawithmark 9 месяцев назад
Do you mean this one? huggingface.co/
@mbikangruth5630
@mbikangruth5630 19 дней назад
I have done as you say, but running the model pipeline is taking forever to work. It still has not worked, please what can I do?
@learndatawithmark
@learndatawithmark 17 дней назад
If it's running too slowly then maybe it'd make sense to try out some of the quantised models instead. Those ones are smaller and better suited for running on consumer hardware. I quite like Ollama and I've made a few videos on that. This is probably the best place to start - ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-NFgEgqua-fg.html
@darylallen2485
@darylallen2485 9 месяцев назад
1:03 - Thanks for this clarification. I'd done quite a bit of Google searching and scouring the Hugging Face website for this information. I found nothing of value. I'm a computer enthusiast / gamer and not a professional machine learning engineer. Since embarking on running an LLM locally on my previous daily use desktop, I've noticed its near impossible to find a model's resource needs. GPT4 says a 7b parameter model would consume about 48 GB memory. I asked it what size model would fit in my 12 GB Nvidia 3060, it said about 3.2 billion. My question for you is, why is it that everyone in this space who seems to offer a model (or talk about them) never includes something like a system requirements descriptor? Is it one of those situations where, if you need to ask, you probably don't have enough resources? Thanks for any insight you can give on this phenomenon.
@learndatawithmark
@learndatawithmark 9 месяцев назад
My impression is that most of the models being created are assuming that you have insanely good GPUs to run them on! Since I created this video, there's been a lot of work done by a guy called TheBloke on Hugging Face to 'quantise' the models, which effectively means that the amount of resources required is reduced, but the quality of the model is slightly reduced too. I've found those models work a lot better on my laptop. The Bloke is using a format called GGUF, which is kind of a defact format for LLM models. I made a video showing how to run one of his models on my machine - ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-7BH4C6-HP14.html. That video uses a tool called Ollama which works on Linux/Mac - ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-NFgEgqua-fg.html There is also another library called CTransformers which lets you choose whether to run models on the GPU or CPU. I've found the 7B parameter quantised models work reasonably well even on the CPU. I should probably create a video about that I guess! But in the mean time, this is the link - github.com/marella/ctransformers
@darylallen2485
@darylallen2485 7 месяцев назад
@@learndatawithmark thanks!
@timjx3675
@timjx3675 10 месяцев назад
Great vid, however I’m getting a value error, failure to import transformers error even though I used pip to do that, wondering if it’s a python version issue, I’m using 3.10, wonder if anyone has any ideas ? Thx
@learndatawithmark
@learndatawithmark 10 месяцев назад
Can you share a script with all the code you ran and I'll try to reproduce?
@CGATTMUSIC
@CGATTMUSIC 7 месяцев назад
use 3.9 its more stable
@stanleyt6003
@stanleyt6003 29 дней назад
your python installation is missing the transformer module 'pip install transformers' will do the trick.
@diln5
@diln5 Месяц назад
i personally found disabling your wifi from a jupyter notebook to be bad ass
@learndatawithmark
@learndatawithmark Месяц назад
Haha, thanks. It took me a little while to figure out how to do it!
@insideworld4122
@insideworld4122 4 месяца назад
sir if wifi is on then they model is working properly or not?
@learndatawithmark
@learndatawithmark 4 месяца назад
Yes it should work without wifi - but you will need a connection to the internet to download the model.
@Inderastein
@Inderastein 3 месяца назад
hey um, i don't know if you'll read this in time, but I have a problem: pytorch_model.bin: 0%| | 0.00/13.5G [00:00
@learndatawithmark
@learndatawithmark 3 месяца назад
Hard to know exactly why - maybe connectivity with Hugging Face or maybe your internet or maybe the download tool?! You could try going to Hugging Face directly and click through to files and download them directly to see if it helps.
@stanleyt6003
@stanleyt6003 29 дней назад
@@learndatawithmark You got to rerun that part couple times and make sure you have a fast connection. For example, pytorch_model.bin is 6.71gb that would take some time to download
@marufakamallabonno146
@marufakamallabonno146 9 месяцев назад
How can I use this downloaded model next time ?
@learndatawithmark
@learndatawithmark 9 месяцев назад
It will already be there so if you try to use it again there won't be any need to download it
@The_Little_One_Of_Darkness
@The_Little_One_Of_Darkness 6 месяцев назад
Hi, i try to find someone who uses GGUF directly and locally without using a .bin to launch it because I would like to launch it under python, is this possible? Or should I do something else?
@learndatawithmark
@learndatawithmark 6 месяцев назад
You can do this using CTransformers like I did in this video - ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-S2thmwdrYrI.html I think you might even be able to do it with HuggingFace transformers, but I haven't tried it myself.
@The_Little_One_Of_Darkness
@The_Little_One_Of_Darkness 6 месяцев назад
@@learndatawithmark if one day you make a video on this, I would like to see it, in fact what I would have liked was to discuss with the model directly with python without going through any interface and to give it a personality with json like we have could do it with webui (but without webui) I tried various methods and honestly I find so little explanation. I had the idea of ​​making my own bot as I saw in "wifu" mode in the sense that it is totally customizable and we give it a personality with a long term memory. The basic idea was to have a small model just for me. I'm just frustrated to see bots that don't even remember talking to us 2 seconds before. xD
@learndatawithmark
@learndatawithmark 6 месяцев назад
@@The_Little_One_Of_Darkness it sounds like you want to keep the history of the chat messages between you and the LLM? I showed how to do this in memory on this video using Ollama, but it can be adapted to another approach - ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-MiJQ_zlnBeo.html. I can across a tool called MemGPT which I think attempts to solve this problem, but I haven't tried it yet - memgpt.ai/
@user-sm1re8xm5p
@user-sm1re8xm5p 2 месяца назад
under the "..." in huggingface there is a "clone this repo" which copies all stuff onto your PC. seems simpler to me.
@learndatawithmark
@learndatawithmark 2 месяца назад
Probably works for this one but sometimes there will be multiple different versions of the same model and it'll take up all your free space if you do that!
@IanTindale
@IanTindale Месяц назад
I keep following along until about 12 seconds in, where you start typing into something and you say let’s open up age something, and carry on typing into whatever it is you’re typing into - I can’t get that far, I don’t know what to type into
@learndatawithmark
@learndatawithmark Месяц назад
I'm using a Jupyter Notebook, but the code would work in any Python environment or script jupyter.org/
@IanTindale
@IanTindale Месяц назад
@@learndatawithmark ah thanks, that’s interesting - I’ve never heard of that
@paulohss2
@paulohss2 4 месяца назад
So many steps missing in this video...
@mohsenghafari7652
@mohsenghafari7652 5 месяцев назад
hi. please help me. how to create custom model from many pdfs in Persian language? tank you.
@AwkwardTruths
@AwkwardTruths 4 месяца назад
Pinned
@artusanctus997
@artusanctus997 4 месяца назад
Seems unnecessarily complex... isn't there like an online space to use this stuff without having to write a bunch of stuff just to download it?
@learndatawithmark
@learndatawithmark 4 месяца назад
Yeh I think with a bunch of the models you're able to run them on the Hugging Face website on the right hand side of the page. And then in general there are many services that offer APIs that you can call. The approach describe in this video is only for if you don't want to use those services.
@TheFrankyguitar
@TheFrankyguitar 9 месяцев назад
When I run this: "os.environ.get("HUGGING_FACE_API_KEY")" I get"None". Is it normal?
@TheFrankyguitar
@TheFrankyguitar 9 месяцев назад
I guess I need to set the HUGGING_FACE_API_KEY variable to my token beforehand.
@learndatawithmark
@learndatawithmark 9 месяцев назад
You would need to set that environment variable before running your Python environment otherwise yeh it'll be none
Далее
Running Mistral AI on your machine with Ollama
6:25
Просмотров 14 тыс.
What is Hugging Face? (In about a minute)
1:27
Просмотров 74 тыс.
How to access LLMs from hugging face? (Practical Demo)
7:02
All You Need To Know About Running LLMs Locally
10:30
Просмотров 133 тыс.
Hugging Face SafeTensors LLMs in Ollama
6:38
Просмотров 2,3 тыс.
What are AI Agents?
12:29
Просмотров 107 тыс.
Should You Use Open Source Large Language Models?
6:40