Can You Use the Falcon Models For Commercial Applications?
An Apache 2.0 license is not all we need
The Falcon models are now among the best large language models according to public benchmarks.
I introduced them in one of my previous articles:
They are especially very good at answering questions from various domains and for common sense inference. Using such capabilities for commercial applications would make a lot of sense.
When they were first released, the Falcon models were not free for commercial use. Their license changed at the end of May to an Apache 2.0 license, seemingly allowing commercial use.
But, is an Apache 2.0 license enough to guarantee that you can use a model for commercial purposes?
It’s not so simple.
The authors of an LLM can put whatever license they want on a model. It doesn’t mean that you shouldn’t check whether the license can really be applied to the model.
In the case of Falcon models, if you use them in commercial applications, you expose your business to potential legal conflicts with OpenAI.
Falcon-instruct distilled ChatGPT
Falcon-instruct models are instruct versions of the Falcon models. They are trained on human-made datasets containing “instructions” to fine-tune the models into chatbots, similar to what has been done to transform GPT-3 into ChatGPT.
We should always look at the data used to train a model.
Falcon-instruct models are trained on:
a 150M tokens from Bai ze mixed with 5% of RefinedWeb data.
RefinedWeb is a data set compiled from Common Crawl. I don’t know what’s in it. But I would definitely look at it if I planned to use Falcon models for commercial purposes.
On the other hand, we can easily check what contains the Bai ze datasets. According to the GitHub of the dataset:
It uses 100k dialogs generated by letting ChatGPT chat with itself.
It’s a dataset generated by ChatGPT. Falcon-instruct has been trained to become a chatbot using ChatGPT-generated data.
Falcon-instruct models are free chatbots, distributed with an Apache 2.0 License, trained by ChatGPT. This is somewhat close to machine learning “distillation”: ChatGPT is the teacher, Falcon-instruct is the student. We can expect Falcon-instruct to get a performance close to ChatGPT thanks to this process.
Does OpenAI allow this?
No. They don’t, if the model competes with their services. In OpenAI’s terms of use, we can read among the restrictions:
(iii) use output from the Services to develop models that compete with OpenAI;
I’m not a lawyer so don’t take it as legal advice but my understanding is that Falcon-instruct models break OpenAI’s terms of use.
To the best of my knowledge, OpenAI didn’t react to it yet and they probably won’t. It all depends on how we interpret “compete”. As such, simply hosted on Hugging Face’s hub, the Falcon-instruct models don’t really compete with OpenAI services.
Nonetheless, if you embed a Falcon-instruct model in your product and that product is good enough to redirect some of OpenAI’s service users to your product, then I would imagine that OpenAI would do something about it.
If you use a model trained by ChatGPT, ultimately, your product will live as long as OpenAI doesn’t care about it.
If you want instead to fine-tune the original pre-trained Falcon model on your own datasets, I explain the steps to follow here: