在使用API密钥开发Python脚本时,Azure OpenAI出现错误

import openai# 设置openai.api_key = 'xxxxxxxxxxxxxxxxxxxxxx'openai.api_base = "xxxxxxxxxxxxxxxxxxxxxx"openai.api_version = '2024-08-20'  # 确保此版本正确def test_openai():    try:        response = openai.Image.create(            prompt="一只狗在雨中的图片",            model="dall-e-3",  # 如有需要,可以尝试使用不同的模型            n=1,            size="1024x1024"        )        print(response)    except Exception as e:        print(f"错误: {e}")test_openai()

错误: 资源未找到

我已经创建了Azure OpenAI模型dall-e-3

API密钥和API基础地址在使用模型gpt-35-turbo时都有效


回答:

您遇到这个错误是因为您需要使用部署名称而不是模型名称。

您需要创建一个客户端来连接并生成结果。

下面的代码对我来说是有效的。

我使用Flask应用来运行OpenAI代码,并在index.html文件中查看生成的图片。

app.py:

from flask import Flask,render_templateimport osfrom openai import AzureOpenAIimport jsonapp = Flask(__name__)@app.route('/', methods=['GET'])def fetch_image_url():    try:        client = AzureOpenAI(        api_version="2024-05-01-preview",        azure_endpoint="https://xxxxxxxxxx.openai.azure.com/",        api_key="xxxxxxxxxxxxxxxxxx"        )        result = client.images.generate(            model="dallechatgpt",            prompt="一只狗在雨中的图片",            n=1        )        image_url = json.loads(result.model_dump_json())['data'][0]['url']        return render_template('index.html',image_url=image_url)    except Exception as e:        print(f"错误{e}")        if __name__== "__main__":    app.run()

templates/index.html

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>文档</title></head><body>    {% if image %}    <h2>生成的图片:</h2>    <img src="{{ image }}" alt="生成的图片" style="width: auto; height: 50vh;">    {% endif %}</body></html>

requirements.txt:

flaskopenai

输出:

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注