从 Azure 机器学习中的 PromptFlow 调用 CosmosDB 时出错:“请求失败,状态代码 400 - 不支持的连接类型 0”

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

Stack Overflow 社区您好,

我正在开发一个项目,该项目属于 Azure Contoso Chat 存储库,其中涉及使用 PromptFlow(Azure 机器学习的一个组件)来调用 CosmosDB。

我在教程结束时,在 AI studio 中测试流程,遇到了这个错误:

Request failed with status code 400 - NotSupported ConnectionType 0 for connection contoso-cosmos.

这是我用来连接到 CosmosDB 的代码片段:

from typing import Dict
from promptflow import tool
from azure.cosmos import CosmosClient
from promptflow.connections import CustomConnection


@tool
def customer_lookup(customerId: str, conn: CustomConnection) -> str:
    client = CosmosClient(url=conn.configs["endpoint"], credential=conn.secrets["key"])
    db = client.get_database_client(conn.configs["databaseId"])
    container = db.get_container_client(conn.configs["containerId"])
    response = container.read_item(item=customerId, partition_key=customerId)
    response["orders"] = response["orders"][:2]
    return response

从本地环境调用时,此流程按预期工作,但当我在 Azure 机器学习的 PromptFlow 中运行它时,会发生错误。

此外,我已经仔细检查了连接详细信息,它们似乎是正确的。我怀疑 Azure 机器学习中可能存在需要调整的特定配置或设置。

有人遇到过类似的问题或对如何解决这个问题有任何见解吗?任何帮助将不胜感激!

python azure azure-cosmosdb azure-machine-learning-service azure-promptflow
1个回答
0
投票

我遇到了这个问题。假设您已经在 AI Studio 上手动创建了连接,下一步的必要步骤是除了存储库中已经提到的 4 个密钥对之外,还添加这 2 个密钥对。 key=promptflow.connections,value=自定义

键= azureml.flow.module,值=提示流.连接
© www.soinside.com 2019 - 2024. All rights reserved.