At the very beginning of David Marker's book Model Theory, it defines a language to be given by a set of function symbols $F$ and a set of relation symbols R.
I am just wondering isn't a relation a kind of a function too? Is there a reason why the relation is differentiated from function?
The simple answer is that in first-order logic, truth values are not objects in the domain, and so predicates (which output truth values) are intrinsically different from functions (which output domain elements). Therefore we need to know whether a symbol is supposed to represent a function or a predicate (and how many inputs it has), or of course a constant or variable.