Issue:
In influence function attributors we do not have projector_kwargs, but instead flatten it into the function signature, E.g proj_dim, seed etc and assemble the kwargs internally. Others such as trak, we are using projector_kwargs as a signature. This introduces inconsistencies in API and creates confusions for users as they explore different interfaces.
Proposals:
Since projector_kwargs is part of the subsystem of influence function, we should unify the API by creating a strongly typed config for it (Pydantic class) For different influence functions, we can define/extend different Pydantic types to ensure compatibility.

Issue:
In influence function attributors we do not have projector_kwargs, but instead flatten it into the function signature, E.g proj_dim, seed etc and assemble the kwargs internally. Others such as trak, we are using projector_kwargs as a signature. This introduces inconsistencies in API and creates confusions for users as they explore different interfaces.
Proposals:
Since projector_kwargs is part of the subsystem of influence function, we should unify the API by creating a strongly typed config for it (Pydantic class) For different influence functions, we can define/extend different Pydantic types to ensure compatibility.