Открытый ИИ Azure при разработке скрипта Python с использованием ошибки получения ключа API

import openai

# Setup
openai.api_key = 'xxxxxxxxxxxxxxxxxxxxxx'
openai.api_base = "xxxxxxxxxxxxxxxxxxxxxx"

openai.api_version = '2024-08-20'  # Ensure this is correct

def test_openai():
    try:
        response = openai.Image.create(
            prompt = "A dog in rain image",
            model = "dall-e-3",  # Try with a different model ifneeded
            n=1,
            size = "1024x1024"
        )
        print(response)
    except Exception as e:
        print(f"Error: {e}")

test_openai()

Ошибка: Ресурс не найден.

Я создал модель Azure Open AI Dall-e-3.

ключ API и база API работали с моделью gpt-35-turbo

Пожалуйста, распечатайте полную ошибку. Если это openai.error.InvalidRequestError: Resource not found, это означает, что конечная точка API, которую вы запрашиваете, не существует или недоступна. Дважды проверьте свои api_base и api_version (большинство api_version оканчиваются на -preview)

user3503711 21.08.2024 16:07

В дополнение к предыдущему комментарию: model — это имя, которое вы даете, а не имя модели Azure по умолчанию.

user3503711 21.08.2024 16:13

Я получаю сообщение об ошибке ниже, и я использую openai = 0.28 и имя развертывания = dall-e-3, openai.api_version = '2024-08-20'. Я считаю, что сделал ошибку api_version, где можно проверить документацию, которую я искал, но не смог узнайте openai.error.InvalidRequestError: ресурс не найден

Bandaru Prudhvi 22.08.2024 04:39
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
3
72
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Поскольку название модели зависит от развертывания, обратитесь к последней документации: документация Azure

но в студии azure open ai это упоминалось таким образом. Название модели: dall-e-3, но все равно пробовал с dalle3. Ошибка: ресурс не найден.

Bandaru Prudhvi 21.08.2024 14:24

Не могли бы вы проверить последнюю официальную документацию? Доступность модели меняется в зависимости от вашей облачной зоны и региона.

Neo 21.08.2024 16:01

Я использую зону Eastus в документации, для этой зоны она доступна в документации. Я не могу найти версию API openai.api_version = '2024-08-20' # Убедитесь, что это правильно, это неправильно, я не могу найти в документации

Bandaru Prudhvi 22.08.2024 07:46
Ответ принят как подходящий

Ошибка, которую вы получаете, потому что вам нужно использовать имя развертывания вместо имени модели.

Вам необходимо создать клиент для подключения для получения результата.

Ниже код работал у меня.

Я использую приложение Flask, чтобы использовать код openai и просматривать сгенерированное изображение в файле index.html.

app.py:

from flask import Flask,render_template
import os
from openai import AzureOpenAI
import json

app = 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 = "A dog in rain image",
            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"error{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>Document</title>
</head>
<body>
    {% if image %}
    <h2>Generated Image:</h2>
    <img src = "{{ image }}" alt = "Generated Image" style = "width: auto; height: 50vh;">
    {% endif %}
</body>
</html>

requirements.txt:

flask
openai

OUTPUT:

изменен azure_endpoint, api_key. Я получил ошибку ниже C:/Users/Comp/AppData/Local/Microsoft/WindowsApps/python3.11‌​.exe "d:/API CODE /image1.py" Traceback (последний последний вызов): Файл " d:\API CODE \image1.py", строка 3, в <module> из openai import AzureOpenAI ImportError: невозможно импортировать имя "AzureOpenAI" из "openai" (C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundati‌​ on.Python.3.11_qbz5n‌​2kfra8p0\LocalCache\‌​local-packages\Pytho‌​n311\site-packages\o‌​penai_init_.py) тоже попробовал это, но все равно pip install azure-ai-openai, azure-cognitiveservices-openai

Bandaru Prudhvi 22.08.2024 08:28

@BandaruPrudhvi добавил openai в файл require.txt, добавил данные моего файла require.txt

Vivek Vaibhav Shandilya 22.08.2024 08:33

или воспользуйтесь pip install openai

Vivek Vaibhav Shandilya 22.08.2024 08:36

Это сработало, спасибо

Bandaru Prudhvi 22.08.2024 08:54

@BandaruPrudhvi Рад, что помогло.

Vivek Vaibhav Shandilya 22.08.2024 08:55

Другие вопросы по теме