def __init__(self, env, learner_config, session_config):
        """
        Default sender configs are in BASE_SESSION_CONFIG['sender']
        They contain communication level information
        
        Algorithm specific experience generation parameters should live in learner_config
        """
        super().__init__(env)
        # TODO: initialize config in a unified place 
        self.session_config = Config(session_config).extend(BASE_SESSION_CONFIG)
        self.learner_config = Config(learner_config).extend(BASE_LEARNER_CONFIG)
        host = os.environ['SYMPH_COLLECTOR_FRONTEND_HOST']
        port = os.environ['SYMPH_COLLECTOR_FRONTEND_PORT']
        self.sender = ExpSender(
            host=host,
            port=port,
            flush_iteration=self.session_config.sender.flush_iteration,
        )

        Default sender configs are in BASE_SESSION_CONFIG['sender']
        They contain communication level information
        
        Algorithm specific experience generation parameters should live in learner_config
        
surreal/env/exp_sender_wrapper.py