Форум сайта python.su
Я больше https://claude.ai/ пользуюсь (для кода в целом наверно лидер на рынке), в платной версии есть проекты, но схему и так можно закинуть. Только для начала стоит попросить обсудить проект, чтоб убедиться в правильном понимании задачи, а то люби он артефакты сразу писать на 1к строк.
Gemini в целом тоже ок, как и ChatGPT, но им чет реже всего пользуюсь.
CF вот либу на нем наваял под oauth хотя и отзывы спецов разнятся, но сам кейс вполне интересный (задача не самая тривиальная):
https://www.maxemitchell.com/writings/i-read-all-of-cloudflares-claude-generated-commits/
https://neilmadden.blog/2025/06/06/a-look-at-cloudflares-ai-coded-oauth-library/
Промты есть на гитхабе в коммитах.
Отредактировано slav0nic (Июнь 12, 2025 22:34:02)
Офлайн
В общем добавил DDL схему и попытался скормить этот запрос ChatGPT и какому то SQL GPT. Ни один из них внятного результата не выдал. Если бы задача была какой нибудь ученой, то может оно и справилось, но только не с этой.
Офлайн
RodegastДовольно запутанная схема базы данных у тебя. Возможно, где-то у тебя отдельное отношение размазано по остальным отношениям. Лучше сделать отдельное отношение (таблицу, как ты называешь), чем размазывать её по другим отношениям. Иначе так ты не экономишь, а запутываешь всё. Потом это приводит к затыку по всей базе данных в итоге.
Всю информацию “Еретик” хранит в PostgreSQL и сейчас я занимаюсь тем что прикручиваю туда контроль версий. Для этой цели были сделаны составные первичные ключи (branch, id).
Отредактировано py.user.next (Июнь 13, 2025 01:26:50)
Офлайн
> Довольно запутанная схема базы данных у тебя
Ты её даже не видел. В реальности она раз в 15 больше чем то что на картинке.
> отдельное отношение размазано по остальным отношениям
Таблица “размазана” по таблицам? Ты бы хоть термины правильное выучил
> Нейронная сеть тем более не поймёт, о чём речь.
Она по определению ничего понять не может. Попробовал я ей второй шанс дать и из описания удалил таблицу shema_scope. И ничего, эта дура всё равно ничего толкового сгенерить не может.
Отредактировано Rodegast (Июнь 13, 2025 18:26:42)
Офлайн
RodegastЗакинул твой же пост с картинкой в GPT
PS. Сейчас попробовал её отправить в ChatGPT, он вообще ничего не понял.
CREATE OR REPLACE FUNCTION create_branch(source_branch UUID, new_branch UUID) RETURNS void AS $$ BEGIN -- Копируем elements INSERT INTO elements (branch, id, func, type, text, idx, csv_status) SELECT new_branch, id, func, type, text, idx, csv_status FROM elements WHERE branch = source_branch; -- Копируем shema_scope INSERT INTO shema_scope ( branch, element, return_type, func, argument, patern_id, data_cast, data_cast_brainc, call, call_branch, constant, constant_branch, call_operator, operator_branch, construct, construct_branch, shema_scop, name, expression, csv_status ) SELECT new_branch, element, return_type, func, argument, patern_id, data_cast, data_cast_brainc, call, call_branch, constant, constant_branch, call_operator, operator_branch, construct, construct_branch, shema_scop, name, expression, csv_status FROM shema_scope WHERE branch = source_branch; -- Копируем nexus INSERT INTO nexus (branch, element_1, element_2, point_1, point_2, csv_status) SELECT new_branch, element_1, element_2, point_1, point_2, csv_status FROM nexus WHERE branch = source_branch; END; $$ LANGUAGE plpgsql;
-- Генерируем UUID новой ветки (можно сделать в коде) SELECT gen_random_uuid(); -- допустим: '11111111-2222-3333-4444-555555555555' -- Создаём ветку SELECT create_branch( '00000000-0000-0000-0000-000000000000', -- исходная ветка main '11111111-2222-3333-4444-555555555555' -- новая ветка );
Офлайн
> Правильно ли нейросеть тебя поняла, что тебе нужно
Конечно нет. Мне надо копировать только определённую схему, а не всю ветку.
Офлайн
RodegastВот в этом и особенность работы с нейросетью, чтобы ей предсказать более точный ответ, ей нужно максимально детально описать, что нужно, а лучше привести пример хотя бы абстрактный.
Конечно нет. Мне надо копировать только определённую схему, а не всю ветку.
Офлайн
> Что конкретно означает “схема”?
Иерархическую совокупность элементов.
> Как ты её идентифицируешь? По какому полю?
func в таблице elements
> Какие данные именно копировать?
Только то что в таблицах
> Как определяются связи внутри схемы?
Для связей между элементами используется таблица nexus
> Нужно ли при копировании обновлять ссылки?
Не надо
Офлайн
RodegastЭто простонародное название отношений. А отношение - это математическое понятие. Relation - потому и реляционная она. Не по связям между “таблицами” она считается реляционной, а по тем отношениям, из которых она состоит сама по себе. Сами “таблицы” - это и есть те отношения, о которых речь идёт. Чем отличается? Ну в таблице есть столбцы и строки. Первая строка - это первая строка, вторая строка - это вторая строка. Со столбцами то же самое. А отношение - это множество n-ок, упорядоченных или неупорядоченных, поэтому у элементов нет порядка. Нет первой строки и второй строки, они все и первые, и вторые одновременно. И нет первого и второго столбца, они тоже все первые и вторые одновременно. Так как отношение состоит из неупорядоченных элементов.
Таблица “размазана” по таблицам? Ты бы хоть термины правильное выучил
RodegastНе, я обратил внимание на неинформативные названия полей в стиле “здравствуй лошадь первого разбойника, здравствуй лошадь второго разбойника”. Ты вот эти элемент1 и элемент2 назвал так, будто ты на какое-то короткое время это отношение создал, чтобы чисто посмотреть, какой-то эксперимент провести, потому что неинформативные названия потом сто процентов выстрелят где-нибудь, а для их замены в тот момент на нормальные и понятные не будет ресурсов.
Ты её даже не видел. В реальности она раз в 15 больше чем то что на картинке.
Отредактировано py.user.next (Июнь 13, 2025 23:50:56)
Офлайн
> Это простонародное название отношений
Таблица это термин используемый в официальном описании стандарта SQL.
> А отношение - это математическое понятие … Так как отношение состоит из неупорядоченных элементов.
Я тебе уже про это писал, но ты видно не понял. SQL и реляционная алгебра сильно разные вещи и не нужно их путать.
> я обратил внимание на неинформативные названия полей
Названия вполне информативные. Ты не знаком с предметной областью по этому так и показалось.
> У тебя точно нет суррогатных первичных ключей в смеси с другими ключами
С какими другими?
> Зачем тебе составные первичные ключи понадобились?
А ты внимательно почитай что чат написал даже он про них правильно понял
http://python.su/forum/topic/43647/?page=4#post-234115
Офлайн