That's the main point of freelancing. The client pays you either for a certain number of hours of work or to do a specific project. You're never obligated to do anything beyond what was agreed on.
Repeat work is usually desirable though, because getting new clients is often the hardest part of being a freelancer.
As for how big the projects are it varies a lot and anyway my information would be way out of date so the best way to find out is to sign up and see what kind of jobs people are posting. When I was doing it you could often find jobs like building a simple website, a scraper or basic data processing or analytics scripts that could be done in a week or even a few days.
It doesn't have to be the most elaborate contract. I know others will disapprove but I wrote mine myself.
Fortunately it was never tested in court but, at least once, reviewing the terms at a time of disagreement protected both sides from embarking on a costly and painful legal process.
The last years, whenever I tried, I was just writing proposal after proposal and either I was to expensive or I heard nothing.
Maybe it's me, but my impression was that it got way harder to land proper paid jobs.
Also when setting your rate, be mindful that they (like most platforms) take 20%.