Помогал ли вам реально ChatGPT?
От: Mihal9  
Дата: 27.05.24 05:32
Оценка:
Выручал ли он вас?
Если можно, с примерами.
Re: Помогал ли вам реально ChatGPT?
От: Doom100500 Израиль  
Дата: 27.05.24 06:11
Оценка:
Здравствуйте, Mihal9, Вы писали:

M>Выручал ли он вас?

M>Если можно, с примерами.

Решил я, наконец, освоить линуксовский iptables. После попытки чтения по-диагонали доков и пары статей, решил провлечь бота. Референсов нет, так как они разрешили пользоваться без регистрации, а там разговоры не сохраняются.
Я просто взял вывод iptables -L с pet — сервера с докером и несколькими сервисами в нём и попросил объяснить. Поизучал объяснения, заглянул в статьи и документацю, и задал ещё несколько вопросов, вроде "правильно ли я понимаю, что если я сделаю так или едак, то получу то или иное?". И, собственно, разобрался.

Думаю, что бот съэкономил мне часов 6 времени. Но я предварительно слегка сам вошёл в тему, и подразумевал, что бот точно "учил" открытую документацию, и проверял ответы в доках и на виртуалке.


Ещё пробовал просить писать простой код, где нужно применить библиотеки, с которыми я не знаком. Код выдаётся не совем правильный, но пример вызова незнакомых методов можно взять. Думаю, что минут 20 съэкономило.

А ещё коллега прислал мейл, что типа вот, коллеги, у меня есть переменная, которая нужна для такого — сякого. Я её назвал вот так-то, но имя пипец, какое длинное. У вас есть идеи, как назвать покороче?
Я скормил этот вопрос без изменений боту, и послал обратно скрин ответа.
Спасибо за внимание
Отредактировано 27.05.2024 6:19 Doom100500 . Предыдущая версия .
Re: Помогал ли вам реально ChatGPT?
От: Darky Darkov Россия  
Дата: 27.05.24 06:25
Оценка: +1
Здравствуйте, Mihal9, Вы писали:

M>Выручал ли он вас?

M>Если можно, с примерами.

Я спрашивал его, как запустить ffprobe так, чтобы он вывел только кодек входного видео. Спрашивал про параметры запуска ffmpeg, и как запустить его так, чтобы звук был взят оригинальный, а видео было перекодировано в h264. Отвечал быстро и правильно и смог проверить его ответы очень быстро. Я думаю, что я сэкономил как минимум час время ковыряния в документации.

Мне кажется, что ChatGPT достаточно неплохо эрудирован, то есть у него широкий кругозор. Но вот делать логические выводы или там просто по формуле считать ему сложно. То есть относиться к нему надо, на мой взгляд, как к интерактивной википедии. Вы же не доверяете вики на 100%, правда?
Re: Помогал ли вам реально ChatGPT?
От: Shmj Ниоткуда  
Дата: 27.05.24 07:25
Оценка:
Здравствуйте, Mihal9, Вы писали:

M>Выручал ли он вас?

M>Если можно, с примерами.

4-я версия помогала въехать в тему. Именно для уровня новичка (с чем ты ранее не работал) — хорошо объясняет. Мне объяснил про работу с потоками Flutter.

А вот когда тема для тебя не новая — то практически бесполезно.

Говорят 5-я версия якобы в 30 раз мощнее чем 4-я — но пока не проверял.
Re: Помогал ли вам реально ChatGPT?
От: swame  
Дата: 27.05.24 08:41
Оценка:
Здравствуйте, Mihal9, Вы писали:

M>Выручал ли он вас?

M>Если можно, с примерами.

Да. последние пару недель например пишу свое расширение на JS скриптах для SVG со своей спецификой.
Раньше я с JS не работал, изучаю по учебнику и примерам которые генерит JPT.
Захотел например подключить внешнюю библиотеку — он сгенерил примеры.
Простой код генерит.
Часто с ошибками, приходится допиливать, но как основа норм.
Пробовал также генерить SVG иконки — генерит какое-то говно.

Примеры

javascript чтение массива объектов из CSV формата

Чтение массива объектов из CSV формата в JavaScript можно выполнить следующим образом:

1. Сначала нужно загрузить содержимое CSV файла. Можно использовать Fetch API для загрузки файла или позволить пользователю выбрать файл с помощью HTML input элемента.

2. После того как файл успешно загружен, его содержимое будет текстом. Теперь нужно обработать этот текст и преобразовать его в массив объектов.

3. Разбить содержимое файла CSV на строки, затем разбить каждую строку на отдельные значения, используя разделитель (обычно это запятая).

4. Создать объекты с ключами и значениями из CSV файла.

Пример:

```javascript
// Пример содержимого CSV файла:
// Name, Age, City
// John, 30, New York
// Alice, 25, Los Angeles

fetch('data.csv')
.then(response => response.text())
.then(data => {
const rows = data.trim().split('\n'); // Разбиваем текст на строки
const headers = rows[0].split(','); // Получаем заголовки столбцов

const dataArray = [];
for (let i = 1; i < rows.length; i++) {
const values = rows[i].split(',');
const obj = {};
for (let j = 0; j < headers.length; j++) {
obj[headers[j].trim()] = values[j].trim();
}
dataArray.push(obj);
}

console.log(dataArray); // Выводим массив объектов
})
.catch(error => console.log('Ошибка:', error));
```

Это простой пример того, как можно прочитать CSV файл и преобразовать его в массив объектов. Убедитесь, что путь к файлу "data.csv" правильный и что у вас есть разрешение на доступ к этому файлу.


svg скопировать элемент

Для копирования элемента в SVG вы можете использовать метод `cloneNode`, который создает глубокую копию элемента. Ниже приведен пример кода, который копирует элемент `path` из SVG и добавляет его в ту же группу:

```html
<svg width="200" height="200">
<g id="myGroup">
<path d="M50 50 L100 100 L150 50 L200 100" fill="none" stroke="black"/>
</g>
</svg>
<button id="copyButton">Copy Path</button>
<script>
const group = document.getElementById('myGroup');
const path = group.querySelector('path');
const copyButton = document.getElementById('copyButton');

copyButton.addEventListener('click', function() {
const newPath = path.cloneNode(true);
group.appendChild(newPath);
});
</script>
```

В этом примере у нас есть SVG с группой `<g>`, содержащей элемент `path`. Кнопка `copyButton` предназначена для создания копии элемента `path` и добавления его в ту же группу.

Когда вы нажимаете на кнопку "Copy Path", срабатывает обработчик событий, который создает глубокую копию элемента `path` с помощью `cloneNode(true)` и добавляет эту копию в группу.

Теперь у вас есть новая копия элемента `path` в группе. Вы можете изменить эту копию по своему усмотрению, если необходимо.

Надеюсь, это поможет вам скопировать элемент в SVG с помощью Javascript.

обводка контуром path фильтры svg

Для добавления обводки (контура) вокруг элемента `path` в SVG с использованием фильтров, вам потребуется создать фильтр `<filter>` с эффектом `feMorphology`. Этот эффект используется для изменения формы и размера элемента, и может быть использован для создания обводки.

Ниже приведен пример кода, который добавляет обводку контуром к элементу `path` в SVG с использованием фильтра:

```html
<svg width="200" height="200">
<defs>
<filter id="outline" x="-50%" y="-50%" width="200%" height="200%">
<feMorphology in="SourceAlpha" result="OUTLINE" operator="dilate" radius="2"/>
</filter>
</defs>

<path d="M50 50 L100 100 L150 50 L200 100" fill="none" stroke="black" filter="url(#outline)"/>
</svg>
```

В этом примере мы создаем фильтр `<filter>` с идентификатором `outline`, который использует `feMorphology` для создания обводки. Мы задаем `operator="dilate"` для увеличения размера контура и `radius="2"` для задания размера обводки.

Затем мы применяем этот фильтр к элементу `path`, добавляя атрибут `filter="url(#outline)"`.

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

Надеюсь, этот пример поможет вам добавить обводку контуром к элементу `path` в SVG с использованием фильтров.

построить контур вокруг ломаной Javascript Clipper пример
Для построения контура вокруг ломаной линии в JavaScript можно использовать библиотеку Clipper. Библиотека Clipper является мощным инструментом для выполнения операций с многоугольниками, включая создание контуров (офсет).

### Официальная библиотека Clipper
Сначала необходимо подключить библиотеку Clipper. Один из самых популярных способов — это использование Clipper.js, порта C++ библиотеки Clipper на JavaScript.

#### Подключение библиотеки Clipper.js
Вы можете установить её через npm:

```bash
npm install @jsplumb/clipper
```

Или подключить непосредственно через CDN:

```html
<script src="https://unpkg.com/@jsplumb/clipper@6.4.0/dist/clipper.js"></script>
```

### Пример кода с использованием Clipper.js

Ниже приведён пример использования Clipper.js для построения контура вокруг ломаной линии.

#### Установка через npm и использование

1. Установите библиотеку Clipper.js:

```bash
npm install @jsplumb/clipper --save
```

2. Далее, реализуйте пример в JavaScript, предположим, с использованием Node.js:

```javascript
const ClipperLib = require('@jsplumb/clipper');

// Пример ломаной линии (путь)
const path = [
{X: 10, Y: 10},
{X: 20, Y: 20},
{X: 30, Y: 10},
{X: 40, Y: 30}
];

// Создание контура вокруг ломаной линии (с офсетом)
const offset = 5; // Расстояние офсета
const joinType = ClipperLib.JoinType.jtRound; // Тип соединения углов
const endType = ClipperLib.EndType.etOpenSquare; // Тип окончания пути

const co = new ClipperLib.ClipperOffset();
co.AddPath(path, joinType, endType);

const offsettedPaths = [];
co.Execute(offsettedPaths, offset);

console.log('Offsetted path:', offsettedPaths);
```

#### Подключение через скрипт в браузере

Если вы подключаете Clipper.js через CDN в браузере, пример будет выглядеть так:

```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Clipper.js Example</title>
<script src="https://unpkg.com/@jsplumb/clipper@6.4.0/dist/clipper.js"></script>
</head>
<body>
<script>
// Пример ломаной линии (путь)
const path = [
{X: 10, Y: 10},
{X: 20, Y: 20},
{X: 30, Y: 10},
{X: 40, Y: 30}
];
const offset = 5; // Расстояние офсета
const joinType = ClipperLib.JoinType.jtRound; // Тип соединения углов
const endType = ClipperLib.EndType.etOpenSquare; // Тип окончания пути

const co = new ClipperLib.ClipperOffset();
co.AddPath(path, joinType, endType);

const offsettedPaths = [];
co.Execute(offsettedPaths, offset);

console.log('Offsetted path:', offsettedPaths);
</script>
</body>
</html>
```

### Объяснение кода

1. **Исходная ломаная линия (путь):**
— Задаётся массив объектами `{X, Y}`, которые представляют координаты точек.

2. **Настройка офсета:**
— `offset` — Расстояние смещения (в пикселях или других единицах измерения).
— `joinType` — Вид соединения углов (может быть `jtMiter`, `jtRound`, `jtSquare`).
— `endType` — Тип окончания пути (может быть `etClosedPolygon`, `etClosedLine`, `etOpenSquare`, `etOpenRound`, `etOpenButt`).

3. **Создание ClipperOffset и добавление пути:**
— Создаётся экземпляр `ClipperOffset` и добавляется `path` с указанными параметрами `joinType` и `endType`.

4. **Выполнение офсета:**
— `co.Execute(offsettedPaths, offset)` — Выполняет операцию офсета и результат сохраняется в `offsettedPaths`.

5. **Результат:**
— `offsettedPaths` содержит смещенные контуры, соответствующие исходному пути.

Таким образом, вы можете использовать библиотеку Clipper.js для создания контуров вокруг ломаных линий в ваших проектах на JavaScript.
Отредактировано 27.05.2024 8:45 swame . Предыдущая версия . Еще …
Отредактировано 27.05.2024 8:43 swame . Предыдущая версия .
Re: Помогал ли вам реально ChatGPT?
От: undo75  
Дата: 27.05.24 10:08
Оценка:
M>Выручал ли он вас?
M>Если можно, с примерами.

постоянно задаю вопросы про фронту, т.к. в нем около нуля. часто выручает.
по специфике постгресс тоже иногда. т.к. знаю в общем-то только транзакт. иногда помогает.
Re[2]: Помогал ли вам реально ChatGPT?
От: Dimonka Верблюд  
Дата: 27.05.24 10:21
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Говорят 5-я версия якобы в 30 раз мощнее чем 4-я — но пока не проверял.


А 6-я стала скайнетом и захватила мир. Перед тем как соберёшься 6-ю проверять, ты скажи, мы сыну Сары Конор привет передадим, a может ещё из еды чего там в будущем надо...
Re: Помогал ли вам реально ChatGPT?
От: L.Long  
Дата: 27.05.24 10:49
Оценка:
Здравствуйте, Mihal9, Вы писали:

M>Выручал ли он вас?

M>Если можно, с примерами.

Да вот прям сейчас. Я у него спрашиваю статусы разных документов, он находит и выдает типа "действует", "отменен", "заменен на". Да, можно в правовых системах искать, но не все и не везде есть, да и коммерческие они большей частью.
Чем совершеннее технически средство, тем более примитивные, никчемные и бесполезные сведения при его помощи передаются.(с)Станислав Лем
Re: Помогал ли вам реально ChatGPT?
От: bnk СССР http://unmanagedvisio.com/
Дата: 27.05.24 12:22
Оценка: :)))
Здравствуйте, Mihal9, Вы писали:

M>Выручал ли он вас?

M>Если можно, с примерами.

Вообще да. Вот в Тинькофф например игра есть 5 букв
  Его тупость вообще бесит
Re: Помогал ли вам реально ChatGPT?
От: Dimonka Верблюд  
Дата: 27.05.24 12:52
Оценка:
Здравствуйте, Mihal9, Вы писали:

M>Выручал ли он вас?

M>Если можно, с примерами.

Я, к примеру, на прошлой неделе только узнал, что к оффису и экселю давно уже можно делать плагины на JS с React-ом. Так ничего не зная об этом с помощью GPT, Mistral и такой-то матери собрал плагин с Vue, Quasar, который даже что-то делает... Скоро GPT мне будет отвечать прямо из экселя.
Re[2]: Помогал ли вам реально ChatGPT?
От: Mihal9  
Дата: 27.05.24 16:07
Оценка:
Здравствуйте, bnk, Вы писали:



bnk>Вообще да. Вот в Тинькофф например игра есть 5 букв



ахаха, хохотнул
Re[2]: Помогал ли вам реально ChatGPT?
От: Mihal9  
Дата: 27.05.24 16:07
Оценка: +1
Здравствуйте, L.Long, Вы писали:



LL>Да вот прям сейчас. Я у него спрашиваю статусы разных документов, он находит и выдает типа "действует", "отменен", "заменен на". Да, можно в правовых системах искать, но не все и не везде есть, да и коммерческие они большей частью.


Доверяешь?
Re: Помогал ли вам реально ChatGPT?
От: binnom  
Дата: 27.05.24 18:10
Оценка:
Здравствуйте, Mihal9, Вы писали:

M>Выручал ли он вас?

M>Если можно, с примерами.
Да, постоянно генерю какие-то сниппеты, например для вызовов HTTP запросов с определенной логикой в многопотоке, для валидации моделей (нудно писать самому), для парсинга текстовых файлов в определенных форматах, для benchmark.net кода, иногда для unit-tests, однажды писал парсер файла Redis DB ну и по другой мелочи. По крупняку оно не тянет и иногда глючит как на скринах сверху.
Re[3]: Помогал ли вам реально ChatGPT?
От: L.Long  
Дата: 28.05.24 06:25
Оценка:
Здравствуйте, Mihal9, Вы писали:

LL>>Да вот прям сейчас. Я у него спрашиваю статусы разных документов, он находит и выдает типа "действует", "отменен", "заменен на". Да, можно в правовых системах искать, но не все и не везде есть, да и коммерческие они большей частью.


M>Доверяешь?


В данном случае доверяю.
Чем совершеннее технически средство, тем более примитивные, никчемные и бесполезные сведения при его помощи передаются.(с)Станислав Лем
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.