OpenAI API:如何处理 Python 中的错误?

ben*_*ise 2 python openai-api gpt-3 chatgpt-api gpt-4

AuthenticationError我尝试使用下面的代码,但 OpenAI API库中没有该方法。我怎样才能有效地处理这样的错误。

import openai

# Set up your OpenAI credentials
openai.api_key = 'YOUR_API_KEY'

try:
    # Perform OpenAI API request
    response = openai.some_function()  # Replace with the appropriate OpenAI API function

    # Process the response
    # ...
except openai.AuthenticationError:
    # Handle the AuthenticationError
    print("Authentication error: Invalid API key or insufficient permissions.")
    # Perform any necessary actions, such as displaying an error message or exiting the program

Run Code Online (Sandbox Code Playgroud)

Rok*_*nko 5

使用 OpenAI Python SDK 处理错误v1.0.0或更高版本进行错误处理

\n

\xe2\x80\xa2 如果你不这样做单独处理错误类型:

\n
import os\nfrom openai import OpenAI, OpenAIError\nclient = OpenAI()\nOpenAI.api_key = os.getenv(\'OPENAI_API_KEY\')\n\ntry:\n  # Make your OpenAI API request here\n  response = client.completions.create(\n    model="gpt-3.5-turbo-instruct",\n    prompt="Say this is a test"\n  )\n  print(response)\nexcept OpenAIError as e:\n  # Handle all OpenAI API errors\n  print(f"Error: {e}")\n
Run Code Online (Sandbox Code Playgroud)\n

\xe2\x80\xa2 如果你想单独处理错误类型:

\n

注意:因为有很多用于错误处理的类,所以单独导入它们可能不太优雅。相反,import openai将自动导入 use 和所有用于错误处理的类。但现在的代码有点不同。

\n
import os\nimport openai # Import openai\nfrom openai import OpenAI # But don\'t import OpenAIError\nclient = OpenAI()\nOpenAI.api_key = os.getenv(\'OPENAI_API_KEY\')\n\ntry:\n  # Make your OpenAI API request here\n  response = client.completions.create(\n    model="gpt-3.5-turbo-instruct",\n    prompt="Say this is a test"\n  )\n  print(response)\nexcept openai.BadRequestError as e: # Don\'t forget to add openai\n  # Handle error 400\n  print(f"Error 400: {e}")\nexcept openai.AuthenticationError as e: # Don\'t forget to add openai\n  # Handle error 401\n  print(f"Error 401: {e}")\nexcept openai.PermissionDeniedError as e: # Don\'t forget to add openai\n  # Handle error 403\n  print(f"Error 403: {e}")\nexcept openai.NotFoundError as e: # Don\'t forget to add openai\n  # Handle error 404\n  print(f"Error 404: {e}")\nexcept openai.UnprocessableEntityError as e: # Don\'t forget to add openai\n  # Handle error 422\n  print(f"Error 422: {e}")\nexcept openai.RateLimitError as e: # Don\'t forget to add openai\n  # Handle error 429\n  print(f"Error 429: {e}")\nexcept openai.InternalServerError as e: # Don\'t forget to add openai\n  # Handle error >=500\n  print(f"Error >=500: {e}")\nexcept openai.APIConnectionError as e: # Don\'t forget to add openai\n  # Handle API connection error\n  print(f"API connection error: {e}")\n
Run Code Online (Sandbox Code Playgroud)\n

查看 OpenAI 官方GitHub Python 存储库

\n
\n

使用 OpenAI Python SDK 处理错误v0.28.0

\n

您的代码不正确。

\n

改变这个...

\n
except openai.AuthenticationError\n
Run Code Online (Sandbox Code Playgroud)\n

……对此。

\n
except openai.error.AuthenticationError\n
Run Code Online (Sandbox Code Playgroud)\n