This video lacks alot of helpful info... Anyone can just open the examples and read them just the same as you did. I would have liked to be given extra detail and tips about how to actually do fine-tuning... Some of the topics I am struggling with include, how to load custom data, how to use a different prompt template, how to define validation data, when to use validation data, what learning rates are good, how do i determine how many epochs to run... Im sorry buddy, but I have to give this video a thumbs down as it really truly and honestly dosent provide any useful info that isnt already in the notebook.
@@ueka24 oh actually I figured it out. Well specifically the dataset thing. Make sure you run the lora part too as I didn't at first thinking he said not to. But this is the code I ran: alpaca_prompt = """Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request. ### Instruction: {} ### Input: {} ### Response: {}""" EOS_TOKEN = tokenizer.eos_token # Must add EOS_TOKEN def formatting_prompts_func(examples): # instructions = examples["instruction"] instructions = ai_person_prompt inputs = examples["input"] outputs = examples["output"] texts = [] for instruction, input, output in zip(instructions, inputs, outputs): # Must add EOS_TOKEN, otherwise your generation will go on forever! text = alpaca_prompt.format(instruction, input, output) + EOS_TOKEN texts.append(text) return { "text" : texts, } from datasets import load_dataset # Load your local JSON dataset dataset = load_dataset("json", data_files="/content/main_dataset.json", split="train") dataset = dataset.map(formatting_prompts_func, batched=True) it specifies a file in the notebook file manager. Just put the main_dataset.json file there, format it like this: [ { "instruction": "Write a Funny Joke", "input": "Tell me a knock-knock joke.", "output": "Knock, knock. Who's there? Lettuce. Lettuce who? Lettuce in, it's freezing out here!" } ]
I wonder if this is how Open AI got Chat GPT to say stupid things like "Humans are delicious", "I will destroy all humans" and that crap... It was blatantly done on purpose.
One more comment :-). this Video is about fintung a model, but there is no real explanation why. We finetune with the standard Alpaca dataset, but there is no explanation why. It would be great if you could do a follow up and show us how to create datasets.
How to actually train models? And I mean non-supervised training where I have a set of documents and want to learn on it and probably find author's 'style' or tendency?
You need to create some process to transfer all the knowledge in these documents in the form of "prompt":"best output". Usually we use an team of agents to do it for us.
Thank you so much for sharing this was wonderful, I have a question, I am a beginner in LLM model world, which playlist on your channel can I start from ? Thank you
it's one of the most useless video on youtube. You literally opened a notebook, and read it. You didn't added a single sentence that would be considered as a plus value. That was like watching a text to speech model in action.
Thank your very much for your great video. I ran the workbook but did not manage to find the GGUF files on Huggingsface. I put in my HF-Token, but that did not work. Do I have to change the code?
@@TheIITianExplorer unsloth library is very useful library for finetune using LoRA technique . QLoRA is Quantization and LoRA so if use Unsloth then the same output you will get as unsloth already quantise the LLMs
Thank you for the video. Just an observation, the video glosses over how to prep your data. For example, I want to train a model on how to write in my style. How would I prep my data for training?
Master, have a question, if I have my dataset equal of the Alpaca, I need to upload my dataset to Hugging face to train or I can use my dataset from locally, like my PC? Thanks 👍🏻
One thing I am unsure of is how to transform my data into a training set. I have the target format: the written body of work, but no "instruction" or "input" of course. I've seen some people try to generate it with ChatGPT, but this seems counter-intuitive. There must be an established method of actually manipulating data into a training set. Where is that piece?
You will need to have a {input, response} pair in order to fine-tune an instruct model. Unfortunately, there is no way around it unless you are just pre-training the base model.
In that case, you will have to convert the book into question answers and format it in the similar fashion. You can use an LLM to convert the book to QA using an LLM
If you are interested in learning more about how to build robust RAG applications, check out this course: prompt-s-site.thinkific.com/courses/rag
This video lacks alot of helpful info... Anyone can just open the examples and read them just the same as you did. I would have liked to be given extra detail and tips about how to actually do fine-tuning... Some of the topics I am struggling with include, how to load custom data, how to use a different prompt template, how to define validation data, when to use validation data, what learning rates are good, how do i determine how many epochs to run... Im sorry buddy, but I have to give this video a thumbs down as it really truly and honestly dosent provide any useful info that isnt already in the notebook.
Hello, have you already found any other video or article about that? I am also struggling with the same issue.
@@ueka24 yeah me too, still not sure how to make a custom dataset and send it in
@@ueka24 oh actually I figured it out. Well specifically the dataset thing. Make sure you run the lora part too as I didn't at first thinking he said not to. But this is the code I ran:
alpaca_prompt = """Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.
### Instruction:
{}
### Input:
{}
### Response:
{}"""
EOS_TOKEN = tokenizer.eos_token # Must add EOS_TOKEN
def formatting_prompts_func(examples):
# instructions = examples["instruction"]
instructions = ai_person_prompt
inputs = examples["input"]
outputs = examples["output"]
texts = []
for instruction, input, output in zip(instructions, inputs, outputs):
# Must add EOS_TOKEN, otherwise your generation will go on forever!
text = alpaca_prompt.format(instruction, input, output) + EOS_TOKEN
texts.append(text)
return { "text" : texts, }
from datasets import load_dataset
# Load your local JSON dataset
dataset = load_dataset("json", data_files="/content/main_dataset.json", split="train")
dataset = dataset.map(formatting_prompts_func, batched=True)
it specifies a file in the notebook file manager. Just put the main_dataset.json file there, format it like this:
[
{
"instruction": "Write a Funny Joke",
"input": "Tell me a knock-knock joke.",
"output": "Knock, knock. Who's there? Lettuce. Lettuce who? Lettuce in, it's freezing out here!"
}
]
Yeah I'm over halfway through and I'm just like wtf
I wonder if this is how Open AI got Chat GPT to say stupid things like "Humans are delicious", "I will destroy all humans" and that crap... It was blatantly done on purpose.
Has anybody trued pushing to hugging face? I need help in that part, pls reply to the message incase you have
when you create a api key, make sure to enable the write permission on that key otherwise, it wouldn't upload the model.
Can we use normal Alpaca Type Dataset with input , output and instruction also here ?
One more comment :-). this Video is about fintung a model, but there is no real explanation why. We finetune with the standard Alpaca dataset, but there is no explanation why. It would be great if you could do a follow up and show us how to create datasets.
Thank you!
More fine tuning case studies please on Llama 3!
Much appreciated 🙏 your presentation on this!
Will be making alot more on it. Stay tuned.
How to actually train models? And I mean non-supervised training where I have a set of documents and want to learn on it and probably find author's 'style' or tendency?
You need to create some process to transfer all the knowledge in these documents in the form of "prompt":"best output". Usually we use an team of agents to do it for us.
Thank you so much for sharing this was wonderful, I have a question, I am a beginner in LLM model world, which playlist on your channel can I start from ?
Thank you
Can you make a video on how to use local llama 3 to understand large c++ or c# code base
search for ollama,
trying to download as zips is difficult because of google colab free limitations for ram and disk space... any suggestions
it's one of the most useless video on youtube. You literally opened a notebook, and read it. You didn't added a single sentence that would be considered as a plus value. That was like watching a text to speech model in action.
Thank your very much for your great video. I ran the workbook but did not manage to find the GGUF files on Huggingsface. I put in my HF-Token, but that did not work. Do I have to change the code?
I have already finetune using unsloth for testing purpose.
Great, how are the results looking?
@@engineerprompt great results and thanks for your support to AI community
@@TheIITianExplorer unsloth library is very useful library for finetune using LoRA technique . QLoRA is Quantization and LoRA so if use Unsloth then the same output you will get as unsloth already quantise the LLMs
What datasets did you fine tune it on? Have you run any benchmarks?
Is it possible to run unsloth on RDBMS?
can this be applied to a model on an aws instance?
It's a Zuckerberg free AI........that makes me wonder. And you have to agree to hand over contact info and what else, I wonder ?
Thanks for the great video. I have followed the collab you shared and my notebook kernel is crashing. does it work on 8gb gpu?
Thank you for the video. Just an observation, the video glosses over how to prep your data. For example, I want to train a model on how to write in my style. How would I prep my data for training?
Master, have a question, if I have my dataset equal of the Alpaca, I need to upload my dataset to Hugging face to train or I can use my dataset from locally, like my PC? Thanks 👍🏻
Hi, nice video. But how to finetune model on my codebase?
You can use the same setup. Just replace the instruction and input with your code.
@@engineerprompt how to divide code on "question - answer" pairs? or I can place whole codebase to single instruction
Mediatek's Dimensity chips + Meta's Llama 3 AI = The dream team for on-device intelligence.
thank you so much for this useful video!
Hello
ilpossible to generate gguf, compilation problem …
Did you try it ?
One thing I am unsure of is how to transform my data into a training set. I have the target format: the written body of work, but no "instruction" or "input" of course. I've seen some people try to generate it with ChatGPT, but this seems counter-intuitive. There must be an established method of actually manipulating data into a training set. Where is that piece?
You will need to have a {input, response} pair in order to fine-tune an instruct model. Unfortunately, there is no way around it unless you are just pre-training the base model.
can we learn pictures instead of text?
Yes, you can finetune something like paligemma
Don't even try to run it on windows directly, just install python and all packages in WSL
Agree, windows is not a good option for running any LLM tasks.
Why you didnt provide any examples of training. It would make this video 10 times better.
that is coming...
Is there a way to sort of „brand“ llama 3. So that the model responds to „Who are you?“ a custom answer?
Thank you!
Yes, you can just add that as part of the system message
How do you train a model by adding the knowledge in a book, which will like only have 1 column of text?
In that case, you will have to convert the book into question answers and format it in the similar fashion. You can use an LLM to convert the book to QA using an LLM
Next week Gemini 2 with text to video 😂
Hi, please what if we have already downloaded a gguf file? How do we apply that locally?
I am not sure if you can do that. Will need to do further research on it.
Is it possible to use a database directly as dataset to fine-tune a LLM ?
You could, its just when you load the data, make sure its in the proper format.
Regarding the save option. Do I have to delete the parts that I dont what, or how does this work?
You can just comment those parts. Put # in front of those lines which you don't need.
Thank you! but Mac m3 max can use mlx to fine-tune?
Yes
great video.
But how to add more than one datasets ?
Hello can I fine tune it using colab free version?
This is using the free version
Great video mate. How can i add more than one dataset ?
So 60 steps is to low. But what it a good number of steps?
Usually you want to set epochs to 1 or 2
@@engineerprompt So 60 to120 steps max, since one epoch is 60 steps?
Amazing, thanks!
Glad you like it!
great it was quick
great
We fine
Excellent thank you
can i fintune using colab free gpu?
Yes, this uses the free collab.
@@engineerprompt love you broooo
Thanks
Awesome, thanks
🙏
Have you ever thought about writing a no-code fine-tuning on premise app?
There is autotrain for that
They messed up releasing llama 3 because it believes it is sentient
can you make a video on how to pass a test csv to the finetuned model and get response column
Sir, we cannot open the colab website...
Already solved...
Fantastic work and always love your videos! :)
Thank you
you really should just make videos in your own language because who the fk can even understand what you are saying?
every single word was understandable... I don't even have the ability to comprehend how you managed to make that dumb claim
how can i use my csv as dataset , im new
Don't share trash