class_docstr: (Experimental) CompressibleAgent agent. While this agent retains all the default functionalities of the `AssistantAgent`,
      it also provides the added feature of compression when activated through the `compress_config` setting.
  
  `compress_config` is set to False by default, making this agent equivalent to the `AssistantAgent`.
  This agent does not work well in a GroupChat: The compressed messages will not be sent to all the agents in the group.
  The default system message is the same as AssistantAgent.
  `human_input_mode` is default to "NEVER"
  and `code_execution_config` is default to False.
  This agent doesn't execute code or function call by default.
class_docstr_tok: ["(","Experimental",")","CompressibleAgent","agent",".","While","this","agent","retains","all","the","default","functionalities","of","the","`","AssistantAgent","`",",","it","also","provides","the","added","feature","of","compression","when","activated","through","the","`","compress_config","`","setting",".","`","compress_config","`","is","set","to","False","by","default",",","making","this","agent","equivalent","to","the","`","AssistantAgent","`",".","This","agent","does","not","work","well","in","a","GroupChat",":","The","compressed","messages","will","not","be","sent","to","all","the","agents","in","the","group",".","The","default","system","message","is","the","same","as","AssistantAgent",".","`","human_input_mode","`","is","default","to","``","NEVER","''","and","`","code_execution_config","`","is","default","to","False",".","This","agent","does","n't","execute","code","or","function","call","by","default","."]
code: def _print_compress_info(
      self, init_token_count, token_used, token_after_compression
  ):
      to_print = "Token Count (including {} tokens from system msg and function descriptions). Before compression : {} | After: {}".format(
          init_token_count,
          token_used,
          token_after_compression,
      )
      print(colored(to_print, "magenta"), flush=True)
      print("-" * 80, flush=True)
  
file_path: autogen/autogen/agentchat/contrib/compressible_agent.py
imports: from typing import Callable, Dict, Optional, Union, Tuple, List, Any
  from autogen import OpenAIWrapper
  from autogen import Agent, ConversableAgent
  import copy
  import asyncio
  import logging
  import inspect
  from autogen.token_count_utils import count_token, get_max_token_limit, num_tokens_from_functions
label_desc: Use image node_id 7 for calling the CompressibleAgent obj's underlying member method code with example usage: obj._print_compress_info(init_token_count, token_used, token_after_compression) without return types