there are certainly many different definitions of "friend". Once, I created one myself:
A good friend is a person which you can take on a walk through a "landscape" in your mind. (I. e. you might say: "Suppose X and Y. Then we could ...", and she / he would follow you (at least for a stretch) and perhaps contribute something, without immediately blocking by objections like: "X will never happen / Y is crap!")
Based on this definition, neither the most loyal dog nor Siri can be your friend unless they know the meaning of X and Y (whatever these are, e.g. modified Maxwell equations, being a knight at King Arthur's court, etc.), and can imagine / simulate the consequences of X and Y.
P.S. While rereading my answer, I stumbled over the word "simulate". I have to change my opinion: Only humans can be (ideally) "universal friends" but simulation programs like CST (no trace of AI can be found here, it's just the application of a vast amount of engineering knowledge) can be "specific friends" (according to my own definition) because, within the scope of their competence, they follow you wherever you lead, and they can really determine the realistic consequences of certain Xs. Amazing! ;-) Thank you very much, Divya, for the question!
See the movie HER in this regard. And in China, the most popular digital entity is a "Therapist". So let us continue to dehumanize our species. See my attached article.