ym88659208ym87991671
Как написать код с помощью нейросетевой модели GigaChat — Блог | GigaChat
Перейти к основному содержимому
Начните творить
15 декабря 2023

Нейросетевая модель для написания кода

GigaChat — нейросетевая модель, которая может онлайн отладить, отформатировать, сгенерировать и прокомментировать код на языках Java, Python, HTML, SQL, если правильно создать промпт (от англ. prompt «подсказка»). В этой статье мы собрали несколько примеров, чтобы наглядно показать, как GigaChat справляется с разными задачами, связанными с языками программирования.

Рассвет на ноутбуке

Простой промпт

В этом пункте мы рассмотрим самые обычные запросы. Например, попросим GigaChat написать код html для страницы c поздравлением с Новым 2024 годом.

html-код
Больше примеров
Промпт

Напиши код html для страницы c поздравлением с Новым 2024 годом

Результат

‹!DOCTYPE html›

‹html›
‹head›
‹meta charset="UTF-8"›
‹title›Поздравление с Новым 2024 годом‹/title›
‹/head›
‹body›
‹h1›С Новым 2024 годом!‹/h1›
‹p›Дорогие друзья!‹/p›
‹p›Поздравляем вас с наступающим Новым 2024 годом! Желаем вам счастья, здоровья, любви и благополучия!‹/p›
‹p›Пусть этот год будет наполнен радостью, успехами и яркими впечатлениями!‹/p›
‹p›С наилучшими пожеланиями,‹/p›
‹p›Ваш виртуальный помощник.‹/p›
‹/body›
‹/html›

Обратите внимание, что в данном коде использована версия HTML5. Также я добавил мета-тег charset, чтобы указать кодировку страницы (в данном случае — UTF-8). Это поможет корректно отображать русский язык на различных устройствах и в разных браузерах.

Хорошо! А теперь попросим объяснить нам, что такое матрица в программировании и привести пример на языке Python.

Матрица в программировании
Больше примеров
Промпт

Расскажи, что такое матрица в программировании и приведи пример матрицы на языке python.

Результат

Матрица в программировании — это структура данных, состоящая из элементов, упорядоченных в виде таблицы. Каждый элемент матрицы имеет свой индекс, который состоит из номера строки и номера столбца.

Пример матрицы на языке Python:

Создаем матрицу размером 3x3matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

Выводим элементы матрицы
print(matrix[0][0]) Выводит 1
print(matrix[1][1]) Выводит 5
print(matrix[2][2]) Выводит 9

В этом примере мы создаем матрицу размером 3×3, где каждый элемент матрицы имеет свой индекс (номер строки и номер столбца). Затем мы выводим значения элементов матрицы, используя их индексы.

Сложный промпт

Поставим другую задачу перед GigaChat — написать код двумя способами.

Код на Python
Больше примеров
Промпт

Напиши код на Python. Задача: поменять значения двух переменных местами. Сделай это двумя способами — используя и не используя третью переменную.

Результат

способ 1

x = 5
y = 10
temp = x
x = y
y = temp

способ 2

x = 5
y = 10
x, y = y, x

GigaChat понимает и это: пишет двумя способами, добавляет комментарии и знает тонкости языка программирования. Теперь попробуем ещё один пример с переменными на языке Java.

Код на Java
Больше примеров
Промпт

Напиши код на Java. Создай класс "Студент", содержащий свойства "имя" и "возраст", а также методы "получить имя" и "получить возраст". Создай класс "Аспирант", наследующийся от класса "Студент", и добавь свойство "степень" и метод "получить степень".

Результат

public class Student {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
public class GraduateStudent extends Student {
private String degree;
public GraduateStudent(String name, int age, String degree){
super(name, age);
this.degree = degree;
}
public String getDegree(){
return degree;
}
}

Запрос написан естественным языком. GigaChat понимает, переводит на английский язык и называет нужные переменные в предлагаемом им коде (студент, имя, возраст, аспирант, степень) на английском языке. А также GigaChat понимает, что значит «наследующийся класс». Как итог — сделано всё классно!

Начинайте творить
Не забудьте отключить VPN

Работа с базой данных

Умеет ли GigaChat работать с базой данных? Ещё как умеет! Опишите её естественным языком и задайте данные, которые хотите хранить. GigaChat переведёт всё это на язык SQL и предоставит примеры запросов по нашему промпту.

База данных
Больше примеров
Промпт

Создай таблицу базы данных с названием Products на PostgreSQL. Таблица должна состоять из полей Id, ProductName, Manufacturer, ProductCount, Price. Первичный ключ — Id. Добавь в таблицу данные:
iPhone 15, Apple, 3, 100000
iPhone 14, Apple, 5, 80000
Galaxy S9, Samsung, 2, 50000
Выведи все данные из таблицы.

Результат

CREATE TABLE Products (
Id SERIAL PRIMARY KEY,
ProductName VARCHAR(255),
Manufacturer VARCHAR(255),
ProductCount INTEGER,
Price INTEGER
);

INSERT INTO Products (ProductName, Manufacturer, ProductCount, Price)
VALUES ('iPhone 15', 'Apple', 3, 100000),
('iPhone 14', 'Apple', 5, 80000),
('Galaxy S9', 'Samsung', 2, 50000);
SELECT * FROM Products;

Теперь попробуем отредактировать эти данные — удалить из таблицы и изменить тип её поля.

Изменение данных
Удаление данных
Изменение типа данных
Больше примеров
Промпт

Теперь измени цену Galaxy S9 с 50000 на 45000

Результат

UPDATE Products
SET Price = 45000
WHERE ProductName = 'Galaxy S9';
SELECT * FROM Products;

Промпт
Теперь удали строки, у которых производитель Apple
Результат

DELETE FROM Products
WHERE Manufacturer = 'Apple';
SELECT * FROM Products;

Промпт
Измени тип данных для Price на NUMERIC
Результат

ALTER TABLE Products
ALTER COLUMN Price TYPE NUMERIC;
SELECT * FROM Products;

GigaChat прекрасно запоминает предыдущий контекст и отлично справляется с нашим запросом.

Промпт на анализ и логическое рассуждение

GigaChat способен и не на такое — он даже умеет решать вопросы на логику!

Промпт на анализ
Больше примеров
Промпт

Расположи SQLite, MySQL и PostgreSQL по количеству поддерживаемых типов данных: от наибольшего количества к наименьшему

Результат

PostgreSQL — поддерживает наибольшее количество типов данных, включая геометрические, объектно-ориентированные и многие другие.
MySQL — поддерживает большое количество типов данных, но несколько меньше, чем PostgreSQL.
SQLite — поддерживает наименьшее количество типов данных среди этих трех СУБД.

Отладка и форматирование кода

GigaChat умеет и то, и то другое. Сейчас покажем на примерах. Начнём с отладки кода.

Исправление кода
Больше примеров
Промпт

Исправь этот код, чтобы программа не падала с ошибкой:
public static void main(String args[]) {
System.out.println("Начало");
int а = 0;
int b = 42 / а;
System.out.println("Конец");
}

Результат

В данном коде ошибка возникает из-за деления на ноль (int b = 42 / а;), что недопустимо. Для исправления ошибки, необходимо проверить значение переменной "а" перед делением. Если "а" равно нулю, то необходимо вывести сообщение об ошибке и завершить выполнение программы. Если "а" не равно нулю, то можно продолжить выполнение программы и вывести значение переменной "b".

Вот исправленный код: public static void main(String args[]) { System.out.println("Начало");
int а = 0;
int b;
if (а != 0) { b = 42 / а; System.out.println("Конец: " + b); } else {
System.out.println("Ошибка: деление на ноль"); }
}

Круто! А теперь попросим отформатировать код на Java, чтобы он стал читаемым.

Отформатировать код
Больше примеров
Промпт

Отформатируй код на Java, чтобы он стал читаемым:
static void doReplaceInArray(int[]arr){for(int i=0;i ‹ arr.length;i++){if(arr[i]==1){arr[i]=0;}else{arr[i]=1;}System.out.print(arr[i]+"");}System.out.println();
}

Результат

Вот отформатированный код на Java:

static void doReplaceInArray(int[] arr) {
for (int i = 0; i ‹ arr.length; i++) {
if (arr[i] == 1) {
arr[i] = 0;
} else {
arr[i] = 1;
}
System.out.print(arr[i] + ""); } System.out.println(); }

В этом коде мы используем цикл for для перебора всех элементов в массиве arr. Затем мы проверяем, равен ли текущий элемент 1, и если это так, то заменяем его на 0, иначе заменяем на 1. После этого мы выводим значение текущего элемента на консоль. В конце программы мы вызываем метод System.out.println() для перехода на новую строку.

Как мы видим, GigaChat ответил на все наши запросы, правильно решил поставленные задачи и показал свои знания четырёх языков программирования — Java, Python, HTML, SQL. Но наша нейросетевая модель GigaChat сможет вас удивить не только в программировании. Это необычный сервис: он нарисует вам прекрасные изображения в разных стилях, поможет написать благодарственное письмо домашнему животному, сочинить смешное стихотворение и даже накидать несколько классных идей для подарка кому угодно — загадочным эльфам или вашему близкому другу.

Ещё по теме
GigaChat
Как работать с кодом
Напишет, исправит и проанализирует код. Покажем примеры запросов
GigaChat
ИИ для создания фото
Как с помощью нейросетей создавать уникальные изображения
GigaChat
Нейросети для создания презентаций
Создание структуры и изображений для презентаций
GigaChat
Как использовать GigaChat дизайнеру или художнику
Для поиска идей, референсов и цветовых решений
Каталог промптов GigaChat
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.