code: def server_info() -> ServerInfo:
      """Returns the information about the Argilla server that is currently active.
  
      Note that the connections to Argilla are established via `rg.init`, `argilla login` or
      setting the `ARGILLA_API_URL` and `ARGILLA_API_KEY` env variables.
  
      Returns:
          A `dataclass` with the following fields: `url`, `version` and `elasticsearch_version`.
      """
      # Filtering the warnings to avoid some redundant and unrelated warnings
      warnings.filterwarnings("ignore", category=UserWarning)
  
      try:
          client = active_client().client
          info = Status(client).get_status()
      except Exception as e:
          raise RuntimeError(
              "You must be logged in to Argilla to use this function."
              " Please call `rg.init`, run `argilla login` or set the `ARGILLA_API_URL` and `ARGILLA_API_KEY` env variables."
              " If you already did it, please check that the Argilla server is up and running."
          ) from e
  
      return ServerInfo(
          url=client.base_url,
          version=info.version,
          elasticsearch_version=(
              f"{info.elasticsearch.version.number} ({info.elasticsearch.version.distribution})"
              if info.elasticsearch.version.distribution
              else info.elasticsearch.version.number
          ),
      )
  
file_path: argilla/src/argilla/client/utils.py
imports: import functools
  import warnings
  from dataclasses import dataclass
  from typing import Callable, List, TypeVar
  from argilla.client.apis.status import Status
  from argilla.client.sdk.users import api
  from argilla.client.sdk.users.models import UserRole
  from argilla.client.singleton import active_client
label_desc: Use image node_id 2 for calling a global function with example usage: server_info() and returns: ServerInfo