The purpose of salting when hashing passwords is to prevent identical passwords from resulting in the same hash values. If your passwords all are, as you say, long and generated by a CSPRNG, then you will not have identical passwords in your database for different users; they will all be unique, and salting adds nothing to the security of these passwords.
However, there may be a caveat. And that is, if you have some passwords that are non-random. I.E., if the random passwords you generate are initial passwords, but users have the ability to choose a different password. If this is the case, then you should more certainly salt your passwords, including the randomly generated ones. There are two reasons for this.
Adding branching logic to salt some passwords but not others is unnecessary complexity, and unnecessary complexity is expensive and evil. By salting everything you're neither reducing nor increasing the security of the random passwords, but simplifying the application logic and reducing the chance for bugs, security or otherwise.
This could drastically reduce the security of the non-random passwords. If your scheme is known and the hashes and salts are extracted by an attacker, they will immediately be able to determine which passwords (the salted passwords) are not random generated, and should be attacked. If all passwords are salted, the random passwords will be indistinguishable from the user-defined passwords.