Gemini is not compatible with the OpenAI node SDK

I filed an issue here: https://github.com/MacPaw/OpenAI/issues/283

The gist is that the Gemini API omits certain properties like:

  "service_tier": "default",
  "system_fingerprint": "fp_b376dfbbd5",
   "id": "123"

Same with function calling. The required property can be nested like so:

    {
      "type": "function",
      "function": {
        "description": "If the user asks a question that requires real time data or information, use this tool to search the web for the answer.",
        "parameters": {
          "type": "object",
          "properties": {
            "query": {
              "type": "string",
              "description": "The URL of the web page to scrape. Must be a valid HTTP or HTTPS URL.",
              "required": [
                "query"
              ]
            }
          }
        },
        "name": "search_web"
      }

But the Gemini api returns: List was expected to be empty but is not empty “query”.

This breaks decoders on other platforms.