ROGUELIKE_THEORY Telegram 661
Я подумал, что можно рассказать в своём личном блоге, чем я занимаюсь в последнее время, а то до настоящего и серьезно выглядящего "релиза" еще какое-то количество усилий нужно, а показаться на свет немножко хочется, тем более, что это всегда немного отрезвляет.

Я пишу... язык программирования. Такой, который был бы специально заточен под генерацию LLM-кой, а не написанием вручную, поэтому у него очень мало каких-то синтаксических инноваций (сейчас это просто лисп), но довольно необычный рантайм.

Главный вопрос в том, как сделать так, чтобы компьютеру можно было давать всякие сложные, неполные, размазанные по времени инструкции. "Если мне придет емейл от босса, засуши лягушку, дождись полнолуния, если лягушка зеленая - пошли ему посылкой, а если красная - спроси меня, что делать дальше". Если генерировать из чего-то такого код на нормальном языке типа JS ( ;-) ), то не очень понятно, как и где его запускать: обычные рантаймы должны где-то висеть запущенными и ждать "полнолуния", или создавать какие-то кастомные триггеры в какой-то другой системе, или еще что-то такое. Поэтому несмотря на то, что ллмкам уже больше года, нет какого-то нормального и универсального подхода к пониманию и исполнению таких вот инструкций.

Рантайм Slalom (так оно называется) можно в любой момент поставить на паузу и сохранить в файл или бд. Он поддерживает создание триггеров, срабатывание которых можно легко проверить. Самые сложные и разнообразные инструкции от юзеров можно экономично и безопасно в этой штуке исполнять.

Slalom поддерживает синтаксические континуации, которые позволяют писать отложенные инструкции вроде "спроси меня в таком случае" или даже "спроси ИИ". Такая функция может взять снаружи код, который будет выполнен в том же контексте, что ее запустил, с сохранением всех переменных из окружения.

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

Ну и вообще многие решения в языке были приняты на основе экспериментов о том, какой код LLM пишут сами с минимумом инструкций, и как это так выполнять, чтобы не сильно жалеть. Мне кажется, в генерации кода есть очень много интересных возможностей (например, я надеюсь, что однажды получится добавить строгое типирование, и ограничивать с его помощью токены на этапе генерации - такой вот автокомлит для ИИ), и сделать язык, специально под это рассчитанный - это отличный шаг.

Это язык, скорее, для "workflows", поэтому нет особых стараний для того, чтобы он очень быстро выполнялся и т.д. Но много сделано для того, чтобы не бояться выдавать юзерам систему для его исполнения, для чего там есть всякие лимиты использования ресурсов и т.д.

Куда это пойдет и кого я смогу убедить это всё внедрить, я пока что понятия не имею, но я, конечно, полон надежд, что кого-нибудь Слалом заинтересует.



tgoop.com/roguelike_theory/661
Create:
Last Update:

Я подумал, что можно рассказать в своём личном блоге, чем я занимаюсь в последнее время, а то до настоящего и серьезно выглядящего "релиза" еще какое-то количество усилий нужно, а показаться на свет немножко хочется, тем более, что это всегда немного отрезвляет.

Я пишу... язык программирования. Такой, который был бы специально заточен под генерацию LLM-кой, а не написанием вручную, поэтому у него очень мало каких-то синтаксических инноваций (сейчас это просто лисп), но довольно необычный рантайм.

Главный вопрос в том, как сделать так, чтобы компьютеру можно было давать всякие сложные, неполные, размазанные по времени инструкции. "Если мне придет емейл от босса, засуши лягушку, дождись полнолуния, если лягушка зеленая - пошли ему посылкой, а если красная - спроси меня, что делать дальше". Если генерировать из чего-то такого код на нормальном языке типа JS ( ;-) ), то не очень понятно, как и где его запускать: обычные рантаймы должны где-то висеть запущенными и ждать "полнолуния", или создавать какие-то кастомные триггеры в какой-то другой системе, или еще что-то такое. Поэтому несмотря на то, что ллмкам уже больше года, нет какого-то нормального и универсального подхода к пониманию и исполнению таких вот инструкций.

Рантайм Slalom (так оно называется) можно в любой момент поставить на паузу и сохранить в файл или бд. Он поддерживает создание триггеров, срабатывание которых можно легко проверить. Самые сложные и разнообразные инструкции от юзеров можно экономично и безопасно в этой штуке исполнять.

Slalom поддерживает синтаксические континуации, которые позволяют писать отложенные инструкции вроде "спроси меня в таком случае" или даже "спроси ИИ". Такая функция может взять снаружи код, который будет выполнен в том же контексте, что ее запустил, с сохранением всех переменных из окружения.

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

Ну и вообще многие решения в языке были приняты на основе экспериментов о том, какой код LLM пишут сами с минимумом инструкций, и как это так выполнять, чтобы не сильно жалеть. Мне кажется, в генерации кода есть очень много интересных возможностей (например, я надеюсь, что однажды получится добавить строгое типирование, и ограничивать с его помощью токены на этапе генерации - такой вот автокомлит для ИИ), и сделать язык, специально под это рассчитанный - это отличный шаг.

Это язык, скорее, для "workflows", поэтому нет особых стараний для того, чтобы он очень быстро выполнялся и т.д. Но много сделано для того, чтобы не бояться выдавать юзерам систему для его исполнения, для чего там есть всякие лимиты использования ресурсов и т.д.

Куда это пойдет и кого я смогу убедить это всё внедрить, я пока что понятия не имею, но я, конечно, полон надежд, что кого-нибудь Слалом заинтересует.

BY roguelike theory


Share with your friend now:
tgoop.com/roguelike_theory/661

View MORE
Open in Telegram


Telegram News

Date: |

During the meeting with TSE Minister Edson Fachin, Perekopsky also mentioned the TSE channel on the platform as one of the firm's key success stories. Launched as part of the company's commitments to tackle the spread of fake news in Brazil, the verified channel has attracted more than 184,000 members in less than a month. Write your hashtags in the language of your target audience. Judge Hui described Ng as inciting others to “commit a massacre” with three posts teaching people to make “toxic chlorine gas bombs,” target police stations, police quarters and the city’s metro stations. This offence was “rather serious,” the court said. Clear Telegram Android app: Open the chats list, click the menu icon and select “New Channel.”
from us


Telegram roguelike theory
FROM American