Continue fine-tuning from a fine-tuned model

Hi everyone, you can now continue fine-tuning an existing fine-tuned model!

You can give it a try by referencing an existing fine-tuned model name rather than ada/babbage/curie/davinci. For example:

openai api fine_tunes.create -t <TRAIN_FILE_ID_OR_PATH> -m <YOUR_MODEL_NAME>

You can find details in our documentation, we’ll add more tips and examples as we learn more about how folks are using this!

10 Likes

Some people have asked if it’s possible to fine-tune models like TEXT-DAVINCI-002

4 Likes

We’re working on adding a fine-tunable version of text-davinci-002.

We likely won’t have a fine-tunable version of each base model (e.g. text-davinci-001, text-davinci-002, etc.), we’re instead focusing on delivering the best fine-tuning model for each given capability level.

5 Likes

‘Continue fine-tuning from a fine-tuned model’ feature is a type of continuous learning or the new data for the second iteration of fine-tuning will be merged with (cached) previous data used for the first iteration of fine-tuning and then the merged data will be used to fine-tune a pre-trained model?

3 Likes

Can a fine-tuned model be reasonably fine-tuned again indefinitely, or is doing so likely to result in problems? Basically, can fine-tuning be used for iterating learning?

5 Likes

Any update on when this might be available? My company is in the process of developing a fine tuned model, but we’re realizing that fine tuning davinci isn’t financially justifiable since text-davinci-002 delivers equally good (and sometimes better) results than the fine tuned model (which is more expensive to use). Any advice or insight would be greatly appreciated, thanks!

I have tried and realized that this is useless! I thought it would give the ability to extand the existing data of the previous fine-tuned model but it re-starts a new other model from scratch. Means the previous dataset of the fine-tuned model is not included

3 Likes

When you fine-tune an existing model, do we send a new JSONL with just the new prompt-completions or we add the new prompt-completions to the same previous file (which has all the previous + the new ones)?

I tried with just the new ones, and it seems it completely forgot about the old ones. I also tried adding the old ones to the new one, and the cost it showed me was for the whole file (old + new). What am I missing :question:

2 Likes

I want to fine-tune a model that has already been fine-tuned with new data. My goal is to keep the existing fine-tuned model as is while also continuing the fine-tuning process using it as a starting point. Can anyone provide guidance on how to accomplish this?

What you describe is exactly how continuing a fine tune job works.

The first time you fine-tune, you specify the base model, like “gpt-3.5-turbo”

To build on that, you specify the existing fine tune model name, like “ft:gpt-3.5-turbo:myorg:8528525”.

When the second training job is done, you get another model to use.

1 Like

and lose the previous model. like can’t use the fine tuned model before? Right?

The existing model remains unless you want to delete it.

perfect. i get it now. Thankyou so much

also can you let me know that can i get a model at a certain epoch instead of the final one. for example, i have total 14 epoch but i want the model with the epoch no 6, is it possible or will i have to train it for 6 epochs again from scratch?

Your remaining models will still be callable, they don’t go anywhere when you use them as a base for further fine-tuning.

You can keep track of the random-looking model numbers by including a prefix, like “epoch6”, “epoch9”, “epoch12” as you continue to train. However going up to 14 will likely get you an AI that can’t do much other than answer the exact questions in the training set and will do poorer on other types of input that you’d want the training to allow inference of.

3 Likes