Как прикрутить нейросеть к сайту по быстрому
В данном материале предлагается, приложив небольшие усилия, соединить python 3.7+flask+tensorflow 2.0+keras+небольшие вкрапления js и вывести на web-страницу определенный интерактив. Пользователь, рисуя на холсте, будет отправлять на распознавание цифры, а ранее обученная модель, использующая архитектуру CNN, будет распознавать полученный рисунок и выводить результат. Модель обучена на известном наборе рукописных цифр MNIST, поэтому и распознавать будет только цифры от 0 до 9 включительно. В качестве системы, на которой все это будет крутится, используется windows 7.
Небольшое вступление
Чем печальны книги по машинному обучению, так, пожалуй, тем, что код устаревает почти с выходом самой книги. И хорошо, если автор издания поддерживает свое дитя, сопровождая и обновляя код, но, зачастую все ограничивается тем, что пишут — вот вам requirements.txt, ставьте устаревшие пакеты, и все заработает.
Так вышло и в этот раз. Читая «Hands-On Python Deep Learning for the Web» авторства Anubhav Singh, Sayak Paul сначала все что хорошо. Однако, после первой главы праздник закончился. Самое неприятное было то, что заявленные требования в requirements в целом соблюдались.
Масло в огонь подлили и сами разработчики пакетов tensorflow и keras. Один пакет работает только с определенным другим и, либо даунгрейд одного из них либо бубен шамана.
Но и это еще не все. Оказывается, что некоторые пакеты еще и зависимы от архитектуры используемого железа!

Так, за неимением алтернативы железа, устанавливался tensorflow 2.0 на платформу с Celeron j1900 и, как оказалось, там нет инструкции AVX2:
И вариант через pip install tensorflow не работал.
Но не все так грустно при наличии желания и интернета!
Вариант с tensorflow 2.0 удалось реализовать через wheel — github.com/fo40225/tensorflow-windows-wheel/tree/master/2.0.0/py37/CPU/sse2 и установку x86: vc_redist.x86.exe, x64: vc_redist.x64.exe (https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads).
Keras был установлен с минимальной версией, с которой он «стал совместим» с tensorflow — Keras==2.3.0.
pip install tensorflow-2.0.0-cp37-cp37m-win_amd64.whl
pip install keras==2.3.0
Основное приложение.
Рассмотрим код основной программы.
flask_app.py
#code work with scipy==1.6.1, tensorflow @ file:///D:/python64/tensorflow-2.0.0-cp37-cp37m-win_amd64.whl, #Keras==2.3.0 from flask import Flask, render_template, request import imageio #https://imageio.readthedocs.io/en/stable/examples.html #from scipy.misc import imread, imresize #from matplotlib.pyplot import imread import numpy as np import tensorflow as tf from tensorflow.keras.models import model_from_json from skimage import transform,io json_file = open('model.json','r') model_json = json_file.read() json_file.close() model = model_from_json(model_json) model.load_weights("weights.h5") model.compile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy']) #graph = tf.get_default_graph() graph = tf.compat.v1.get_default_graph() app = Flask(__name__) @app.route('/') def index(): return render_template("index.html") import re import base64 def convertImage(imgData1): imgstr = re.search(r'base64,(.*)', str(imgData1)).group(1) with open('output.png', 'wb') as output: output.write(base64.b64decode(imgstr)) @app.route('/predict/', methods=['GET', 'POST']) def predict(): global model, graph imgData = request.get_data() convertImage(imgData) #print(imgData) #x = imread('output.png', mode='L') #x.shape #(280, 280) x = imageio.imread('output.png',pilmode='L') #x = imresize(x, (28, 28)) #x = x.resize(x, (28, 28)) x = transform.resize(x, (28,28), mode='symmetric', preserve_range=True) #(28, 28) #type(x) # x = x.reshape(1, 28, 28, 1) #(1, 28, 28, 1) x = tf.cast(x, tf.float32) # perform the prediction out = model.predict(x) #print(np.argmax(out, axis=1)) # convert the response to a string response = np.argmax(out, axis=1) return str(response[0]) if __name__ == "__main__": # run the app locally on the given port app.run(host='0.0.0.0', port=80) # optional if we want to run in debugging mode app.run(debug=True)
from flask import Flask, render_template, request import imageio #https://imageio.readthedocs.io/en/stable/examples.html #from scipy.misc import imread, imresize #from matplotlib.pyplot import imread import numpy as np import tensorflow as tf from tensorflow.keras.models import model_from_json from skimage import transform,io
Как выяснилось imread, imresize устарели еще со времен scipy==1.0. Непонятно, как у автора все работало, учитывая, что книга относительно нова (2019). С современной scipy==1.6.1 книжный вариант кода не работал.
Загружаем с диска, компилируем модель нейросети:
json_file = open('model.json','r') model_json = json_file.read() json_file.close() model = model_from_json(model_json) model.load_weights("weights.h5") model.compile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy']) #graph = tf.get_default_graph() graph = tf.compat.v1.get_default_graph()
Здесь произведена замена на tf.compat.v1.get_default_graph() в виду несовместимости.
Далее часть, относящаяся к серверу на flask. «Прорисовка» шаблона страницы:
@app.route('/') def index(): return render_template("index.html")
Часть, преобразующая картинку в числовой массив:
import re import base64 def convertImage(imgData1): imgstr = re.search(r'base64,(.*)', str(imgData1)).group(1) with open('output.png', 'wb') as output: output.write(base64.b64decode(imgstr))
Основная функция предсказания:
def predict(): global model, graph imgData = request.get_data() convertImage(imgData) #print(imgData) #x = imread('output.png', mode='L') #x.shape #(280, 280) x = imageio.imread('output.png',pilmode='L') #x = imresize(x, (28, 28)) #x = x.resize(x, (28, 28)) x = transform.resize(x, (28,28), mode='symmetric', preserve_range=True) #(28, 28) #type(x) # x = x.reshape(1, 28, 28, 1) #(1, 28, 28, 1) x = tf.cast(x, tf.float32) # perform the prediction out = model.predict(x) #print(np.argmax(out, axis=1)) # convert the response to a string response = np.argmax(out, axis=1) return str(response[0])
Закоментированы строки, которые были заменены на рабочие, а также оставлены выводы отдельных строк для наглядности.
Как все работает.
После запуска командой python flask_app.py запускается локальный flask-сервер, который выводит index.html с вкраплением js.
Пользователь рисует на холсте цифру, нажимает «predict». Картинка «улетает» на сервер, где сохраняется и преобразуется в цифровой массив. Далее в бой вступает CNN, распознающая цифру и возвращающая ответ в виде цифры.
Сеть не всегда дает верный ответ, т.к. обучалась всего на 10 эпохах. Это можно наблюдать, если нарисовать «спорную» цифру, которая может трактоваться по-разному.
*Можно покрутить слайдер, увеличивая или уменьшая толщину начертания цифры для целей распознавания.
Второй вариант программы — через API,curl
Поользователь загружает на сервер свое изображение с цифрой для распознавания и нажимает «отправить»:
Заменим index.js на следующий
index.js:
$("form").submit(function(evt) < evt.preventDefault(); var formData = new FormData($(this)[0]); $.ajax(< url: '/predict/', type: 'POST', data: formData, async: false, cache: false, contentType: false, enctype: 'multipart/form-data', processData: false, success: function (response) < $('#result').empty().append(response); >>); return false; >);
Шаблон страницы также изменится:
index.html
MNIST CNN MNIST Handwritten Digits Prediction
Prediction:
Немного изменится и основная программа:
flask_app2.py
#code work with scipy==1.6.1, tensorflow @ file:///D:/python64/tensorflow-2.0.0-cp37-cp37m-win_amd64.whl, #Keras==2.3.0 from flask import Flask, render_template, request import imageio #https://imageio.readthedocs.io/en/stable/examples.html #from scipy.misc import imread, imresize #from matplotlib.pyplot import imread import numpy as np import tensorflow as tf from tensorflow.keras.models import model_from_json from skimage import transform,io json_file = open('model.json','r') model_json = json_file.read() json_file.close() model = model_from_json(model_json) model.load_weights("weights.h5") model.compile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy']) #graph = tf.get_default_graph() graph = tf.compat.v1.get_default_graph() app = Flask(__name__) @app.route('/') def index(): return render_template("index.html") import re import base64 def convertImage(imgData1): imgstr = re.search(r'base64,(.*)', str(imgData1)).group(1) with open('output.png', 'wb') as output: output.write(base64.b64decode(imgstr)) @app.route('/predict/', methods=['POST']) def predict(): global model, graph imgData = request.get_data() try: stringToImage(imgData) except: f = request.files['img'] f.save('image.png') #x = imread('output.png', mode='L') #x.shape #(280, 280) x = imageio.imread('image.png',pilmode='L') #x = imresize(x, (28, 28)) #x = x.resize(x, (28, 28)) x = transform.resize(x, (28,28), mode='symmetric', preserve_range=True) #(28, 28) #type(x) # x = x.reshape(1, 28, 28, 1) #(1, 28, 28, 1) x = tf.cast(x, tf.float32) # perform the prediction out = model.predict(x) #print(np.argmax(out, axis=1)) # convert the response to a string response = np.argmax(out, axis=1) return str(response[0]) if __name__ == "__main__": # run the app locally on the given port app.run(host='0.0.0.0', port=80) # optional if we want to run in debugging mode app.run(debug=True)
Запускается все похоже — python flask_app2.py
Вариант с curl (для windows)
В командной строке windows отправляем команду:
curl -X POST -F img=@1.png http://localhost/predict/
где 1.png — картинка с цифрой (или она же с путем к ней).
В ответ прилетит распознанная цифра.
Файлы для скачивания — скачать.
Интеграция ChatGPT на ваш сайт: простые инструкции для добавления бота
ChatGPT – это передовая платформа искусственного интеллекта, основанная на нейросетях, которая позволяет создавать мощные и умные чаты для ваших пользователей. В этой статье мы предоставим вам подробные инструкции по интеграции нейросети на ваш сайт, чтобы вы могли улучшить взаимодействие с вашими посетителями, предоставить им более персонализированный опыт. Все кратко, по делу.
Подготовка к интеграции
- Создание аккаунта на OpenAI
Первым шагом в интеграции ChatGPT на ваш сайт является создание аккаунта на OpenAI. Посетите их платформу, следуйте инструкциям для создания аккаунта. Как только вы создадите аккаунт, вам будет предоставлен API-ключ, который понадобится нам для подключения к платформе нейросети
- Получение API-ключа
API-ключ — это секретный код, который позволяет вашему сервису взаимодействовать с ChatGPT API. Вам потребуется API-ключ для настройки подключения ИИ на вашем сайте. Чтобы получить API-ключ, войдите в свою учетную запись на OpenAI, нажмите на аватарку и “Create secret key”.
- Ознакомление с документацией и руководством по API
Прежде чем перейти к интеграции ChatGPT на ваш сайт, рекомендуется ознакомиться с документацией, руководством по API, предоставленными OpenAI. Это позволит вам лучше понять функциональность, и возможности платформы, а также настроить ИИ согласно вашим потребностям.
Интеграция ChatGPT на ваш сайт
- Подключение библиотеки или скрипта
Первым шагом в интеграции на ваш сайт является подключение необходимых библиотек или скриптов. OpenAI предоставляет различные клиентские библиотеки, SDK для разных языков программирования. Выберите подходящую библиотеку, следуйте инструкциям по ее установке и подключению к вашему проекту.
- Инициализация и настройка бота
После успешного подключения библиотеки вам потребуется инициализировать, а потом настроить нейросеть. Используйте API-ключ, полученный вами ранее, для создания экземпляра нейросети и установки параметров, таких как язык, максимальное количество токенов и т.д. Убедитесь, что вы ознакомились с документацией и руководством OpenAI, чтобы правильно настроить GPT.
- Создание интерфейса для чата
Следующим шагом является создание интерфейса для чата на вашем сервисе. Это может быть форма ввода сообщений и область для вывода ответов. Дизайн и стиль интерфейса зависят от ваших предпочтений и требований проекта.
- Управление взаимодействием
- Отправка сообщений от пользователя
Реализуйте логику, которая будет отправлять сообщения, введенные пользователем, на сервер. Используйте функцию или метод, предоставленный выбранной вами библиотекой, чтобы отправить запрос с сообщением серверу.
- Обработка ответов
Получите ответ от сервера ИИ и обработайте его в соответствии с вашими потребностями. Ответ может содержать текст, который нужно отобразить пользователю, или дополнительные данные, которые могут быть использованы для дальнейшей обработки.
- Управление состоянием чата и сохранение истории
Реализуйте механизм для управления состоянием чата и сохранения истории сообщений. Вы можете использовать переменные или структуры данных для отслеживания предыдущих сообщений, текущего состояния диалога. Это поможет улучшить взаимодействие с ИИ, предоставить более непрерывный опыт пользователю.
- Кастомизация и улучшение взаимодействия
Теперь, когда базовая настройка завершена, вы можете приступить к кастомизации и улучшению взаимодействия с сайтом.
- Добавление персональных данных и контекста
Если требуется, вы можете добавить персональные данные или контекст пользователя, чтобы бот мог предоставить более индивидуализированные ответы. Это может быть информация о пользователе, предыдущие взаимодействия или любая другая полезная информация.
- Обучение на специфической информации
Если вы хотите, чтобы сервис был более компетентным в определенной области, вы можете обучить его на специфической информации. Это может быть достигнуто путем обучения бота на наборе данных, связанных с вашей областью деятельности или предоставлением дополнительных инструкций и контекста в запросах к боту.
- Повышение эффективности ответов
Продолжайте настраивать параметры бота и тестируйте его взаимодействие с пользователями. Анализируйте полученные ответы и используйте обратную связь для постоянного улучшения качества ответов и повышения эффективности бота.
- Реализация дополнительных функций и возможностей
Если у вас есть специфические требования или идеи, вы можете добавить дополнительные функции, возможности к вашему боту. Например, это может быть интеграция с внешними сервисами, обработка команд, инструкций или предоставление дополнительных информационных ресурсов.
Развертывание и тестирование
- Локальное тестирование
Перед развертыванием на живом сайте рекомендуется протестировать интеграцию локально. Запустите код на локальном сервере и проверьте взаимодействие с ботом, убедитесь, что все работает правильно.
- Развертывание на предварительном или тестовом сервере
Когда интеграция протестирована локально, вы можете развернуть продукт на предварительном или тестовом сервере, чтобы проверить его работу в реальных условиях. Убедитесь, что все настройки и библиотеки правильно установлены на сервере.
- Тестирование в реальных условиях
После развертывания на тестовом сервере протестируйте работу интеграции в реальных условиях. Взаимодействуйте со своим продуктов, проверьте его ответы, функциональность в различных сценариях использования. Выполните несколько тестовых сеансов, чтобы убедиться, что все работает стабильно, отвечает на запросы пользователей корректно.
Рекомендации по безопасности и масштабированию
- Обеспечение безопасности API-ключа
При интеграции ChatGPT на ваш сайт важно обеспечить безопасность вашего API-ключа. API-ключ предоставляет доступ к платформе ChatGPT и должен быть храниться в безопасном месте. Не публикуйте ключ в открытом доступе и не передавайте его третьим лицам без необходимости.
- Оптимизация использования ресурсов
При использовании ChatGPT обратите внимание на оптимизацию использования ресурсов. Убедитесь, что вы эффективно используете выделенные ресурсы, чтобы обеспечить хороший опыт для ваших пользователей. Избегайте избыточных запросов к API и оптимизируйте код вашего бота для более эффективной работы.
- Масштабирование для обработки большого количества запросов
Если ваш сайт получает большой объем запросов или ожидается увеличение нагрузки, важно подготовить инфраструктуру для масштабирования. Используйте горизонтальное масштабирование, добавляя дополнительные экземпляры вашего бота или использование специализированных сервисов для обработки большого количества запросов. Обратитесь к документации и руководству OpenAI для получения дополнительной информации о масштабировании вашей интеграции ChatGPT.
Примеры и дополнительные ресурсы
Пример кода для интеграции ChatGPT на сайт:
// Подключение библиотеки или скрипта ChatGPT
// Создание экземпляра бота
var bot = new ChatGPT();
// Настройка параметров бота
// Установка модели языка
// Другие параметры настройки…
// Обработка запросов пользователя
// Отправка запроса к боту и получение ответа
var response = bot.sendMessage(input);
// Обработка ответа бота
Дополнительные инструменты для расширения функциональности бота:
- Добавление возможности взаимодействия с базой данных для сохранения и извлечения информации.
- Интеграция с платежными системами для обработки транзакций или оформления заказов.
- Расширение функциональности с помощью дополнительных API и сервисов, например, работа с сервисами геолокации или машинного обучения.
Воспользуйтесь документацией и руководством OpenAI для получения дополнительных ресурсов, инструментов, которые могут помочь вам в расширении функциональности вашего бота, оптимизации его работы.
Заключение
Интеграция ChatGPT на ваш сайт может значительно улучшить взаимодействие с вашими пользователями и предоставить более персонализированный опыт. В этой статье мы предоставили вам подробные инструкции по интеграции ChatGPT на ваш сайт. Следуя этим шагам, вы сможете успешно добавить мощного чат-бота на ваш сервис и улучшить опыт ваших посетителей.
Как подключить нейросеть к сайту?
Нейросети, или искусственные нейронные сети, стали неотъемлемой частью современных информационных технологий. Они способны обрабатывать и анализировать огромные объемы данных, распознавать образы, голос, тексты и даже принимать решения на основе полученной информации.
Один из способов применения нейросетей — их использование на веб-сайтах. В данной статье мы рассмотрим, как подключить нейросеть к сайту.

Шаг 1: Выбор нейросети
Прежде чем приступить к подключению нейросети, необходимо определиться с выбором самой подходящей модели. Существует множество различных типов нейросетей, каждая из которых предназначена для решения определенных задач. Например, для распознавания изображений можно использовать сверточные нейронные сети, для обработки текстов — рекуррентные сети, а для решения задачи рекомендации — нейронные сети прямого распространения. Поэтому важно определить, для какой цели вы планируете использовать нейросеть на вашем сайте и выбрать соответствующую модель.
Шаг 2: Обучение нейросети
После выбора подходящей нейросети необходимо обучить ее на необходимых данных. Обучение нейронной сети — это процесс подбора оптимальных весов и параметров модели, который позволит достичь высокой точности предсказаний. Для этого потребуются набор данных, на котором будет происходить обучение, а также алгоритмы оптимизации и функции потерь для настройки модели. Обучение нейросети обычно происходит на специализированных платформах для машинного обучения, таких как TensorFlow, PyTorch, Keras и другие.
Шаг 3: Интеграция с сайтом
После успешного обучения нейросети можно приступать к ее интеграции с веб-сайтом. Для этого следует реализовать API (интерфейс программирования приложений) для взаимодействия с нейросетью. API позволит передавать данные нейросети, получать результаты ее работы и интегрировать их на веб-страницы. Также необходимо учесть вопросы безопасности при работе с нейросетью на стороне сервера, чтобы избежать утечки конфиденциальной информации.
Шаг 4: Тестирование и оптимизация
После интеграции нейросети с сайтом необходимо провести тестирование ее работы в различных условиях. Важно удостовериться, что нейросеть корректно обрабатывает поступающие данные и возвращает ожидаемые результаты. В случае необходимости можно произвести оптимизацию модели, например, улучшить скорость работы или точность предсказаний, что поможет повысить общее качество работы нейросети на сайте.
Шаг 5: Поддержка и мониторинг
После успешной интеграции нейросети с сайтом необходимо обеспечить ее поддержку и мониторинг. Это включает в себя постоянный контроль за работоспособностью и производительностью нейросети, обновление модели при необходимости, а также реагирование на возможные проблемы или сбои в ее работе. Также важно следить за изменениями в окружающей среде и обновлять модель нейросети в соответствии с новыми данными и требованиями.
В заключение можно сказать, что подключение нейросети к веб-сайту — это сложный и многопроцессорный процесс, который требует глубоких знаний в области машинного обучения, программирования и веб-разработки. Однако, при правильно проведенном интеграции нейросеть может значительно расширить функционал вашего сайта, улучшить пользовательский опыт и повысить его конкурентоспособность на рынке.
И немного расскажем про плагин «WT Auto GPT»
WT Auto GPT — это инновационный плагин для CMS WordPress, который позволяет генерировать уникальный контент на страницах сайта с использованием нейросетей. Благодаря этому плагину, веб-мастеры могут создавать свежий и качественный контент автоматически, без необходимости тратить время на его написание вручную. Нейросети, работающие в основе этого плагина, обладают уникальной способностью анализировать и понимать информацию, что позволяет им генерировать тексты, полностью соответствующие заданным настройкам и требованиям владельца сайта. Плагин WT Auto GPT дает возможность создавать привлекательный контент быстро и эффективно, повышая таким образом посещаемость и рейтинг сайта. Это мощный инструмент, который максимально упрощает процесс создания и обновления контента на веб-платформе WordPress.
Контент страницы подготовлен с помощью нейросетей. Попробуйте сервис Chad GPT – просто и удобно! Промокод на скидку 10% – WTAUTOGPT.
Как пользоваться нейросетью Stable Diffusion
В статье мы расскажем о Stable Diffusion: что это за нейросеть и как с ней работать без навыков программирования.
Чтобы вам было легче понять, что такое Stable Diffusion, мы опишем хронологию выпуска нейросетей в 2022 году.
Как развивались нейросети
В 2022 году появилось много нейросетей, которые работают с изображениями. Их основной функционал — это создание новых картинок и модификация готового изображения.
В апреле 2022 года компания OpenAI выпустила DALL-E 2. Главная особенность этой нейросети — возможность экспериментировать со стилями. Можно сгенерировать картинку в формате реализма, футуризма, а также «примерить» стиль известных художников: например, Винсента ван Гога или Василия Васильевича Кандинского.
После DALL-E 2 компания Сбер выпустила нейросеть ruDALL-E. Она обладает схожим функционалом, однако ее отличительная особенность — это разнообразие стилей российских и советских художников: например, можно сгенерировать изображение в стиле Казимира Севериновича Малевича и Василия Ивановича Сурикова.
Следующим релизом стала MidJourney — нейросеть для решения задач графического дизайна. Изначально MidJourney была представлена в марте 2022 года в качестве закрытого Discord-сервера. Однако спустя несколько месяцев она стала доступна для всех.
После MidJourney состоялся выпуск Stable Diffusion.
Что такое Stable Diffusion
Stable Diffusion — это нейросеть, которая предназначена для генерации изображений по текстовому запросу. Она была выпущена в августе 2022 года компанией Stability AI, автором идеи стал Эмад Мостак.
Главная особенность Stable Diffusion, благодаря которой нейронка получила популярность, — открытый исходный код. Свободное распространение этого ПО позволяет:
- создавать собственные модификации ПО,
- размещать и настраивать свои программы на удаленном сервере,
- открывать доступ к новой программе для всех пользователей и др.
Как работает нейросеть Stable Diffusion
В основе Stable Diffusion лежит техника латентной диффузии — когда в процессе генерации система находит знакомые формы среди большого пула изображений, а затем фокусируется на них при совпадении с запросом. Как нейросеть узнает формы? Этот «навык» она получает в процессе обучения и тренировки.
На начальном этапе обучения сети сотрудники Stability AI отобрали изображения с метаданными — дополнительной информацией (например, подписью под картинкой на сайте) — и сформировали пул графических данных. Они использовали подмножество из крупного сета LAION-5B, в который входит около 5 000 000 000 изображений из интернета. Большая часть картинок взята с сайтов Getty Images, DeviantArt и Pinterest — благодаря этому Stable Diffusion может применять стили современных художников.
После сбора данных нейросеть обучалась на GPU — сервере с графической картой для сложных операций. Обучение проходило по следующему принципу: система задействовала технологию CLIP (Contrastive Language–Image Pre-training) — генерацию готовой композиции в один этап. Для сравнения, обычно создание изображения происходит послойно: начинается с фона и заканчивается объектом. CLIP же позволяет строить ассоциативные ряды между словами и изображениями. Обучение Stable Diffusion продолжается — это помогает усовершенствовать нейросеть.
Этап, который следует после обучения ИИ — тренировка. Она проходит по следующему сценарию: сначала нейросеть использует знакомые ассоциации, которые были получены в результате обучения, и анализирует соотношения пикселей определенных цветов в пуле известных ей изображений. После этого она формирует окончательный вариант изображения, которое соответствует запросу. Так же, как и обучение, тренировка Stable Diffusion происходит на постоянной основе.
О том, как правильно составить запрос для создания изображения, расскажем ниже.
Как составить запрос в Stable Diffusion
Чтобы сгенерировать подходящее изображение, необходимо создать точный текстовый запрос. Детали запроса должны располагаться в строгом порядке и отделяться запятыми. Описание желаемой картинки должно иметь следующий формат:
объект, фон, стиль, дополнительные описания качества картинки и деталей
- Объект — тот предмет, который лежит в основе композиции;
- Фон — цветовое оформление заднего плана;
- Стиль — дизайн картинки или стилистика художника. Например, «минимализм» или «стиль Малевича»;
- Дополнительные качества картинки и деталей — качество и детализация картинки, например «высокое качество» или «шум».
В качестве примера мы сгенерируем картинку по следующему описанию с помощью нейросети Stable Diffusion:
рыжий кот среди цветов, стиль кантри, пастельные тона, высокое качество, высокая детализация
Как сгенерировать изображение в Stable Diffusion онлайн
Вы можете бесплатно создать изображение в режиме онлайн на официальном сайте Stable Diffusion — на это потребуется пара минут.
Важно: онлайн-редактор Stable Diffusion не поддерживает русский язык. Во избежание ошибок предварительно переведите ваш запрос на английский язык (например, с помощью Google-переводчика).
Чтобы создать картинку:

Кликните Get Started for Free:

Введите свой запрос. Затем нажмите Generate image: Stable Diffusion: img2img
Дождитесь окончания генерации.
Готово, теперь вы можете сохранить готовое изображение:

Как установить Telegram-бот Stable Diffusion
В Telegram-версии Stable Diffusion добавлена поддержка русского языка. Вы можете использовать её, если хотите составить корректный запрос на русском языке.
Это ответвление нейросети недоступно в онлайн-режиме — для создания изображения необходимо установить мессенджер Telegram на ваше устройство. Установочный файл можно скачать на официальном сайте Telegram.
После того как вы установили приложение, воспользуйтесь Telegram-ботом из российского сегмента Stable Diffusion. Для этого:
Откройте генератор Stable Diffusion через Telegram.

Нажмите Запустить:

Добавьте префикс /txt и введите текстовое описание изображения. Затем нажмите Отправить:

Дождитесь генерации изображения: Создание картинки с помощью нейросети
Готово, вы можете скачать картинку: