DE is readily available and will kill the larvae AND adults quickly. Sticky traps catch some adults, but not all, and in the meantime they're reproducing like crazy. The adults are not the problem. The larvae will eat up your roots and can screw up your crop if left unchecked and allowed to get out of hand. You have to kill them at the source. Cover the soil with DE and your gnats will be but a distant memory. Gnatrol looks good too. I wasn't familiar with the product until I saw it suggested here. It has a type of bacteria that won't hurt you or your plants, but will kill the larvae quickly. Once they're dead, the adults will gradually die off or be caught by your sticky traps.
After a pretty bad infestation several years back, I now just mix DE into my soil before planting and I've never had a problem since.
Please take our advice and attack the problem at its source (larvae), or you will be fighting an uphill battle for the remainder of your crop's life.