Разработка интерпретаторов с помощью ИИ
Этот раздел описывает, как разрабатывать и сопровождать интерпретатор с помощью ИИ-ассистента: как подготовить инструменты, о чём просить ассистента, что ему нужно от вас и как проверять результат. Раздел относится к интерпретаторам на C#, созданным из шаблонов CAM системы, которые описаны в разделе Разработка собственного интерпретатора на (.NET) C#, и к нативным интерпретаторам на Delphi или C++ (см. Программная библиотека интерпретатора).
По умолчанию ассистент разрабатывает интерпретатор на C# (.NET). Нативную библиотеку на Delphi или C++ он создаёт, только если вы прямо об этом попросили или правите уже существующий нативный интерпретатор.
Как выглядит работа
Вы пишете в чате своими словами:
В программах для нашего станка поворотная ось записана как B90, а на станке она называется B1. Программа с B90 не моделируется. Исправь.
И дальше наблюдаете. Ассистент читает УП и станок проекта, находит место, где интерпретатор читает слова осей, решает, что это за отличие — настройка или изменение кода, вносит изменение, собирает интерпретатор, прогоняет через него УП в CAM системе и показывает, что изменилось в моделировании и в журнале.
Вы читаете результат и отвечаете так же — «верно, но этот же станок пишет ещё и B=DC(30)», — и цикл повторяется.
Писать код самому не нужно, хотя вы в любой момент можете посмотреть каждое изменение и поправить его руками. Передать нельзя только решение: соответствует ли моделирование тому, что делает ваш станок, определяете вы. Всё, что в этом разделе сказано о проверке результата, существует именно для этого.
Что нужно ассистенту от вас
- УП, которые должен читать интерпретатор, и проект CAM системы со станком, для которого они написаны.
- Руководство по программированию стойки ЧПУ для нужных слов и циклов.
- Установленные CAM система или NC Тюнер, в которых должен работать интерпретатор.
- Ожидаемый результат: что станок делает с кадром, который моделируется неверно.
Чем больше настоящих программ вы дадите, тем лучше: написание слов ассистент берёт из них, а не из памяти.
Во что это обходится
Документация и навыки публикуются бесплатно, а модель, которая вам отвечает, в них не входит. ИИ-ассистент — услуга того, кто предоставляет модель; она оплачивается по объёму обработанного текста или подпиской. Понадобится учётная запись у поставщика ИИ-услуг или у разработчика ИИ-клиента; работа идёт на его условиях и по его расценкам.
Если данные должны оставаться внутри вашей сети, модель можно развернуть на собственном оборудовании и направить на неё клиент, который это умеет. Учтите, что небольшие локальные модели заметно хуже справляются с многошаговой работой по навыкам: прежде чем полагаться на такую модель, проверьте её на настоящей задаче. Остальное в этом разделе не меняется — CAM система, интерпретатор и УП и так находятся на вашем компьютере.
Порядок чтения
| Страница | За что отвечает |
|---|---|
| Как устроена разработка с помощью ИИ | Из каких частей состоит работа, что делает каждая, что ассистент умеет и чего не может |
| Настройка инструментов | Короткий путь: установить ИИ-клиент, скачать навыки, проверить двумя запросами |
| Организация рабочего пространства | Рабочая папка как память ассистента: УП, проект станка, руководство, заметки, история изменений |
| Рабочий цикл .NET | Путь по умолчанию: интерпретатор на C# из шаблона — создание, сборка, отладка, изменения |
| Рабочий цикл нативного интерпретатора | Только по прямой просьбе или для уже нативного интерпретатора: Delphi, C++ |
| Проверка и подтверждение результата | Прогон всех УП до и после изменения, уровни проверки, подготовка интерпретатора к передаче |
| Устранение проблем | Типичные симптомы, их причины и что делать |
| Расширенная настройка | Полная процедура настройки: навыки в разных клиентах, средства сборки и отладки, журнал, файл инструкций, несколько версий продукта, отдельное рабочее место, автоматические проверки |
Если вы только начинаете, прочитайте страницы по порядку до рабочего цикла .NET; страницу о нативном интерпретаторе — только если он вам нужен. Страницу Расширенная настройка можно не читать самому: её читает ассистент, когда настраивает инструменты.
Навыки для ассистента
Навык (англ. skill) — это инструкция обычными словами: что сделать, в каком порядке, что проверить и когда работа считается законченной. Кода в ней нет — это текстовый файл, который ассистент читает и которому следует, примерно как объяснение новому сотруднику. Написать или поправить такой навык может любой, кто способен объяснить порядок работы словами.
Навыки лежат в папке skills этого раздела: каждый навык — отдельная папка с файлом SKILL.md. Вместе со всей документацией раздела они публикуются в открытом репозитории и скачиваются одним архивом: скачать архив документации. Навыки написаны на английском языке; переписываться с ассистентом можно на любом. Вместе они ведут всю работу над интерпретатором: ассистент начинает с общего навыка, а по ходу работы обращается к остальным.
| Навык (папка) | Для чего | Страница раздела |
|---|---|---|
interpreter-development |
Общий навык: что выяснить сначала, в каком порядке работать и когда работа закончена. По умолчанию интерпретатор разрабатывается на C# (.NET) | Как устроена разработка с помощью ИИ |
inspect-nc-programs |
Сбор УП и данных станка (оси, каналы, M-функции) и перечень всех слов, которые встречаются в программах | Организация рабочего пространства |
develop-dotnet-interpreter |
Создание, настройка, сборка и отладка интерпретатора на C# из шаблона — путь по умолчанию | Рабочий цикл .NET |
develop-native-interpreter |
Нативная библиотека интерпретатора на Delphi или C++ — только когда нужен именно нативный интерпретатор | Рабочий цикл нативного интерпретатора |
nc-interpreter-foundations |
Как CAM система читает кадр и когда вызывается код интерпретатора | Как устроена разработка с помощью ИИ |
verify-interpretation |
Прогон всех УП до и после изменения, сравнение результатов и подготовка интерпретатора к передаче | Проверка и подтверждение результата |
Каждый навык можно прочитать и на этом сайте — по ссылке в таблице. Если архив недоступен, исходный файл SKILL.md можно скачать со страницы навыка; положите его в папку с именем навыка, например skills/interpreter-development/SKILL.md. Копируйте навыки все сразу: они ссылаются друг на друга. Как подключить их к вашему ИИ-клиенту — в настройке инструментов, подробно — в расширенной настройке.
Рядом с ними можно держать свои навыки. Это обычный Markdown: так же оформляются практики, которые накапливает ваша команда, — поддерживаемые стойки, особенности программ ваших заказчиков. См. организацию рабочего пространства.
Что остаётся за вами
Считайте любой ответ черновиком. Ассистент видит только то, что вы ему дали: он не знает недокументированного поведения стойки, а правдоподобно выглядящее моделирование может быть неверным. Прежде чем передать интерпретатор пользователю, прогоните через него все УП, которые у вас есть, прочитайте предупреждения в журнале взаимодействия с интерпретатором и проверьте моделирование изменённых кадров. Не передавайте в чат пароли, архивы заказчиков и данные, которые не должны покидать вашу компанию.