Whisper 的 PySocks 错误 - 需要帮助进行故障排除

问题描述 投票:0回答:0

我面临一个问题,我需要将微控制器与 Whisper 一起使用,但由于微控制器运行缓慢,我希望使用 API 而不是本地模型。不幸的是,我目前使用的 SDK 仅支持通过套接字进行通信。你能提出解决这个问题的方法吗?

## Socket version ############################################################
import requests
import json
import os
import base64

#### API key
with open('OPENAI_API_KEY', 'rb') as f:
    OPENAI_API_KEY = json.load(f)['key'][0]

# API URL
url = "https://api.openai.com//v1/audio/translations"

# Proxy
proxy = os.environ.get("HTTPS_PROXY")

# Audio file
with open("sample.mp3", "rb") as f:
    audio = f.read()
    audio_base64 = base64.b64encode(audio).decode("utf-8")

# Request
headers = {
    "Content-Type": "application/json",
    "Authorization": f"Bearer {OPENAI_API_KEY}"
}

data = {
    "model": "whisper-1",
    "audio": audio_base64,
    "type": "transcription",
}

response = requests.post(
    url = url,
    headers=headers,
    json=data,
    proxies={'https': proxy}
)

# Output the result
result = response.json()
print(json.dumps(result, indent=2, ensure_ascii=False))
{
  "error": {
    "message": "1 validation error for Request\nbody -> file\n  field required (type=value_error.missing)",
    "type": "invalid_request_error",
    "param": null,
    "code": null
  }
}

我已经成功地使用 GPT-3.5 测试了 API,但是当我尝试将它与 Whisper 一起使用时,它不起作用。

import requests
import json
import os

# API Key
with open('OPENAI_API_KEY', 'rb') as f:
    OPENAI_API_KEY = json.load(f)['key'][0]

# API URL
url = "https://api.openai.com/v1/chat/completions"

# Proxy
proxy = os.environ.get("HTTPS_PROXY")

# Request
headers = {
    'Content-Type': 'application/json',
    'Authorization': f'Bearer {OPENAI_API_KEY}'
}

data = {
    "model": "gpt-3.5-turbo",
    "messages": [
        {"role": "user", "content": "Say this is a test!"},
    ],
    "temperature": 0.7
}

response = requests.post(
    url=url,
    headers=headers,
    json=data,
    proxies={'https': proxy}
)

# Output the result
result = response.json()
print(json.dumps(result, indent=2, ensure_ascii=False))
~~~
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "This is a test!"
      },
      "finish_reason": "stop",
      "index": 0
    }
  ]
~~~
api sockets microcontroller whisper
© www.soinside.com 2019 - 2024. All rights reserved.