3 ms·
The problem is that most non-OpenAI models haven't actually been fine-tuned with function calling in mind, and getting a model to output function-calling-like s
by kcorbitt 3y ago
The problem is that most non-OpenAI models haven't actually been fine-tuned with function calling in mind, and getting a model to output function-calling-like syntax without having been trained on it is quite unreliable. There are a few alternatives that have been (OpenHermes 2.5 has some function calling in its dataset and does a decent job with it, and the latest Claude does as well), but for now it just doesn't work great.
That said, it's not that hard to fine-tune a model to understand function calling -- we do that as part of all of our OpenPipe fine tunes, and you can see the serialization method we use here: https://github.com/OpenPipe/OpenPipe/blob/main/app/src/modelProviders/fine-tuned/serializers.ts#L12 https://github.com/OpenPipe/OpenPipe/blob/main/app/src/model...
It isn't particularly difficult, and I'd expect more general-purpose fine-tunes will start doing something similar as they get more mature!
- stevenhuang 3y agoCheckout this recently released function calling model, apparently it beats gpt4 by 7% https://huggingface.co/Nexusflow/NexusRaven-V2-13B https://huggingface.co/Nexusflow/NexusRaven-V2-13B
- zby 3y agoReAct was used before OpenAI introduced functions. It might be less reliable - but you can add error checking and retry.