Essas coisas são configuráveis no Postgres, mas a implementação francesa no Postgres é o que reduz tudo isso:
discourse_development=# select to_tsvector('french', 'passants');
to_tsvector
-------------
'pass':1
(1 row)
discourse_development=# select to_tsvector('english', 'passants');
to_tsvector
-------------
'passant':1
(1 row)
Existem dicionários mais sofisticados que podem ser usados, mas eles são extremamente complicados de configurar.