在 Azure SDK for Python 中初始化 CustomVisionTrainingClient 时出现类型错误:参数“端点”有多个值

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

我正在使用适用于 Python 的 Azure 自定义视觉服务 SDK,并在尝试初始化

CustomVisionTrainingClient
时遇到错误。尽管遵循了文档,我仍然收到 TypeError ,表明我为端点参数提供了多个值。

这是导致错误的代码片段,其中键和端点被删除。

from azure.cognitiveservices.vision.customvision.training import CustomVisionTrainingClient
from msrest.authentication import ApiKeyCredentials

training_key = 'supplied'
endpoint = 'supplied'

credentials = ApiKeyCredentials(in_headers={"Training-key": training_key})

trainer = CustomVisionTrainingClient(credentials, endpoint=endpoint)

错误信息:

TypeError:CustomVisionTrainingClient.__init__() 获得参数“端点”的多个值

端点仅作为关键字参数指定一次。我正在使用 azure-cognitiveservices-vision-customvision 包的 3.1.0 版本。

当构造函数认为端点被多次传递时,可能会导致此错误的原因是什么? 此版本的 SDK 是否存在我可能忽略的常见错误或已知问题? 任何帮助或指导将不胜感激,因为我已经检查了常用来源,没有发现任何提及会影响此问题的更改。

查看了Azure docs,似乎没有任何明显的问题: https://learn.microsoft.com/en-us/azure/ai-services/custom-vision-service/quickstarts/object-detection?tabs=windows%2Cvisual-studio&pivots=programming-language-python

azure microsoft-custom-vision
1个回答
0
投票

在适用于 Python 的 Azure SDK 中初始化 CustomVisionTrainingClient:参数“Endpoint”的多个值

错误消息表明,

endpoint
参数传递给
CustomVisionTrainingClient
构造函数的方式存在冲突。 此问题可能与您正在使用的 SDK 的特定版本有关,并尝试修改初始化代码以将
endpoint
作为位置参数而不是关键字参数传递。

trainer = CustomVisionTrainingClient(credentials, endpoint)

我更新的Python脚本:

from azure.cognitiveservices.vision.customvision.training import CustomVisionTrainingClient
from msrest.authentication import ApiKeyCredentials

# Replace 'your_training_key' and 'your_endpoint_url' with your actual training key and endpoint
training_key = 'keyvalue'
endpoint = 'https://XXXXX.cognitiveservices.azure.com/'

# Initialize credentials
credentials = ApiKeyCredentials(in_headers={"Training-key": training_key})

# Try to create the CustomVisionTrainingClient
try:
    # Using the endpoint as a positional argument to avoid potential keyword argument conflict
    trainer = CustomVisionTrainingClient(credentials, endpoint)
    print("Client initialized successfully.")
except TypeError as e:
    print(f"TypeError encountered: {e}")
except Exception as e:
    print(f"An error occurred: {e}")

初始化成功:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.