I have a few-shot GPT-3 text-davinci-003 prompt that produces "pretty good" results, but I quickly run out of tokens per request for interesting use cases. I have a data set (n~20) which I'd like to train the model with more but there is no way to fine-tune these InstructGPT models, only base GPT models.
As I understand it I can either:
- A: Find a way to harvest 10x more data (I don't see an easy option here)
- or B: Find a way to fine-tune Davinci into something capable of simpler InstructGPT behaviours
(Please let me know if there's a third option. I've attempted to increase epochs from 4 to 10 but the quality is really nowhere near as good).
Is there any way to fine-tune Davinci up to the point where it can model some of the things Instruct does? I don't need full capabilities, but if I can make it narrowed down to my use case it would be ideal.
--
By the way there is a common misconception that fine-tuning a GPT-3 model on a base (davinci, ada, babbage, etc...) will train it on the latest, eg: text-davinci-003. This is not how GPT works and is explained by GPT blog posts and support posts: https://help.openai.com/en/articles/6819989-can-i-fine-tune-on-text-davinci-003
Please don't claim openai api fine_tunes.create -t "model_prepared.jsonl" -m "davinci"
will create a model based on text-davinci-003, it is not true, it uses base davinci.