Невозможно правильно сгенерировать изображения логотипа dalle-3 с помощью Python

Если я даю подсказку в Azure open ai studio > игровая площадка > dall-e-3, используя версию API 2024-05-01-preview". Это создает идеальное изображение, но такое же приглашение, если я использую его в своем Python для создания генерируется совершенно другой тип логотипа (он не на читаемом языке. Изображение было создано, но не как логотип) в Python я использую версию API 2023-06-01-preview, но если я использую 2024-05-01-preview" это показывает ошибка: ресурс не найден, как это установить

Подсказка: создайте круглый логотип на имени: python — новичок в Python, а также имя Раджа на границе круга.

я изменил openai==0.28 на последнюю версию openai, но все еще не могу ее получить опенай = 1.42.0 тогда я получил ошибку Ошибка создания изображения:

Вы пытались получить доступ к openai.Image, но это больше не поддерживается в openai>=1.0.0 — информацию об API см. в README по адресу https://github.com/openai/openai-python.

Вы можете запустить openai migrate, чтобы автоматически обновить свою кодовую базу для использования интерфейса 1.0.0.

Альтернативно вы можете прикрепить свою установку к старой версии, например. pip install openai==0.28

Подробное руководство по миграции доступно здесь: https://github.com/openai/openai-python/discussions/742

Ошибка кода jayashankarGS:

Traceback (последний вызов — последний): Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpx_transports\default.py", строка 69 в файле map_httpcore_Exceptions файл доходности "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpx_transports\default.py", строка 233 в handle_request соотв = self._pool.handle_request(req) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11 _qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpcore_sync\connection_pool.py", строка 216 в handle_request поднять exc из файла None "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpcore_sync\connection_pool.py", строка 196 в handle_request ответ = соединение.handle_request( ^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\ local-packages\Python311\site-packages\httpcore_sync\connection.py", строка 99 в handle_request поднять exc файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpcore_sync\connection.py", строка 76 в handle_request поток = self._connect (запрос) ^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\ Python311\site-packages\httpcore_sync\connection.py", строка 122, в _connect поток = self._network_backend.connect_tcp(**kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\ Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpcore_backends\sync.py", строка 205 в Connect_tcp с map_Exceptions(exc_map): Файл "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.11_3.11.2544.0_x64__qbz5n2kfra8p0\Lib\contextlib.py", строка 158, выход self.gen.throw(тип, значение, обратная трассировка) Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpcore_Exceptions.py" , строка 14 в карте_исключения поднять to_exc(exc) из exc httpcore.ConnectError: [Errno 11002] Ошибка getaddrinfo

Вышеупомянутое исключение было непосредственной причиной следующего исключения:

Traceback (последний вызов — последний): Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\openai_base_client.py", строка 973, в _request ответ = self._client.send( ^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site- пакеты\httpx_client.py", строка 914, в отправке ответ = self._send_handling_auth( ^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local -packages\Python311\site-packages\httpx_client.py", строка 942, в _send_handling_auth ответ = self._send_handling_redirects( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11 _qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpx_client.py", строка 979 в _send_handling_redirects ответ = self._send_single_request(запрос) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation .Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpx_client.py", строка 1015 в _send_single_request ответ = транспорт.handle_request(запрос) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation. Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpx_transports\default.py", строка 232 в handle_request с помощью map_httpcore_Exceptions(): Файл "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.11_3.11.2544.0_x64__qbz5n2kfra8p0\Lib\contextlib.py", строка 158, выход self.gen.throw(тип, значение, обратная трассировка) Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\httpx_transports\default. пи", строка 86 в map_httpcore_Exceptions поднять mapped_exc (сообщение) из exc httpx.ConnectError: [Errno 11002] getaddrinfo не удалось

Вышеупомянутое исключение было непосредственной причиной следующего исключения:

Traceback (последний вызов — последний): Файл "c:\Users\Comp\Desktop\testing.py", строка 12, в результат = client.images.generate( ^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages \Python311\site-packages\openai\resources\images.py", строка 253, в генерации вернуть self._post( ^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\openai_base_client.py", строка 1260, в сообщении return cast(ResponseT, self.request(cast_to, opts,stream=stream,stream_cls=stream_cls)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^
Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\openai_base_client.py", линия 937, по запросу вернуть self._request( ^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\openai_base_client. пи", строка 997, в _request вернуть self._retry_request( ^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\ сайт-пакеты\openai_base_client.py", строка 1075, в _retry_request вернуть self._request( ^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\openai_base_client. пи", строка 997, в _request вернуть self._retry_request( ^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\ сайт-пакеты\openai_base_client.py", строка 1075, в _retry_request вернуть self._request( ^^^^^^^^^^^^^^ Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\openai_base_client. пи", строка 1007, в _request поднять APIConnectionError (запрос = запрос) из ошибки openai.APIConnectionError: Ошибка подключения. PS C:\Пользователи\Комп>

Код Прудхви:

import openai
import os

# Set your Azure OpenAI credentials and endpoint
openai.api_key = os.getenv("AZURE_OPENAI_API_KEY", "xxxxxxxxxx")
openai.api_base = "xxxxxxxxxxxxxxx"
openai.api_type = "azure"             
openai.api_version = "2023-06-01-preview"  # Adjust this based on your Azure API version

def generate_image(prompt):
    try:
        # Make a request to Azure OpenAI to generate an image with DALL-E 3
        response = openai.Image.create(
            prompt=prompt,
            n=1,  # Number of images
            size = "1024x1024"  # Adjust size if needed
        )

        # Extract the URL of the generated image
        image_url = response['data'][0]['url']
        print(f"Image URL: {image_url}")

        return image_url

    except Exception as e:
        print(f"Error generating image: {e}")
        return None

if __name__ == "__main__":
    # Example prompt to generate an image
    prompt = "  create a circular logo on the name: python - python beginner   "
    image_url = generate_image(prompt)

    if image_url:
        print(f"Generated image available at: {image_url}")
Почему в 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
0
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы пытались получить доступ к openai.Image, но это больше не поддерживается в openai>=1.0.0.

Кроме того, согласно этой документации вы используете Azureopenai класс, предоставляющий имя модели.

Убедитесь, что вы уже развернули модель dall-e-3. Если вы развертываете модель заново, вам придется подождать 4–7 минут.

Используйте приведенный ниже код.

import os
import httpx
from openai import AzureOpenAI
from PIL import Image

client = AzureOpenAI(
    api_version = "2024-05-01-preview",  
    api_key = "131xxxxxxxxxx",  
    azure_endpoint = "https://opexx.openai.azure.com/"
)
            
result = client.images.generate(
    model = "dall-e-3",
    prompt = "create a circular logo on the name: python - python beginner and also Raj name on the circle border",
    n=1
 )
            
image_dir = os.path.join(os.curdir, 'images')
            

if not os.path.isdir(image_dir):
    os.mkdir(image_dir)
            
image_path = os.path.join(image_dir, 'generated_image.png')
            
image_url = result.data[0].url  
generated_image = httpx.get(image_url).content  
with open(image_path, "wb") as image_file:
    image_file.write(generated_image)
    
image  =  Image.open(image_path)
image

Выход:

Этот код можно использовать как для dall-e-2, так и для dall-e-3.

удалил openai и переустановил openai= 1.42.0, получил следующую ошибку: Файл "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundati‌​on.Python.3.11_qbz5n‌​2kfra8p0\LocalCache\‌​local-packages\ Pytho‌​n311\site-packages\h‌​ttpx_transports\defa‌​ult.py", строка 69, в map_httpcore_Exceptions выдаёт File "C:\Users\Comp\AppData\Local\Packages\PythonSoftwareFoundati‌​on.Python.3.11_qbz5n‌​2kfra8p0 \LocalCache\‌​local-packages\Pytho‌​n311\site-packages\h‌​ttpx_transports\defa‌​ult.py", строка 233, в handle_request resp = self._pool.handle_request(req) ^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^

Bandaru Prudhvi 28.08.2024 13:41

Вы используете приведенный выше код? Пожалуйста, добавьте полную информацию об ошибке.

JayashankarGS 28.08.2024 13:53

Для моего кода, который я запускал с этой версией openai, возникла ошибка, о которой я упоминал выше в своем коде в основном вопросе.

Bandaru Prudhvi 28.08.2024 13:53

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

Bandaru Prudhvi 28.08.2024 13:55

Как я уже упоминал, версия openai выше 1 не поддерживается для использования openai.Image. ссылка на мой код

JayashankarGS 28.08.2024 13:55

Хорошо. Укажите точную ошибку, а не всю.

JayashankarGS 28.08.2024 13:55

Я попробовал ваш код, я помещу ошибку в основной вопрос, так как ошибка кода jayashankarGs, пожалуйста, проверьте

Bandaru Prudhvi 28.08.2024 13:56

Я добавил в вопрос ошибку кода jayashankarGS, пожалуйста, проверьте

Bandaru Prudhvi 28.08.2024 14:04

Вы развернули модель в своем рабочем пространстве openai?

JayashankarGS 28.08.2024 14:08

да, я развернул dall-e-3 в студии Azure Open AI, а также протестировал его на игровой площадке

Bandaru Prudhvi 28.08.2024 14:12

Вы настроили какую-либо виртуальную сеть или брандмауэр?

JayashankarGS 28.08.2024 14:22

Нет, я ничего не настраивал

Bandaru Prudhvi 28.08.2024 14:24

Попробуйте это созданное_изображение = запросы.get(image_url).content вместо httpx в моем коде.

JayashankarGS 28.08.2024 14:41

Также обратитесь к этому stackoverflow.com/questions/35835767/….

JayashankarGS 28.08.2024 14:45

изменено, получил длинную ошибку, короче говоря, ошибка была Ошибка: вы столкнулись с проблемой соединения, в частности с openai.APIConnectionError. Эта ошибка возникает, когда ваш скрипт не может подключиться к API OpenAI, и, по-видимому, она связана с проблемой разрешения DNS ([Errno 11002] getaddrinfo не удалось).

Bandaru Prudhvi 28.08.2024 14:46

Проверьте шаги, упомянутые здесь. help.openai.com/en/articles/6897191-apiconnectionerror

JayashankarGS 28.08.2024 14:49

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

Bandaru Prudhvi 28.08.2024 15:01

2024-05-01-предварительная версия API, вызывающая проблему?

JayashankarGS 29.08.2024 06:59

да "2023-06-01-preview работает только эта версия API, но изображения не генерируются должным образом в соответствии с подсказками

Bandaru Prudhvi 29.08.2024 07:57

ваш код сработал. Спасибо

Bandaru Prudhvi 29.08.2024 11:44

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