A czy ty w ogóle czytałeś konstrukcję szablonu funkcji? Ma to wyglądać tak:
template <typename T> std::vector <T> funkcja() { //... }
Po drugie, definicja szablonu musi być w tej samej jednostce translacyjnej, co jego wywołanie. Dobrze jest to wytłumaczone tutaj.