Я подумал, что можно рассказать в своём личном блоге, чем я занимаюсь в последнее время, а то до настоящего и серьезно выглядящего "релиза" еще какое-то количество усилий нужно, а показаться на свет немножко хочется, тем более, что это всегда немного отрезвляет.
Я пишу... язык программирования. Такой, который был бы специально заточен под генерацию LLM-кой, а не написанием вручную, поэтому у него очень мало каких-то синтаксических инноваций (сейчас это просто лисп), но довольно необычный рантайм.
Главный вопрос в том, как сделать так, чтобы компьютеру можно было давать всякие сложные, неполные, размазанные по времени инструкции. "Если мне придет емейл от босса, засуши лягушку, дождись полнолуния, если лягушка зеленая - пошли ему посылкой, а если красная - спроси меня, что делать дальше". Если генерировать из чего-то такого код на нормальном языке типа JS ( ;-) ), то не очень понятно, как и где его запускать: обычные рантаймы должны где-то висеть запущенными и ждать "полнолуния", или создавать какие-то кастомные триггеры в какой-то другой системе, или еще что-то такое. Поэтому несмотря на то, что ллмкам уже больше года, нет какого-то нормального и универсального подхода к пониманию и исполнению таких вот инструкций.
Рантайм Slalom⛷ (так оно называется) можно в любой момент поставить на паузу и сохранить в файл или бд. Он поддерживает создание триггеров, срабатывание которых можно легко проверить. Самые сложные и разнообразные инструкции от юзеров можно экономично и безопасно в этой штуке исполнять.
Slalom⛷ поддерживает синтаксические континуации, которые позволяют писать отложенные инструкции вроде "спроси меня в таком случае" или даже "спроси ИИ". Такая функция может взять снаружи код, который будет выполнен в том же контексте, что ее запустил, с сохранением всех переменных из окружения.
Я начал с того, что пытался заставить разные ллмки писать мне код для такого рода инструкций, и понял, что какие-то серьезные стейтмашины или синхронизацию асинхронных калбеков они особо не осиливают, и куда лучше справляются с простыми последовательностями действий и имплицитным состоянием их исполнения. Для инструкции типа "пойди туда, а потом пойди сюда" обычные скриптовые языки потребовали бы хранить где-то состояние всего плана, и реагировать на события, чтобы его менять - тут я постарался сделать так, чтобы самый простой код (буквально почти так и выглядящий: "пойди туда, а потом пойди сюда") работал, даже если поход занимает неделю и выполняющую его программу приходится перезапускать.
Ну и вообще многие решения в языке были приняты на основе экспериментов о том, какой код LLM пишут сами с минимумом инструкций, и как это так выполнять, чтобы не сильно жалеть. Мне кажется, в генерации кода есть очень много интересных возможностей (например, я надеюсь, что однажды получится добавить строгое типирование, и ограничивать с его помощью токены на этапе генерации - такой вот автокомлит для ИИ), и сделать язык, специально под это рассчитанный - это отличный шаг.
Это язык, скорее, для "workflows", поэтому нет особых стараний для того, чтобы он очень быстро выполнялся и т.д. Но много сделано для того, чтобы не бояться выдавать юзерам систему для его исполнения, для чего там есть всякие лимиты использования ресурсов и т.д.
Куда это пойдет и кого я смогу убедить это всё внедрить, я пока что понятия не имею, но я, конечно, полон надежд, что кого-нибудь Слалом заинтересует.
Я подумал, что можно рассказать в своём личном блоге, чем я занимаюсь в последнее время, а то до настоящего и серьезно выглядящего "релиза" еще какое-то количество усилий нужно, а показаться на свет немножко хочется, тем более, что это всегда немного отрезвляет.
Я пишу... язык программирования. Такой, который был бы специально заточен под генерацию LLM-кой, а не написанием вручную, поэтому у него очень мало каких-то синтаксических инноваций (сейчас это просто лисп), но довольно необычный рантайм.
Главный вопрос в том, как сделать так, чтобы компьютеру можно было давать всякие сложные, неполные, размазанные по времени инструкции. "Если мне придет емейл от босса, засуши лягушку, дождись полнолуния, если лягушка зеленая - пошли ему посылкой, а если красная - спроси меня, что делать дальше". Если генерировать из чего-то такого код на нормальном языке типа JS ( ;-) ), то не очень понятно, как и где его запускать: обычные рантаймы должны где-то висеть запущенными и ждать "полнолуния", или создавать какие-то кастомные триггеры в какой-то другой системе, или еще что-то такое. Поэтому несмотря на то, что ллмкам уже больше года, нет какого-то нормального и универсального подхода к пониманию и исполнению таких вот инструкций.
Рантайм Slalom⛷ (так оно называется) можно в любой момент поставить на паузу и сохранить в файл или бд. Он поддерживает создание триггеров, срабатывание которых можно легко проверить. Самые сложные и разнообразные инструкции от юзеров можно экономично и безопасно в этой штуке исполнять.
Slalom⛷ поддерживает синтаксические континуации, которые позволяют писать отложенные инструкции вроде "спроси меня в таком случае" или даже "спроси ИИ". Такая функция может взять снаружи код, который будет выполнен в том же контексте, что ее запустил, с сохранением всех переменных из окружения.
Я начал с того, что пытался заставить разные ллмки писать мне код для такого рода инструкций, и понял, что какие-то серьезные стейтмашины или синхронизацию асинхронных калбеков они особо не осиливают, и куда лучше справляются с простыми последовательностями действий и имплицитным состоянием их исполнения. Для инструкции типа "пойди туда, а потом пойди сюда" обычные скриптовые языки потребовали бы хранить где-то состояние всего плана, и реагировать на события, чтобы его менять - тут я постарался сделать так, чтобы самый простой код (буквально почти так и выглядящий: "пойди туда, а потом пойди сюда") работал, даже если поход занимает неделю и выполняющую его программу приходится перезапускать.
Ну и вообще многие решения в языке были приняты на основе экспериментов о том, какой код LLM пишут сами с минимумом инструкций, и как это так выполнять, чтобы не сильно жалеть. Мне кажется, в генерации кода есть очень много интересных возможностей (например, я надеюсь, что однажды получится добавить строгое типирование, и ограничивать с его помощью токены на этапе генерации - такой вот автокомлит для ИИ), и сделать язык, специально под это рассчитанный - это отличный шаг.
Это язык, скорее, для "workflows", поэтому нет особых стараний для того, чтобы он очень быстро выполнялся и т.д. Но много сделано для того, чтобы не бояться выдавать юзерам систему для его исполнения, для чего там есть всякие лимиты использования ресурсов и т.д.
Куда это пойдет и кого я смогу убедить это всё внедрить, я пока что понятия не имею, но я, конечно, полон надежд, что кого-нибудь Слалом заинтересует.
BY roguelike theory
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
For tech stocks, “the main thing is yields,” Essaye said. The fake Zelenskiy account reached 20,000 followers on Telegram before it was shut down, a remedial action that experts say is all too rare. Update March 8, 2022: EFF has clarified that Channels and Groups are not fully encrypted, end-to-end, updated our post to link to Telegram’s FAQ for Cloud and Secret chats, updated to clarify that auto-delete is available for group and channel admins, and added some additional links. Since its launch in 2013, Telegram has grown from a simple messaging app to a broadcast network. Its user base isn’t as vast as WhatsApp’s, and its broadcast platform is a fraction the size of Twitter, but it’s nonetheless showing its use. While Telegram has been embroiled in controversy for much of its life, it has become a vital source of communication during the invasion of Ukraine. But, if all of this is new to you, let us explain, dear friends, what on Earth a Telegram is meant to be, and why you should, or should not, need to care. The Russian invasion of Ukraine has been a driving force in markets for the past few weeks.
from us