code: def _get_index_and_key(nodes, position):
      """
      Returns the amount of commas and the keyword argument string.
      """
      nodes_before = [c for c in nodes if c.start_pos < position]
      if nodes_before[-1].type == "arglist":
          nodes_before = [
              c
              for c in nodes_before[-1].children
              if c.start_pos < position
          ]
  
      key_str = None
  
      if nodes_before:
          last = nodes_before[-1]
          if (
              last.type == "argument"
              and last.children[1] == "="
              and last.children[1].end_pos <= position
          ):
              # Checked if the argument
              key_str = last.children[0].value
          elif last == "=":
              key_str = nodes_before[-2].value
  
      return nodes_before.count(","), key_str
  
imports: import re
  from collections import namedtuple
  from textwrap import dedent
  from parso.python.parser import Parser
  from parso.python import tree
  from jedi._compatibility import u
  from jedi.evaluate.syntax_tree import eval_atom
  from jedi.evaluate.helpers import evaluate_call_of_leaf
  from jedi.evaluate.compiled import get_string_context_set
  from jedi.cache import call_signature_time_cache
label_desc: Use image node_id 7 for calling a global function with example usage: _get_index_and_key(nodes, position) and returns: nodes_before,  key_str