Mude isso:
Schema::table('products', function (Blueprint $table) {
$table->foreign('provider_id')->references('providers')->on('id')->onDelete('cascade');
$table->foreign('brand_id')->references('brands')->on('id')->onDelete('cascade');
});
para
Schema::table('products', function (Blueprint $table) {
$table->foreign('provider_id')->references('id')->on('providers')->onDelete('cascade');
$table->foreign('brand_id')->references('id')->on('brands')->onDelete('cascade');
});
Você trocou a posição pelo nome da coluna e tabela.