When fine-tuning a classification model (using Ada), the completion provided when I test the model’s use is longer than 1 token. It seems to be cut at the typical ~3 character amount, which isn’t ideal. This seems counter to the classification provided in the documentation example: openai-cookbook/Fine-tuned_classification.ipynb at main · openai/openai-cookbook · GitHub. From that example, my model would be cutting off at ’ bas’ when the max_token=1 is applied. This leads to incorrect follow-on completions. I think I’ve followed all the right instructions from the documentation and the examples, but can’t seem to get past this issue. My training data is formatted like the following:
{"prompt": "String to classify.\n\nLegend ID: ", "completion": " f1234"}
{"prompt": "Another string to classify.\n\nLegend ID: ", "completion": " f1456"}
{"prompt": "A third string to classify.\n\nLegend ID: ", "completion": " f1456.123"}
I’ve tested using a token legend to ensure only 1 token is provided in the completion, and processing that response locally (see data format below). This works okay, but it has limitations. Additionally, it seems like if the completion token (Legend ID) includes leading 0s, it effects the token count and in turn the response.
{"prompt": "String to classify.\n\nLegend ID: ", "completion": " 987"}
{"prompt": "Another string to classify.\n\nLegend ID: ", "completion": " 123"}
Is there something obvious that I’m missing on why my original fine-tuning dataset’s completions are more than 1 token?