in google/generativeai/client.py [0:0]
def _setup_discovery_api(self, metadata: dict | Sequence[tuple[str, str]] = ()):
api_key = self._client_options.api_key
if api_key is None:
raise ValueError(
"Invalid operation: Uploading to the File API requires an API key. Please provide a valid API key."
)
request = googleapiclient.http.HttpRequest(
http=httplib2.Http(),
postproc=lambda resp, content: (resp, content),
uri=f"{GENAI_API_DISCOVERY_URL}?version=v1beta&key={api_key}",
headers=dict(metadata),
)
response, content = request.execute()
request.http.close()
discovery_doc = content.decode("utf-8")
self._local.discovery_api = googleapiclient.discovery.build_from_document(
discovery_doc, developerKey=api_key
)