⚡️ Почему вам стоит строить научную фантастику — Sunil Pai, Cloudflare
Okay, we're here with Sunil Pai, creator of Code Mode.
Итак, мы здесь с Sunil Pai, создателем Code Mode.
No, I do take credit for creation of Code Mode.
Нет, я действительно беру на себя авторство создания Code Mode.
Dynamic Isolates have been
Dynamic Isolates существуют
no, you said I did create it.
нет, ты сам сказал, что я его создал.
It's mine.
Это моё.
I
Я
It is I did create
Это я создал
Since
С
Since I was a child, I was I've been thinking about it.
С детства я об этом думал.
It's my life's
Это главная миссия
It's my life's mission.
Это главная миссия моей жизни.
I wanted to just catch up on everything going on in Cloudflare lands and also like you obviously you and I have caught up over the years.
Я хотел просто наверстать всё, что происходит в экосистеме Cloudflare, и, знаешь, мы с тобой уже не раз общались за эти годы.
The more recent thing which just launched yesterday was this Cloud Cloud Managed Agents thing which I which I know that you're you're also like interested in.
Самое свежее, что вышло буквально вчера, это вот этот Cloud Managed Agents, который мне кажется тебя тоже интересует.
Maybe we can talk about that cuz it's kind of like breaking news and you seem excited about it.
Может, поговорим об этом, это типа горячие новости, и ты явно воодушевлён.
Cloud Managed Agents is dope because Anthropic is saying here is a platform for you to build and deploy your agents that are like long-running.
Cloud Managed Agents это круто, потому что Anthropic говорит: вот вам платформа, чтобы строить и запускать агентов, которые работают долго.
Yeah.
Да.
And I like it because I like the people at Anthropic and they're super ambitious about these things.
Мне нравится, потому что мне нравятся люди из Anthropic, они очень амбициозны в этих вещах.
Except I looked at the product and I was like I think I want to compete.
Только я посмотрел на продукт и подумал: хочу поконкурировать.
I think we can do something better with Workers and Durable Objects.
Думаю, мы можем сделать что-то лучше с Workers и Durable Objects.
Yeah, Cloudflare is the is an ideal platform for this.
Да, Cloudflare это идеальная платформа для этого.
You have workflows for a while.
У вас workflows уже довольно давно.
Mhm.
Мхм.
What is what functionalities are available in Cloudflare?
Какой функционал уже доступен в Cloudflare?
Like why can't you just come on and say yeah, we we already had this?
Почему нельзя просто выйти и сказать: да, у нас это уже было?
Like what what's the difference?
Ну в чём разница?
I think
Я думаю,
that you see.
что видишь ли.
Like anything else, I think we are like discovering the architecture of the new architecture of building software of which I'm talking about on stage in a couple of hours.
Как и в любой другой области, мы, по-моему, открываем архитектуру, новую архитектуру создания программного обеспечения, о которой я буду говорить на сцене через пару часов.
5:40 p.m.
В 17:40.
Please show up to the main stage.
Пожалуйста, приходите на главную сцену.
But interestingly, our primitive
Но что интересно, наш примитив
The two primitives that I think are critical that I suspect every platform will eventually get.
Два примитива, которые, на мой взгляд, критически важны и которые в конце концов появятся на каждой платформе.
One is Durable Objects which are stateful serverless programming.
Первый из них Durable Objects, то есть stateful serverless-программирование.
I think that's a true innovation.
Думаю, это настоящая инновация.
It's the world's first implementation of the actor model in an in an infrastructure layer, not in user land.
Это первая в мире реализация модели акторов на уровне инфраструктуры, а не в пользовательском коде.
It means you can spin up millions of these stateful things that run in the background, etc.
Это значит, что можно поднять миллионы таких stateful-сущностей, работающих в фоне, и так далее.
And it runs with serverless characteristics instead of spinning up a whole VM.
И всё это работает с serverless-характеристиками, без поднятия полноценной виртуальной машины.
That's one.
Это раз.
The second which we announced just a few weeks ago is what we call Dynamic Workers.
Второе, о чём мы объявили буквально несколько недель назад, мы называем Dynamic Workers.
Famously, eval has been considered a bad idea, evaluating code user-generated code or now LLM-generated code, but we built this thing that lets you run it in a safe environment with zero startup time.
Eval всегда считался плохой идеей. Запускать пользовательский код, а теперь и код от LLM, но мы построили штуку, которая позволяет делать это в безопасной среде с нулевым временем запуска.
And when I say safe, I mean you can expose only the APIs that you want into it, and you can control all outgoing traffic.
И когда я говорю «безопасно», я имею в виду: вы можете пробрасывать только те API, которые хотите, и контролировать весь исходящий трафик.
In fact, the default way we recommend people using it is to cancel all outgoing traffic and only use the exposed endpoints.
На самом деле, рекомендуемый нами способ использования: блокировать весь исходящий трафик и работать только через открытые эндпоинты.
So, given these things, we feel we can build a much more efficient and much um a new kind of architecture for building AI agents.
Так что, исходя из этого, мы считаем, что можем построить куда более эффективную и совершенно новую архитектуру для создания AI-агентов.
Uh one of one of applications of dynamic workers, we made a little noise about it a while ago, is my colleague Matt Carey built our MCP server.
Одно из применений Dynamic Workers, о котором мы немного шумели какое-то время назад, это то, что мой коллега Мэтт Кэри построил наш MCP-сервер.
Uh the Cloudflare API is 2,600 API endpoints.
API Cloudflare насчитывает 2600 API-эндпоинтов.
So, if you expose the tool for each one of them, you're screwed.
Если открыть инструмент для каждого из них, всё рухнет.
And you could say, "Oh, I'm going to do progressive disclosure.
Можно сказать: «О, буду делать прогрессивное раскрытие.
I'm going to do this."
Вот так сделаю.»
No.
Нет.
We said you can have two tool calls.
Мы сказали: у вас будет два вызова инструментов.
One is search and execute.
Первый вызов для поиска, второй для выполнения.
And to each one of these, you actually submit code that we run in an isolate.
И в каждый из них вы фактически отправляете код, который мы запускаем в изоляте.
So, you can say, "Here's some JavaScript code that searches the entire open API JSON."
Можно написать: «Вот JavaScript-код, который ищет по всему open API JSON.»
And the second time, you can say, "Here's some code to actually run that hey, find all my workers, find the DNS things they're used in, and if it starts with the letter Z, then apply DDoS protection for it."
А во второй раз: «Вот код, который найдёт все мои workers, DNS-записи, которые они используют, и если имя начинается с буквы Z, применить DDoS-защиту.»
In one tool call, no back and forth with the LLM, and it's type checked, and well, turns out LLMs are great at running code.
Один вызов инструмента, никаких туда-сюда с LLM, всё проверяется типами, и, как выяснилось, LLM отлично умеют выполнять код.
So, this is fundamental capabilities.
Это фундаментальные возможности.
It's not something you can patch on and use it and so, that makes me excited about Cloudflare for the future of agentic software.
Их нельзя просто нашлёпать сверху, и вот поэтому я воодушевлён перспективами Cloudflare в контексте будущего агентного ПО.
I I don't know if you've you've looked at sort of Cloud managed agents thing.
Не знаю, смотрел ли ты на вот этот Cloud Managed Agents.
I looked briefly.
Посмотрел кратко.
There's like interesting takes, right?
Там интересные вещи, да?
So, separate the context from what's happening, and then there's like a little quote about, "Okay, recursive models do this."
Итак, отделим контекст от происходящего, и там есть маленькая цитата: «Окей, рекурсивные модели делают это.»
Any any takes on that?
Какие мысли по этому поводу?
I do like their thing.
Мне нравится их подход.
They made a point of pointing out that the harness runs separate like from the execution environment because they're preparing for a world of software that hasn't existed in the past.
Они подчеркнули, что harness работает отдельно от среды выполнения, потому что они готовятся к миру программного обеспечения, которого раньше не существовало.
What a wonderful way of looking towards the future, by the way.
Кстати, какой замечательный взгляд в будущее.
It's not that you're just going to build the next crowd API.
Речь не просто о том, чтобы построить очередной облачный API.
We're like, we don't even know the shape of what's going to happen and while that needs to run in a sandboxed environment, we do have ideas on how to expose capabilities and an intelligence layer via the harness.
Мы как бы не знаем даже, каким будет итог, и пока это должно работать в песочнице, у нас есть идеи, как открывать возможности и уровень интеллекта через harness.
I think that's like excellent.
Думаю, это отлично.
Yeah.
Да.
Do you think that becomes sort of standardized?
Считаешь, это станет чем-то стандартизированным?
Like Cloudflare is someone that would probably plug in support.
Cloudflare вероятно бы подключил поддержку.
Is there a standard unified layer around that?
Есть ли стандартный единый слой вокруг этого?
Is there bits you take, different ways that you see it?
Есть ли готовые кусочки, разные способы, как ты это видишь?
Like everyone is building for a version of the future of software engines.
Каждый строит под свою версию будущего программных движков.
Uh, do you have a vision that you see?
Есть у тебя какое-то видение?
It's so hard, but the way I'm framing it in my head is no one has built the React yet.
Это очень сложно, но то, как я это формулирую у себя в голове: никто ещё не создал React для этого.
You know, like the moment React came in, it wasn't I mean, it annoyed a bunch of people because it seemed so different.
Ну знаешь, когда React появился, это раздражало кучу людей, потому что выглядело совсем иначе.
The fact that you can build uh, describe a component tree with XML.
Что дерево компонентов можно описывать через XML.
I I don't know if you remember in 2013, people were walking out of the talk while they were introducing the thing saying Facebook hates JavaScript, but that is that established every framework in the future and React is still massive.
Не знаю, помнишь ли ты, в 2013-м люди уходили с доклада посреди презентации, говоря, что Facebook ненавидит JavaScript, но именно это заложило основу для всех фреймворков в будущем, и React до сих пор огромен.
I suspect we everyone
Подозреваю, что мы, все
Now everyone is building a harness and everyone's like, well, it should be in this shape, it should be in that shape.
Сейчас все строят harness, и все говорят: ну, он должен быть вот такой формы, или вот такой.
Uh, someone needs to come out with some original thinking around something that is reproducible across languages, across companies, across infrastructure.
Нужен кто-то, кто придёт с оригинальной мыслью о чём-то воспроизводимом между языками, компаниями, инфраструктурами.
I suspect we haven't done that yet.
Подозреваю, мы этого ещё не сделали.
It might just be skills.
Может, это просто skills.
I feel like skills are the ultimate translation.
Мне кажется, что skills это идеальный уровень абстракции.
And they're they're a version where
И они вариант, где
It's just English.
Это просто английский.
They scale well, it's English.
Хорошо масштабируются, это английский.
Uh, you know, you can abstract it down, you can create skills on their own.
Знаешь, можно абстрагировать вниз, можно создавать skills самостоятельно.
Is that it?
И всё?
Like, by the way, I'd be so happy if you say the future of software is markdown files.
Слушай, я был бы так счастлив, если бы ты сказал, что будущее программного обеспечения это markdown-файлы.
Beautiful.
Прекрасно.
Instantly accessible, a multi-language, bridges the world.
Мгновенно доступно, мультиязычно, объединяет мир.
Uh, could just be skills.
Может, это просто skills.
But like, do do you end up with that problem with skills where you have to start getting more and more specific at which point you're like I might as well just express it as code?
Но не сталкиваешься ли ты с этой проблемой со skills, когда приходится становиться всё конкретнее, и в какой-то момент думаешь: да проще выразить это кодом?
Yeah, yeah.
Да, да.
I'm being very precise about my my stuff.
Я очень точен в своём деле.
Yeah, I mean and skills bundle code as well, right?
Да, и skills тоже включают код, верно?
So, the whole whole bunch of things.
Так что там куча всего намешано.
Okay, there's I mean there's other topics that we can also touch on.
Окей, есть другие темы, которые мы тоже можем затронуть.