Переменная среды не работает с GCP-Windows 10 - PullRequest
0 голосов
/ 30 октября 2019

В настоящее время я работаю над использованием текстового API Google Cloud Platform. Я следовал инструкциям и прочитал некоторые возможные ошибки и информацию по устранению неполадок на сайте разработчика. Но я не могу создать переменную env, необходимую для доступа к аутентификационным данным.

Имя переменной - GOOGLE_APPLICATION_CREDENTIALS. Я пробовал следующее:

  1. Настройка переменной с помощью командной строки: set GOOGLE_APPLICATION_CREDENTIALS=[path]
  2. Настройка переменной с помощью оболочки питания anaconda: $env:GOOGLE_APPLICATION_CREDENTIALS=[path]
  3. Включение пути в переменные PATH для собственного параметра переменных среды в Windows 10
  4. Включение переменных среды для того же самого исходного состояния параметра выше.
  5. Настройка переменной внутри Sublime3 с использованием следующего:
def explicit():
    from google.cloud import storage

    # Explicitly use service account credentials by specifying the private key
    # file.
    storage_client = storage.Client.from_service_account_json(
        'path')

    # Make an authenticated API request
    buckets = list(storage_client.list_buckets())
    print(buckets)

Код, который я пытаюсь запустить, следующий:

import io
import os

# Imports the Google Cloud client library
from google.cloud import speech
from google.cloud.speech import enums
from google.cloud.speech import types


# Instantiates a client
client = speech.SpeechClient()

# The name of the audio file to transcribe
file_name = os.path.join(
    os.path.dirname(__file__),
    'resources',
    'audio.raw')

# Loads the audio into memory
with io.open(file_name, 'rb') as audio_file:
    content = audio_file.read()
    audio = types.RecognitionAudio(content=content)

config = types.RecognitionConfig(
    encoding=enums.RecognitionConfig.AudioEncoding.LINEAR16,
    sample_rate_hertz=16000,
    language_code='en-US')

# Detects speech in the audio file
response = client.recognize(config, audio)

for result in response.results:
    print('Transcript: {}'.format(result.alternatives[0].transcript))

У меня естьПрочтите другие ответы по настройке и проверке переменных среды, но решение не помогло.

Я также вижу среду в папке env в приглашении оболочки anaconda. У кого-нибудь есть идеи, почему скрипт не может найти файл?

Сообщение об ошибке:

line 317, in default
    raise exceptions.DefaultCredentialsError(_HELP_MESSAGE)
google.auth.exceptions.DefaultCredentialsError: Could not automatically determine credentials. Please set GOOGLE_APPLICATION_CREDENTIALS or explicitly create credentials and re-run the application.
...