1
00:00:00,080 --> 00:00:03,120
Models have got so powerful, the
a lot of these kind of open 

2
00:00:03,120 --> 00:00:05,040
source libraries, the way I 
describe is they're kind of 

3
00:00:05,040 --> 00:00:07,720
liquefied. 
When MCP was launched, we didn't

4
00:00:07,720 --> 00:00:10,040
have clawed code, we didn't have
goose, we didn't have fast 

5
00:00:10,040 --> 00:00:12,240
agent. 
And you know, we would bring an 

6
00:00:12,240 --> 00:00:15,880
MCP server set of tools to A to 
a model and we would prompt it 

7
00:00:15,880 --> 00:00:19,440
and we'd kind of be delighted if
it did one or two calls. 

8
00:00:19,480 --> 00:00:21,240
Yeah. 
But the consequence of this has 

9
00:00:21,240 --> 00:00:24,560
been incredibly important. 
Sean Smith is a software 

10
00:00:24,560 --> 00:00:27,720
engineer, open source advocate, 
and one of the most influential 

11
00:00:27,720 --> 00:00:31,960
contributors to the rapidly 
growing MCP ecosystem at Hugging

12
00:00:31,960 --> 00:00:33,560
Face. 
He's helped to create tools used

13
00:00:33,560 --> 00:00:36,720
by developers around the world 
to build more capable AI 

14
00:00:36,720 --> 00:00:41,560
systems, including the Hugging 
Face MCP Server and Fast Agent. 

15
00:00:41,760 --> 00:00:45,240
His work focuses on making 
advanced AI more accessible, 

16
00:00:45,400 --> 00:00:49,160
interoperable, and useful for 
the next generation of builders.

17
00:00:49,160 --> 00:00:54,880
It is wild when you're here. 
Most folks say yeah I haven't 

18
00:00:54,880 --> 00:00:57,640
written a line of code in a 
while now. 

19
00:00:57,800 --> 00:01:01,240
Ideas have become more important
than just writing code. 

20
00:01:01,320 --> 00:01:03,920
Pretty much anyone can build an 
LLM app in a few lines. 

21
00:01:03,960 --> 00:01:07,160
In a few lines of code it is. 
In an afternoon session. 

22
00:01:07,320 --> 00:01:09,640
Wow. 
So that's kind of incredibly, 

23
00:01:09,680 --> 00:01:11,840
incredibly Valve. 
Yeah, it's like a small door 

24
00:01:11,920 --> 00:01:13,280
that opens up into a mansion. 
It's. 

25
00:01:13,600 --> 00:01:16,720
Absolutely extraordinary. 
Yeah, if you migrate your code 

26
00:01:16,720 --> 00:01:20,160
to Rust and then migrate it to 
another language, it's a cheat 

27
00:01:20,160 --> 00:01:22,080
code because you get better 
performance. 

28
00:01:22,080 --> 00:01:26,200
Since it's so opinionated, you 
really have to make it work with

29
00:01:26,200 --> 00:01:28,200
Rust. 
It's like New York. 

30
00:01:28,200 --> 00:01:30,120
If you can make it with Rust, 
you can make it anywhere. 

31
00:01:41,960 --> 00:01:44,720
When I think open source models 
these days, I mean, I know Gemma

32
00:01:44,720 --> 00:01:48,440
Ford just came out, but Quinn 
models are incredible. 

33
00:01:48,520 --> 00:01:50,480
Yeah, you've got the Min Max 
models. 

34
00:01:50,480 --> 00:01:53,720
There's a lot of really good 
options that aren't necessarily 

35
00:01:53,720 --> 00:01:56,680
homegrown American. 
Yeah, I know Reflections trying 

36
00:01:56,680 --> 00:01:59,360
to make an open source one. 
So far they haven't come out 

37
00:01:59,360 --> 00:02:02,640
with anything, so yeah, more 
patiently waiting. 

38
00:02:02,640 --> 00:02:06,680
Yeah, and Allen AI also is 
another instituted. 

39
00:02:07,000 --> 00:02:10,520
And they're doing great stuff. 
Yeah, but it's, it's less 

40
00:02:10,880 --> 00:02:14,680
directly competitive like 4B 
models and large language 

41
00:02:14,680 --> 00:02:17,520
models, right? 
It's more they do a lot of what 

42
00:02:17,520 --> 00:02:21,920
I would consider creative. 
Maybe creative is not the right 

43
00:02:21,920 --> 00:02:25,880
word, just like different types 
of models. 

44
00:02:26,240 --> 00:02:30,000
So research. 
You know, I think it's an 

45
00:02:30,000 --> 00:02:32,600
important part of progressing 
the industry that people 

46
00:02:32,600 --> 00:02:35,640
actually try different 
approaches, produce research 

47
00:02:35,640 --> 00:02:37,920
models and share those results 
with the public. 

48
00:02:38,800 --> 00:02:43,120
And it's always the case that 
while a model may not be useful 

49
00:02:43,280 --> 00:02:46,920
for general purpose, it may be 
the case that it's a particular 

50
00:02:46,920 --> 00:02:50,240
property of a model is useful 
for a specific for a specific 

51
00:02:50,240 --> 00:02:52,080
use case, well for other 
researchers to build on. 

52
00:02:52,200 --> 00:02:55,160
Yeah, and that's the beauty of 
research out in the open. 

53
00:02:55,440 --> 00:02:59,040
Precisely. 
You used to get a lot more 

54
00:02:59,800 --> 00:03:03,920
companies sharing how they 
trained their models I feel like

55
00:03:04,040 --> 00:03:07,680
and less and less now. 
I remember the Llama 3 paper 

56
00:03:07,680 --> 00:03:09,040
came out and that was great to 
see. 

57
00:03:09,040 --> 00:03:13,520
Even Llama 4 was really good. 
That is an open model still, but

58
00:03:13,880 --> 00:03:17,280
you saw like Open AI was doing 
it a little bit. 

59
00:03:17,280 --> 00:03:21,160
Yeah, Open AI were very, very 
generous with GPTOSS. 

60
00:03:21,840 --> 00:03:24,760
And again, I think, you know, it
is worth in this conversation 

61
00:03:24,760 --> 00:03:28,600
kind of drawing distinction 
between an open weight model 

62
00:03:28,680 --> 00:03:31,480
where the weights of the model 
and so that you can run 

63
00:03:31,480 --> 00:03:34,960
inference with it is what is 
shared and something which is 

64
00:03:34,960 --> 00:03:38,400
fully open source, which would 
be the entire training pipeline 

65
00:03:38,440 --> 00:03:42,200
and environments and data sets 
that went into the model. 

66
00:03:42,840 --> 00:03:44,760
So there is a distinction 
between those two things. 

67
00:03:44,760 --> 00:03:48,640
And obviously what we're talking
about is open weight models and 

68
00:03:48,640 --> 00:03:50,440
not necessarily fully open 
source pipe. 

69
00:03:50,480 --> 00:03:54,640
Yeah, the fully open source is 
very hard to do right, 

70
00:03:54,640 --> 00:03:59,120
especially if you're worried 
about somebody suing you for the

71
00:03:59,640 --> 00:04:04,360
data that you used. 
Potentially that's one aspect to

72
00:04:04,360 --> 00:04:08,520
it. 
The other thing is the amount 

73
00:04:08,520 --> 00:04:11,320
of, you know, organization 
effort and time it would take to

74
00:04:11,320 --> 00:04:13,680
also do that in a reproducible 
way. 

75
00:04:14,720 --> 00:04:19,519
But, but certainly, you know, we
see a lot of a lot of very 

76
00:04:19,519 --> 00:04:22,680
useful open data sets. 
And to your point about the 

77
00:04:22,680 --> 00:04:26,360
research, that's also 
critically, critically important

78
00:04:26,360 --> 00:04:29,840
because what's happening in post
training in, in the kind of 

79
00:04:29,840 --> 00:04:34,040
things that end users would be 
able to do with fine tuning and,

80
00:04:34,600 --> 00:04:38,800
and customisation is, you know, 
massively opened up by people 

81
00:04:38,800 --> 00:04:42,080
sharing their reinforcement 
learning environments and 

82
00:04:42,320 --> 00:04:44,760
obviously a huddle face. 
We have libraries like, you 

83
00:04:44,760 --> 00:04:49,960
know, TRL that help people 
customize models themselves. 

84
00:04:49,960 --> 00:04:53,880
So so the publishing of research
and the making accessible so 

85
00:04:53,880 --> 00:04:58,040
that our users can can implement
it and take these ideas. 

86
00:04:58,040 --> 00:05:01,680
And one of them is. 
How much have you been going 

87
00:05:01,680 --> 00:05:04,120
down the rabbit hole of the RL 
environments? 

88
00:05:04,120 --> 00:05:05,840
A reasonable amount I 
referenced. 

89
00:05:06,480 --> 00:05:08,480
I referenced this in my talk 
actually. 

90
00:05:08,480 --> 00:05:12,080
So I gave a talk at this in this
conference and one of the kind 

91
00:05:12,080 --> 00:05:17,520
of opening things was that so in
terms of like a rabbit hole, not

92
00:05:17,520 --> 00:05:19,360
so much. 
But the consequence of this has 

93
00:05:19,360 --> 00:05:22,880
been incredibly important 
because if we kind of think 

94
00:05:22,880 --> 00:05:26,840
about when MCP was launched, we 
didn't have clawed code, we 

95
00:05:26,840 --> 00:05:28,800
didn't have goose, we didn't 
have fast agent. 

96
00:05:30,480 --> 00:05:35,960
And you know, we would bring an 
MCP server set of tools to a, to

97
00:05:35,960 --> 00:05:39,200
a model and we would prompt it. 
And we kind of, I'd be delighted

98
00:05:39,200 --> 00:05:41,640
if it did one or two calls 
another time. 

99
00:05:41,640 --> 00:05:44,480
The Sonic models were 
specifically good, being able to

100
00:05:44,480 --> 00:05:50,000
chain two or three tall calls 
together and in with those 

101
00:05:50,000 --> 00:05:53,800
earlier models, when we talk 
often a lot about skills, I'm 

102
00:05:53,800 --> 00:05:55,280
sure it will come up in this 
conversation. 

103
00:05:56,280 --> 00:06:00,320
That kind of ability for the 
model to navigate and ingest 

104
00:06:00,320 --> 00:06:02,840
content and then make decisions 
on it wasn't actually there. 

105
00:06:03,160 --> 00:06:06,280
And it's RL that's really given 
models that capability. 

106
00:06:06,720 --> 00:06:10,440
So, you know, placing models 
into an environment and 

107
00:06:11,160 --> 00:06:16,520
rewarding them based on the 
right behaviour and training on 

108
00:06:16,520 --> 00:06:20,320
that means that we've now got 
these, you know, incredible self

109
00:06:20,320 --> 00:06:24,280
propelling tool loops where we 
can get 8090 a hundred turn tool

110
00:06:24,280 --> 00:06:26,280
loops. 
And that opens up, obviously, 

111
00:06:27,000 --> 00:06:28,960
the immense power of these 
coding agents. 

112
00:06:29,440 --> 00:06:32,240
Yeah, it's funny. 
I remember two years ago at 

113
00:06:32,240 --> 00:06:35,520
Nurips, RL was the huge thing 
again. 

114
00:06:35,560 --> 00:06:40,880
Again, I guess again, because 
it's not like it just fell out 

115
00:06:40,880 --> 00:06:46,200
of favor for a little bit and 
then came back and you see it 

116
00:06:46,200 --> 00:06:49,040
became the hot thing two years 
ago and now we're reaping the 

117
00:06:49,040 --> 00:06:51,120
benefits of it. 
Yeah, absolutely. 

118
00:06:51,600 --> 00:06:54,920
I was saying again, I think one 
of the the kind of other quite 

119
00:06:54,920 --> 00:06:58,480
amazing things is SWE bench 
where. 

120
00:06:58,480 --> 00:07:00,880
Yeah, Sweet Bench is great. 
Yeah, exactly. 

121
00:07:00,880 --> 00:07:06,040
And their reference agent, their
mini SWE agent is 100 lines of 

122
00:07:06,040 --> 00:07:09,280
code with a single tool, a free 
form, not even adjacent tool and

123
00:07:09,280 --> 00:07:12,880
it can get 76% which is close to
state-of-the-art. 

124
00:07:13,240 --> 00:07:18,040
So models using a single tool 
are able to score that high on, 

125
00:07:18,200 --> 00:07:21,280
on SWE bench. 
And I think as as kind of 

126
00:07:21,280 --> 00:07:24,360
integrators as people building 
solutions and and platforms, 

127
00:07:24,920 --> 00:07:28,320
kind of understanding how the 
models have been trained in that

128
00:07:28,320 --> 00:07:31,000
way means that we can build far 
more efficient solutions. 

129
00:07:31,000 --> 00:07:34,280
Well, talk to me a little bit 
about Fast Agent and what the 

130
00:07:34,280 --> 00:07:38,360
inspiration was behind it. 
So I mean the the inspiration 

131
00:07:38,360 --> 00:07:43,040
behind it was it's originally a 
fork of a project called MCP 

132
00:07:43,040 --> 00:07:47,560
Agent, which was a kind of an 
early framework. 

133
00:07:47,560 --> 00:07:50,960
So, and again, this has changed 
so much over the last 12 to 14 

134
00:07:50,960 --> 00:07:54,520
months that previously if you 
were looking to do LLM 

135
00:07:54,520 --> 00:07:57,960
integration, you'd be kind of 
looking at frameworks and 

136
00:07:57,960 --> 00:08:01,000
libraries and looking at the API
surface and thinking, is this 

137
00:08:01,000 --> 00:08:03,280
something that I can kind of I 
can kind of work with. 

138
00:08:03,680 --> 00:08:05,880
So you'd be out the window now. 
Yeah, exactly. 

139
00:08:05,880 --> 00:08:07,000
Yeah. 
But you'd be thinking, right, 

140
00:08:07,000 --> 00:08:10,440
Well, how is the API surface? 
Is this something that is easy 

141
00:08:10,440 --> 00:08:13,000
to use? 
There's an NCP kind of 

142
00:08:13,000 --> 00:08:17,440
accelerated that somewhat 
because with MCP, rather than 

143
00:08:17,440 --> 00:08:20,080
building your own custom tool 
functions and integrating them, 

144
00:08:20,240 --> 00:08:23,320
you, you kind of just had a 
standard way of, of doing this. 

145
00:08:23,520 --> 00:08:27,680
So the, the kind of inspiration 
there was that actually, you 

146
00:08:27,680 --> 00:08:31,920
know, you can build on the MCP 
primitives and start to build 

147
00:08:31,920 --> 00:08:33,600
some really, really complex 
applications. 

148
00:08:33,600 --> 00:08:40,000
And in particular, you know how 
it's the model context protocol,

149
00:08:40,000 --> 00:08:43,520
but particularly how you can 
load context into the model and 

150
00:08:43,520 --> 00:08:47,680
how powerful that is to actually
get that from NCP service 

151
00:08:47,720 --> 00:08:51,760
because you can, you can port 
them between other tools and 

152
00:08:51,760 --> 00:08:55,120
frameworks and you can reuse 
them in different ways. 

153
00:08:55,440 --> 00:09:00,840
So, so the, the kind of goal 
initially was to kind of build a

154
00:09:01,600 --> 00:09:05,080
almost like an inversion of 
control framework, but for using

155
00:09:05,080 --> 00:09:08,920
models and context. 
And I had specific goals in 

156
00:09:08,920 --> 00:09:11,680
mind. 
So I was looking at particular 

157
00:09:11,680 --> 00:09:15,880
use cases around kind of 
enterprise consulting, so 

158
00:09:16,560 --> 00:09:20,040
regulatory impact assessment, 
organizational design impacts. 

159
00:09:20,640 --> 00:09:23,280
And in those kind of 
environments you often want to 

160
00:09:23,280 --> 00:09:27,600
chain large chunks of of context
together, you want to integrate 

161
00:09:27,600 --> 00:09:32,080
external information. 
And so the, so the whole frame 

162
00:09:32,080 --> 00:09:35,840
was kind of designed for those 
sort of, I would call them low 

163
00:09:35,840 --> 00:09:39,880
volume innovative workflows. 
So that was kind of where it 

164
00:09:39,920 --> 00:09:41,840
went. 
And then it's become a reference

165
00:09:41,840 --> 00:09:48,760
platform for MCP to fill MCP 
specification support including 

166
00:09:48,760 --> 00:09:50,680
sampling and elicitations and 
those things. 

167
00:09:50,680 --> 00:09:56,680
And yeah, a very capable CLI and
agents as tools or sub agents 

168
00:09:56,680 --> 00:09:59,280
system which let you build some 
quite complex applications. 

169
00:09:59,520 --> 00:10:01,920
I'm not sure I've I've fully 
understood the becoming a 

170
00:10:01,920 --> 00:10:03,880
reference platform. 
Can you explain that? 

171
00:10:03,960 --> 00:10:08,320
Yeah. 
So with MCP, it's the protocol 

172
00:10:08,320 --> 00:10:10,400
itself has got quite a large 
surface area. 

173
00:10:10,600 --> 00:10:15,800
So it's split, you know, the 
high level we saw about things 

174
00:10:15,800 --> 00:10:19,040
being application controlled or 
model controlled and user 

175
00:10:19,040 --> 00:10:20,640
controlled. 
And then in each of those 

176
00:10:20,640 --> 00:10:23,600
buckets, clients and service 
have different features. 

177
00:10:24,040 --> 00:10:26,160
And of course the thing that 
we're kind of most familiar with

178
00:10:26,160 --> 00:10:29,720
is that we have NCP servers and 
they supply tools and then your 

179
00:10:29,720 --> 00:10:33,840
LLM can call the tools. 
There's a lot more sophisticated

180
00:10:33,840 --> 00:10:37,520
features in there. 
So, you know, we have resources 

181
00:10:37,520 --> 00:10:40,360
for for bringing content into 
the application. 

182
00:10:40,360 --> 00:10:42,880
You can list them and find 
those, find that content. 

183
00:10:44,320 --> 00:10:48,000
And a lot of MCP implementations
don't necessarily support that 

184
00:10:48,000 --> 00:10:51,880
full feature set. 
So for people building MCP 

185
00:10:51,880 --> 00:10:55,520
servers, it can be quite 
difficult to have a reference 

186
00:10:55,520 --> 00:10:59,280
client where you can say, right,
well, you know, I want to try 

187
00:10:59,280 --> 00:11:02,760
sampling or I want to rely on 
elicitation. 

188
00:11:03,120 --> 00:11:06,600
And so Fast Agent has been a 
great platform for people to 

189
00:11:06,600 --> 00:11:08,200
build those kind of 
integrations. 

190
00:11:08,520 --> 00:11:12,760
So it makes it very, very easy 
to connect to MCP servers in 

191
00:11:12,760 --> 00:11:16,040
development and makes it very, 
very easy to use some of those 

192
00:11:16,040 --> 00:11:18,520
advanced features and and test 
them out. 

193
00:11:19,040 --> 00:11:25,720
So it's a way for me to leverage
this working well in the way 

194
00:11:25,720 --> 00:11:29,280
that it's supposed to work and 
test if it is valuable for my 

195
00:11:29,280 --> 00:11:30,600
use case. 
Exactly. 

196
00:11:30,920 --> 00:11:37,440
And a good, a good example of 
that is so as part of the NCP 

197
00:11:37,440 --> 00:11:40,200
repository, we have a a server 
called the everything server, 

198
00:11:40,440 --> 00:11:43,800
which is an NCP server which 
contains all of these features. 

199
00:11:44,160 --> 00:11:46,880
And you can then you can then 
use all of these features so. 

200
00:11:47,280 --> 00:11:49,640
It lets you play around with it.
It's like try before you buy 

201
00:11:49,640 --> 00:11:51,960
type thing. 
Precisely, precisely so. 

202
00:11:51,960 --> 00:11:56,280
So that's quite important and 
it, it also acts as it can also 

203
00:11:56,320 --> 00:12:00,400
acts as an MCP server platform. 
So you can deploy any of these 

204
00:12:00,400 --> 00:12:05,040
kind of agentic workflows and 
tool bundles as a server itself,

205
00:12:06,520 --> 00:12:11,720
which again is hugely powerful. 
So one example of that we have 

206
00:12:11,720 --> 00:12:15,000
at the moment is the Hugging 
face. 

207
00:12:15,000 --> 00:12:18,960
We've, you know, we're quite 
keen on being very efficient 

208
00:12:18,960 --> 00:12:21,000
with people's context windows. 
Yeah. 

209
00:12:21,000 --> 00:12:25,120
So, so we have a tool which has 
got, we have a couple of tools 

210
00:12:25,120 --> 00:12:28,840
which have a very, very small 
token surface area, but give you

211
00:12:28,840 --> 00:12:32,240
a huge amount of functionality. 
OK tell me more. 

212
00:12:32,360 --> 00:12:33,400
I like this. 
Yeah. 

213
00:12:33,400 --> 00:12:38,240
So, so there's two that I think 
are probably worth talking 

214
00:12:38,240 --> 00:12:42,800
about. 
And again, kind of just playing 

215
00:12:42,800 --> 00:12:44,720
back to the previous 
conversation about reinforcement

216
00:12:44,720 --> 00:12:48,880
learning, these kind of things 
have now possible because of the

217
00:12:48,880 --> 00:12:53,400
slightly stronger models. 
Yeah, so the first of those is 

218
00:12:54,200 --> 00:12:56,320
what we call our dynamic space 
tool. 

219
00:12:57,080 --> 00:13:01,000
Now on Hugging Face, we've got a
way for people to deploy machine

220
00:13:01,000 --> 00:13:04,320
learning applications. 
So when you see a new image 

221
00:13:04,320 --> 00:13:08,440
generation model or an OCR model
or a text generation model, 

222
00:13:08,880 --> 00:13:11,560
quite often there'll be an 
application that's bundled with 

223
00:13:11,560 --> 00:13:14,920
it which you can go to and you 
can use to test the application 

224
00:13:14,920 --> 00:13:16,800
out. 
And so that's a lot of fun. 

225
00:13:16,800 --> 00:13:20,480
And we have, you know, it's a 
genuinely useful environment for

226
00:13:20,480 --> 00:13:25,840
people to deploy applications. 
We have zero GPU platforms. 

227
00:13:25,840 --> 00:13:28,400
So you can actually deploy these
applications without it costing 

228
00:13:28,400 --> 00:13:31,480
you a lot of dollars, right? 
So. 

229
00:13:31,800 --> 00:13:33,320
And you're hosting it too, 
right? 

230
00:13:33,560 --> 00:13:34,440
Yeah. 
So we, yeah. 

231
00:13:34,480 --> 00:13:38,720
So we host it the zero GPU 
platform as you deploy, for 

232
00:13:38,720 --> 00:13:41,200
example, your own image 
generator model and you can then

233
00:13:41,200 --> 00:13:44,800
use it without incurring the 
huge expense of renting A 

234
00:13:45,360 --> 00:13:51,000
renting a GPU. 
Now what the dynamic Spaces does

235
00:13:51,000 --> 00:13:54,840
is give the user the ability 
through plain natural language 

236
00:13:54,840 --> 00:13:57,360
prompting to say things like, 
well, I want to create an image,

237
00:13:57,440 --> 00:14:01,320
I want it to be photo realistic.
And then we can select the 

238
00:14:01,320 --> 00:14:05,080
appropriate machine learning 
model and dynamically generate 

239
00:14:05,080 --> 00:14:07,960
calls to that model so that you 
can then integrate it. 

240
00:14:08,520 --> 00:14:10,280
And you can say I want to change
the camera angle. 

241
00:14:10,280 --> 00:14:15,640
So we know that we have low end 
to adaptation models that can 

242
00:14:15,640 --> 00:14:18,360
change the camera angle. 
So it will then use that. 

243
00:14:18,360 --> 00:14:20,840
So you can paste an image URA in
and say, well, I want to look at

244
00:14:20,840 --> 00:14:22,600
that, look at that from a bird's
eye view. 

245
00:14:22,600 --> 00:14:25,720
I want to see the camera angle 
from a 45° image. 

246
00:14:26,080 --> 00:14:29,160
So through a kind of very, very 
narrow tool surface. 

247
00:14:29,160 --> 00:14:32,600
I think ChatGPT measured it at 
45 tokens. 

248
00:14:32,960 --> 00:14:36,360
You open up the ability to 
access. 

249
00:14:37,600 --> 00:14:39,440
Oh, that's. 
Behind infinite machine learning

250
00:14:39,440 --> 00:14:44,720
models, infinite multimodal and 
textual and audio capabilities 

251
00:14:45,840 --> 00:14:48,760
through throughout very. 
So that's kind of incredibly, 

252
00:14:49,320 --> 00:14:50,240
incredibly. 
Powerful. 

253
00:14:50,240 --> 00:14:51,760
Yeah. 
It's like a small door that 

254
00:14:51,760 --> 00:14:52,840
opens up into a mansion. 
A. 

255
00:14:52,840 --> 00:14:55,960
Small door that opens up into a 
mansion and you can then chain 

256
00:14:55,960 --> 00:14:58,480
those things together because 
the output from 1 can be used 

257
00:14:58,560 --> 00:15:00,960
for another. 
So because because we restore 

258
00:15:00,960 --> 00:15:06,320
the content. 
The second example of that is 

259
00:15:06,680 --> 00:15:08,800
our new hub query tool. 
So it's it's still labeled as 

260
00:15:08,800 --> 00:15:14,520
experimental, but one of the 
great things about our users is,

261
00:15:14,520 --> 00:15:17,200
is that when they have an 
account, they have a certain 

262
00:15:17,200 --> 00:15:19,080
amount of influence that they 
can use. 

263
00:15:20,160 --> 00:15:22,200
And that gives us the 
opportunity. 

264
00:15:22,200 --> 00:15:25,480
For example, with the new hub 
query tool, again, it's a very 

265
00:15:25,480 --> 00:15:28,200
small token surface, about a 
hundred 150 tokens. 

266
00:15:28,480 --> 00:15:32,400
But unless you just do free form
queries to to the hub and you 

267
00:15:32,400 --> 00:15:35,240
can say, you can say, you know, 
find me trending image 

268
00:15:35,240 --> 00:15:37,400
generation models which have got
a number in their name. 

269
00:15:38,040 --> 00:15:41,880
And so that call goes to the MCP
server and then it gets routed 

270
00:15:41,880 --> 00:15:46,000
to actually a fast agent MCP 
server which generates some 

271
00:15:46,000 --> 00:15:47,320
Python code. 
Yeah. 

272
00:15:47,360 --> 00:15:51,840
So we have at the moment it's 
using GPTO SS120B. 

273
00:15:51,840 --> 00:15:53,560
So it's an incredibly fast 
model. 

274
00:15:54,200 --> 00:15:58,000
And the system prompt is loaded 
with our API surface or 

275
00:15:58,000 --> 00:16:00,160
customized API surface to make 
it more efficient. 

276
00:16:00,680 --> 00:16:05,040
And we generate some Python code
in one shot, execute the code in

277
00:16:05,480 --> 00:16:09,080
a secure sandbox, we use 
Pedantics Monti framework, and 

278
00:16:09,440 --> 00:16:12,440
then we return the results. 
And we return the results 

279
00:16:12,440 --> 00:16:15,800
without post processing them 
because the LLN that called us 

280
00:16:15,800 --> 00:16:19,280
can actually do that processing.
So it's incredibly efficient. 

281
00:16:19,320 --> 00:16:21,800
And why not do any semantic 
search? 

282
00:16:21,800 --> 00:16:26,920
Or like why generate the Python 
code versus just doing some 

283
00:16:26,920 --> 00:16:28,360
hybrid search? 
Yeah. 

284
00:16:28,360 --> 00:16:32,000
So I mean, we, we have hybrid 
and semantic search, but what 

285
00:16:32,000 --> 00:16:35,120
the, what the ability to 
generate the code does is it's, 

286
00:16:35,880 --> 00:16:39,240
it allows them all to 
communicate effectively any kind

287
00:16:39,240 --> 00:16:41,120
of natural language or change 
query that you want. 

288
00:16:41,120 --> 00:16:44,800
So for example, I can say who in
the Hugging Face organization 

289
00:16:44,800 --> 00:16:48,120
follows me or gave me the GitHub
profiles of all the people in 

290
00:16:48,120 --> 00:16:51,920
the Hugging Face organization 
that follow me and do that with 

291
00:16:51,920 --> 00:16:54,720
them. 
So it gives you this kind of 

292
00:16:54,880 --> 00:16:59,080
infinite joining possibility, 
OK. 

293
00:16:59,640 --> 00:17:02,480
Yeah, yeah. 
So you can really narrow down 

294
00:17:02,480 --> 00:17:05,440
that search space or you can 
make it very unique to what 

295
00:17:05,440 --> 00:17:06,880
you're looking for. 
Yeah, precisely. 

296
00:17:06,880 --> 00:17:10,359
So I can see, for example, what,
you know, I can ask in natural 

297
00:17:10,359 --> 00:17:13,720
language terms, what models have
my followers recently liked. 

298
00:17:13,720 --> 00:17:16,280
Yeah, which again is quite use 
of information and isn't 

299
00:17:16,280 --> 00:17:18,200
something which is easily 
accessible through. 

300
00:17:18,200 --> 00:17:20,040
Yeah. 
Through filtering, yeah, yeah, 

301
00:17:20,040 --> 00:17:22,760
if you're clicking or filtering.
So it kind of gives you that, 

302
00:17:22,760 --> 00:17:25,319
those infinite possibilities. 
Have you played around? 

303
00:17:25,319 --> 00:17:27,480
This just makes me think of a 
perfect. 

304
00:17:27,480 --> 00:17:30,760
It's a perfect use case for MCP 
apps. 

305
00:17:30,960 --> 00:17:35,600
Absolutely, one of the reasons 
I'm so excited about MCP apps. 

306
00:17:35,600 --> 00:17:39,200
So when we look at the traffic 
we get to the to the Harbin, and

307
00:17:39,360 --> 00:17:41,680
this will probably sort of lead 
us to talk more about some of 

308
00:17:41,680 --> 00:17:47,720
the agentic flows is we see, you
know, a lot of usage from 

309
00:17:47,720 --> 00:17:51,200
interactive applications like 
our own chat UI platform or 

310
00:17:51,200 --> 00:17:54,640
Claude AO ChatGPT. 
So, you know, typically in that 

311
00:17:54,640 --> 00:17:59,680
mode, people are accessing it 
through through a chat interface

312
00:17:59,760 --> 00:18:01,960
and they're working with the 
content interactively. 

313
00:18:02,680 --> 00:18:05,480
And then of course we have, you 
know, agentic systems like clock

314
00:18:05,480 --> 00:18:07,440
code and someone which we'll 
we'll come back to later. 

315
00:18:08,120 --> 00:18:11,320
And so for users which are 
working with this data 

316
00:18:11,320 --> 00:18:15,720
interactively, often what 
they're doing is using the MCP 

317
00:18:15,720 --> 00:18:19,840
server for navigation. 
So they're, they're interacting 

318
00:18:19,840 --> 00:18:22,720
with the hub and they're saying,
OK, So what models are trending?

319
00:18:22,720 --> 00:18:25,480
Or I'm looking for a particular 
model in this particular 

320
00:18:25,480 --> 00:18:29,120
parameter range. 
And the thing that happens with 

321
00:18:29,280 --> 00:18:34,000
normal MCP tool calls is you, 
you, you send the tool call and 

322
00:18:34,000 --> 00:18:38,320
the, the tool returns a set of 
information and that information

323
00:18:38,320 --> 00:18:41,720
ends up in the querying models 
context window. 

324
00:18:42,400 --> 00:18:45,440
And then it generates expensive 
output tokens replaying the 

325
00:18:45,440 --> 00:18:46,960
information that the tool just 
gave you. 

326
00:18:47,560 --> 00:18:50,840
And if the model doesn't need to
do any extra processing of that 

327
00:18:50,840 --> 00:18:53,080
data, you've effectively just, 
you know, kind of burned 

328
00:18:53,080 --> 00:18:55,240
electricity. 
For no real reason. 

329
00:18:56,160 --> 00:19:01,360
And so NCP apps is a wonderful 
way to actually meet users where

330
00:19:01,360 --> 00:19:05,000
they are, particularly in those 
rich, rich chat applications, 

331
00:19:05,000 --> 00:19:08,080
because we can use the models 
where they're great for doing 

332
00:19:08,080 --> 00:19:10,640
that navigation. 
But we don't necessarily need to

333
00:19:11,120 --> 00:19:14,680
replay all of the content and 
generate expensive output tokens

334
00:19:14,680 --> 00:19:18,600
and fill the context because the
users can see can see what's 

335
00:19:18,600 --> 00:19:20,640
happening. 
And so we've done. 

336
00:19:21,240 --> 00:19:27,040
We were, we were very early in 
adopting MCPUI&MCP. 

337
00:19:27,040 --> 00:19:29,520
UI is the same as MCP apps or it
is. 

338
00:19:29,520 --> 00:19:33,040
It's not no. 
So, so MCPUI when I first came 

339
00:19:33,040 --> 00:19:36,200
across about 12 months ago, so 
the first version of the dev 

340
00:19:36,200 --> 00:19:38,440
summit, it was, I think it was 
on my kind of final slide 

341
00:19:38,440 --> 00:19:40,280
because we, we just kind of 
learned about it. 

342
00:19:40,280 --> 00:19:42,280
I was like, this is this is 
something to be excited about. 

343
00:19:43,080 --> 00:19:47,560
Anita and Liad had had been 
toying this idea where you could

344
00:19:47,560 --> 00:19:51,040
use parts of the MCP 
specifications. 

345
00:19:51,040 --> 00:19:54,280
So resources, resources in 
particular because it lets you 

346
00:19:54,480 --> 00:19:57,240
deliver arbitrary content and 
then supplementing that with, 

347
00:19:57,760 --> 00:20:01,240
with talk all information. 
And it was a, it was a great 

348
00:20:01,240 --> 00:20:05,880
pattern because it was something
that you could build into your 

349
00:20:05,880 --> 00:20:08,880
clients relatively easily. 
And it was quite easy for server

350
00:20:08,880 --> 00:20:13,320
authors to display content 
through a, you know, basically 

351
00:20:13,320 --> 00:20:15,000
through a frame, through a frame
window. 

352
00:20:16,000 --> 00:20:19,640
And that got sort of reasonable 
adoption. 

353
00:20:19,640 --> 00:20:23,520
So we, we implemented it in our 
server a hugging face because 

354
00:20:23,520 --> 00:20:25,600
there were some kind of quite 
key applications where that 

355
00:20:25,600 --> 00:20:29,520
could where that would work and 
a few other clients did the 

356
00:20:29,520 --> 00:20:30,800
same. 
And so there was, you know, 

357
00:20:30,800 --> 00:20:36,320
quite, quite neat SDK, server 
SDK and client SDK. 

358
00:20:37,120 --> 00:20:43,080
Around about that time, Open AI 
launched a very similar 

359
00:20:43,560 --> 00:20:46,200
technology called Access DK, 
which kind of built on it. 

360
00:20:46,440 --> 00:20:50,280
And it was a bit more, a bit 
more restrictive, not 

361
00:20:50,280 --> 00:20:53,880
restrictive in a bad way, but it
was far more opinionated in how 

362
00:20:53,880 --> 00:20:55,040
you should be doing these 
things. 

363
00:20:55,040 --> 00:20:55,720
Yeah. 
Was it just? 

364
00:20:55,720 --> 00:20:58,600
React components, right? 
I think it was, yeah. 

365
00:20:58,600 --> 00:21:00,680
So it's. 
React components and you needed 

366
00:21:00,680 --> 00:21:05,160
to sort of follow a particular 
set of patterns and it gave it 

367
00:21:05,160 --> 00:21:08,720
gave you some extra capabilities
around, you know, being able to 

368
00:21:08,720 --> 00:21:12,400
interact with the with the 
calling application and and the 

369
00:21:12,400 --> 00:21:16,520
window and so on. 
So it was yeah, it was a 

370
00:21:16,520 --> 00:21:20,080
slightly different direction. 
And to be honest, probably for 

371
00:21:20,080 --> 00:21:25,680
what what they needed a a better
fit because it gives you more, 

372
00:21:25,680 --> 00:21:29,440
it probably gives you a more 
cohesive user experience and 

373
00:21:29,440 --> 00:21:33,920
also meant that the applications
that were being hosted were were

374
00:21:33,920 --> 00:21:36,960
in several ways more powerful 
because of the the kind of two 

375
00:21:36,960 --> 00:21:38,680
way interaction that that that 
enabled. 

376
00:21:38,760 --> 00:21:45,360
And so fortunately those two 
kind of ideas were looked at 

377
00:21:45,440 --> 00:21:48,640
side by side and anthropic or 
involved as well. 

378
00:21:49,000 --> 00:21:51,840
And then that consolidated with 
MCP apps. 

379
00:21:52,200 --> 00:21:58,000
And so MCP apps is the official 
extension which kind of you kind

380
00:21:58,000 --> 00:22:00,520
of blends the best of all of 
those, all of those technologies

381
00:22:00,520 --> 00:22:04,840
with so MC. 
PUI morphed into MCP apps, 

382
00:22:04,880 --> 00:22:06,000
correct? 
Yeah. 

383
00:22:06,320 --> 00:22:09,280
Yes, there was. 
Another one I want to say where 

384
00:22:09,400 --> 00:22:13,440
it allows MCP to use different 
components of your website 

385
00:22:13,440 --> 00:22:16,000
easier. 
Is that web MCP? 

386
00:22:16,160 --> 00:22:19,240
Yeah, so. 
Web MCP I'm not so familiar 

387
00:22:19,240 --> 00:22:21,080
with, but yeah I. 
Haven't played around with it 

388
00:22:21,080 --> 00:22:22,480
enough either. 
Yeah, I think with. 

389
00:22:22,480 --> 00:22:26,720
Web MCP the the idea is more 
that you're able to interact 

390
00:22:27,080 --> 00:22:31,480
with browser elements directly 
so it's I think the angle there 

391
00:22:31,480 --> 00:22:34,560
is more that you can automate 
what the browser's doing rather 

392
00:22:34,560 --> 00:22:36,800
than kind of integrating within 
a chat yeah having. 

393
00:22:36,880 --> 00:22:39,920
It come into you and and do it 
through there. 

394
00:22:40,160 --> 00:22:47,600
OK, So that is how you added MCP
apps support internally. 

395
00:22:47,760 --> 00:22:50,600
So yes. 
We, we were quite early to adopt

396
00:22:50,600 --> 00:22:55,920
MCPUI because, you know, as we 
kind of discussed a lot of, a 

397
00:22:55,920 --> 00:22:58,400
lot of the models that we host 
are multimodal in nature. 

398
00:22:58,400 --> 00:23:02,320
So it gave us a way to kind of 
embed that in a, in a quite 

399
00:23:02,320 --> 00:23:05,760
clean way. 
So something that I'm planning 

400
00:23:05,760 --> 00:23:12,240
to launch actually very soon is 
proper MCP app which starts to 

401
00:23:12,240 --> 00:23:14,960
use some generative UI. 
So for example where we were 

402
00:23:14,960 --> 00:23:17,680
talking about the hub query to 
where you could ask arbitrary 

403
00:23:17,680 --> 00:23:23,000
queries, we can present the data
using a generated UI which is 

404
00:23:23,400 --> 00:23:26,040
specific for formatting the 
results of that query. 

405
00:23:26,120 --> 00:23:32,400
Been using a toolkit called 
Prefab which Jeremiah Lowens 

406
00:23:32,440 --> 00:23:34,640
roduced. 
Kind of found by accident. 

407
00:23:34,640 --> 00:23:36,360
Yeah it was funny. 
It was from the Fast. 

408
00:23:36,360 --> 00:23:38,040
MCP, I was talking to him 
yesterday. 

409
00:23:38,040 --> 00:23:39,240
Yeah, yeah, absolutely. 
Yeah. 

410
00:23:39,240 --> 00:23:40,880
So I don't know if he mentioned 
brief acts. 

411
00:23:40,880 --> 00:23:43,200
Yeah, yeah, yeah, yeah. 
This is quite funny. 

412
00:23:43,200 --> 00:23:46,640
So, so we built this query to 
where we were generating the 

413
00:23:46,640 --> 00:23:48,560
Python And returning the 
results. 

414
00:23:48,600 --> 00:23:52,440
And I was thinking, I kind of 
want a really nice way to turn 

415
00:23:52,440 --> 00:23:54,920
that into AUI. 
And it was it was late on a 

416
00:23:54,920 --> 00:24:00,160
Sunday evening and I saw on the 
on my gear hub feed the Jeremiah

417
00:24:00,160 --> 00:24:03,240
had kind of Donna commit that 
was referencing sparklines. 

418
00:24:03,240 --> 00:24:04,160
I was like, what? 
What's that? 

419
00:24:04,160 --> 00:24:06,200
So Edward Tuft, I don't know if 
you ever come across Edward 

420
00:24:06,200 --> 00:24:08,120
Tuft, he's. 
So Edward Tuft. 

421
00:24:08,120 --> 00:24:11,720
Wrote a series of books on how 
you display visual information. 

422
00:24:12,600 --> 00:24:14,960
They're beautiful books. 
He self bound and published 

423
00:24:14,960 --> 00:24:16,240
them. 
What was the name? 

424
00:24:16,560 --> 00:24:18,160
Edward. 
Edward Tuft. 

425
00:24:18,800 --> 00:24:20,640
So yeah, one of his. 
Yeah, one of. 

426
00:24:20,640 --> 00:24:24,960
His I think most famous books 
was the visual display of 

427
00:24:24,960 --> 00:24:27,200
quantitative information. 
But they they're gorgeous 

428
00:24:27,200 --> 00:24:29,120
artefacts. 
You can't, you know, don't buy, 

429
00:24:29,280 --> 00:24:31,520
don't buy non physical copies. 
Yeah, it has to. 

430
00:24:31,560 --> 00:24:34,360
Be a coffee table book you have?
Yeah. 

431
00:24:34,400 --> 00:24:36,160
A proper coffee table book. 
Yeah. 

432
00:24:36,160 --> 00:24:39,040
He's also famously wrote an 
essay called the Cognitive Style

433
00:24:39,040 --> 00:24:41,800
of PowerPoint, which kind of 
breaks down how the, you know, 

434
00:24:41,800 --> 00:24:45,200
how the challenging disaster 
could have happened because of 

435
00:24:45,200 --> 00:24:48,160
the way that, you know, people 
lay out information on 

436
00:24:48,160 --> 00:24:49,840
PowerPoint. 
It's some kind of hide the 

437
00:24:49,920 --> 00:24:53,520
important information things. 
So he's yeah, he's there's a lot

438
00:24:53,520 --> 00:24:55,760
of fun in his. 
Anyway, one of the terms he 

439
00:24:55,760 --> 00:24:57,920
coined was sparklines, which 
these kind of like small graphs 

440
00:24:57,920 --> 00:24:59,800
that fit in, fit in the space of
a word. 

441
00:25:00,160 --> 00:25:04,800
So if you're kind of looking at,
say a sequence of win losses and

442
00:25:04,800 --> 00:25:08,280
you want to show that across a 
set of 20 football teams, then a

443
00:25:08,280 --> 00:25:12,160
sparkline would kind of fit fit 
in the display so that you can 

444
00:25:12,160 --> 00:25:13,600
see that information very 
quickly. 

445
00:25:13,600 --> 00:25:16,880
So if you kind of have an up for
a win and a down for a loss, you

446
00:25:16,880 --> 00:25:18,840
can see lots of very rain downs 
data. 

447
00:25:19,080 --> 00:25:21,520
So I saw this GitHub commit and 
I was like, that's, that's 

448
00:25:21,520 --> 00:25:22,960
interesting. 
And I kind of clicked through 

449
00:25:23,080 --> 00:25:25,520
and found this library and it's 
like, hey, what's he cooking? 

450
00:25:26,360 --> 00:25:28,000
So kind of. 
Straight away he's like, well, 

451
00:25:28,000 --> 00:25:30,160
you know, you probably shouldn't
because it's going to break. 

452
00:25:30,160 --> 00:25:31,400
Because it's like, really, 
really. 

453
00:25:31,680 --> 00:25:33,000
I don't care. 
Yeah. 

454
00:25:33,440 --> 00:25:35,880
Yeah, I don't care. 
I'm happy, yeah, happy to be 

455
00:25:35,880 --> 00:25:37,400
part of the experiment. 
And it just came. 

456
00:25:37,400 --> 00:25:41,760
Out they just released it like 
Gai, I think, or at least yeah, 

457
00:25:41,760 --> 00:25:44,160
an early. 
Version So anyway, the the short

458
00:25:44,160 --> 00:25:48,240
of it is that it's a very so far
it seems to be a very, very 

459
00:25:48,240 --> 00:25:52,040
clean way of being able to turn 
kind of arbitrary content into a

460
00:25:52,040 --> 00:25:56,360
beautiful user experience 
through MCP apps and of course 

461
00:25:56,360 --> 00:25:58,720
the the advantage there and all 
Python. 

462
00:25:58,720 --> 00:26:02,120
Native, which is perfect for 
what you were doing, yeah. 

463
00:26:02,160 --> 00:26:04,960
Yeah. 
I mean, we've got, yeah, I tend 

464
00:26:04,960 --> 00:26:07,200
to jump between TypeScript and 
Python quite a lot. 

465
00:26:08,000 --> 00:26:09,680
But again, MCP makes that quite 
easy, right. 

466
00:26:09,680 --> 00:26:11,440
So we can kind of route, I was 
going to say. 

467
00:26:12,120 --> 00:26:15,320
TypeScript before the whole 
coding revolution, because I 

468
00:26:15,360 --> 00:26:17,480
definitely wasn't a no, it's 
like, all right, everything's 

469
00:26:17,480 --> 00:26:19,320
TypeScript, let's do it. 
I've got. 

470
00:26:19,320 --> 00:26:21,440
A fairly long history of 
different programming languages.

471
00:26:21,440 --> 00:26:24,240
So I I tend to I'll be honest, 
right? 

472
00:26:24,240 --> 00:26:28,440
Without LLMS I would probably 
struggle, but I find that LLMS 

473
00:26:28,440 --> 00:26:31,040
helped me with the syntax, so 
you can kind of just get the 

474
00:26:31,040 --> 00:26:35,160
ideas the ideas right. 
So I spent, I've spent a lot of,

475
00:26:35,480 --> 00:26:38,920
so quite early micrograd used to
do quite a lot of software 

476
00:26:38,920 --> 00:26:40,640
development. 
I spent quite a long time doing 

477
00:26:40,640 --> 00:26:42,640
things that aren't software 
development and I've come back 

478
00:26:42,640 --> 00:26:46,240
to it quite late. 
So see, I don't, I don't have. 

479
00:26:46,520 --> 00:26:50,000
I'm not necessarily too attached
to any particular to any 

480
00:26:50,000 --> 00:26:52,200
particular language. 
Yeah, I have. 

481
00:26:52,440 --> 00:26:55,320
I have things which frustrate me
about all programming. 

482
00:26:55,320 --> 00:26:57,560
That's for. 
Sure, as you should as. 

483
00:26:57,680 --> 00:26:59,000
Yeah, as you should. 
That's why. 

484
00:26:59,000 --> 00:27:01,440
Good. 
Products get made on top of that

485
00:27:01,440 --> 00:27:03,440
because it's like this is really
painful. 

486
00:27:03,440 --> 00:27:06,360
Maybe let's try and see if 
something's out there that can 

487
00:27:06,360 --> 00:27:07,440
fix it. 
Absolutely. 

488
00:27:07,680 --> 00:27:12,600
And we've, we've been spoiled I 
think with the quality of some 

489
00:27:12,600 --> 00:27:15,520
of the SDKS that have appeared 
over the last four or five years

490
00:27:15,520 --> 00:27:18,000
that have made really, really 
difficult jobs really quite 

491
00:27:18,000 --> 00:27:22,320
easy. 
So yeah, I think the, you know, 

492
00:27:22,320 --> 00:27:26,960
the software industry's got 
very, very good making a lot of 

493
00:27:27,160 --> 00:27:31,160
complex stuff really accessible.
Your NCP would be one example of

494
00:27:31,160 --> 00:27:34,400
that. 
But also if you think about the 

495
00:27:36,200 --> 00:27:40,560
amount of knowledge and maths 
and deployment skills that are 

496
00:27:40,560 --> 00:27:45,560
needed to run generative large 
language models, the fact that 

497
00:27:45,720 --> 00:27:49,120
pretty much anyone can build an 
LLM app in a few lines in a few 

498
00:27:49,120 --> 00:27:51,840
lines of code of it is in an. 
Afternoon session. 

499
00:27:51,960 --> 00:27:53,560
It's absolutely. 
Extraordinary. 

500
00:27:53,920 --> 00:27:55,800
Yeah. 
So we're super fortunate there. 

501
00:27:55,800 --> 00:27:58,560
I think one of the things which 
has changed over the last three 

502
00:27:58,560 --> 00:28:02,480
to four months and the way I've 
kind of described it is models 

503
00:28:02,480 --> 00:28:06,280
have got so powerful. 
The a lot of these kind of open 

504
00:28:06,280 --> 00:28:08,200
source libraries, the way I 
describe is they're kind of 

505
00:28:08,200 --> 00:28:12,160
liquefied, right? 
Because the models are able to 

506
00:28:12,200 --> 00:28:13,960
do more of the work. 
Yeah, the models. 

507
00:28:13,960 --> 00:28:16,960
Are able to kind of generate a 
lot of this kind of boilerplate 

508
00:28:16,960 --> 00:28:20,040
code. 
So what it means to own and 

509
00:28:20,040 --> 00:28:24,840
distribute a library has become 
quite different because, you 

510
00:28:24,840 --> 00:28:28,600
know, models are able to, you 
know, it's changed the value of 

511
00:28:28,600 --> 00:28:30,560
those libraries somewhat. 
Yeah, right. 

512
00:28:30,640 --> 00:28:34,280
And and again, I think that 
means that we have more talking 

513
00:28:34,280 --> 00:28:37,600
about the distribution of ideas 
rather than the distribution of 

514
00:28:38,400 --> 00:28:40,560
code, the execution. 
Of it and that's really. 

515
00:28:40,560 --> 00:28:42,000
Yeah. 
And I think that's, I think 

516
00:28:42,000 --> 00:28:46,160
that's quite an uncomfortable 
jump for for a lot of people. 

517
00:28:46,160 --> 00:28:49,440
I think the consequences of that
are still kind of sinking in. 

518
00:28:49,800 --> 00:28:51,880
But I think certainly over the 
next few months that's going to 

519
00:28:51,880 --> 00:28:53,440
be. 
Are there ones that? 

520
00:28:53,440 --> 00:28:54,920
You're thinking of, specifically
and. 

521
00:28:55,480 --> 00:28:57,360
I'm thinking more generally 
about the. 

522
00:28:59,920 --> 00:29:02,560
I think a lot of people call it 
the Opus moment, but certainly 

523
00:29:02,880 --> 00:29:08,920
the twin releases of Opus 4.5 
and GPT 53 codecs just gave 

524
00:29:09,160 --> 00:29:12,880
enough of the step change in 
coding abilities along with 

525
00:29:13,240 --> 00:29:18,800
actually simplifying harnesses. 
The that meant that, you know, 

526
00:29:18,840 --> 00:29:22,080
interacting, engaging with and 
building code became a slight 

527
00:29:22,080 --> 00:29:25,160
different experience. 
So certainly for my own usage, 

528
00:29:26,240 --> 00:29:29,640
if I think back to how I was 
using models to generate and 

529
00:29:29,640 --> 00:29:33,320
write code in May or June, it's 
completely different to how I to

530
00:29:33,320 --> 00:29:35,240
how I use them now. 
It is. 

531
00:29:36,560 --> 00:29:40,800
Wild when you hear most folks 
say, yeah, I haven't written a 

532
00:29:40,800 --> 00:29:43,720
line of code in a while now, 
yeah. 

533
00:29:44,680 --> 00:29:46,040
Yeah, like So what are? 
You doing? 

534
00:29:48,480 --> 00:29:50,480
Yeah. 
And it gives, you know, we, we, 

535
00:29:50,600 --> 00:29:53,200
it means that developers have 
some very, very different 

536
00:29:53,200 --> 00:29:56,920
trade-offs to make. 
So, you know, you're always 

537
00:29:56,920 --> 00:29:59,200
fighting entropy. 
And obviously, if you're kind of

538
00:29:59,200 --> 00:30:01,280
working with large language 
models, you're always worried 

539
00:30:01,280 --> 00:30:03,920
about entropy. 
And so trying to make sure that 

540
00:30:03,920 --> 00:30:06,440
your code bases maintain enough 
integrity and that you're 

541
00:30:06,440 --> 00:30:10,440
putting enough manual effort 
into ensuring that the quality 

542
00:30:10,440 --> 00:30:13,280
of the outputs is high enough is
kind of traded off with pure 

543
00:30:13,280 --> 00:30:16,840
speed, because models will give 
you functionality very, very 

544
00:30:16,840 --> 00:30:20,080
quickly. 
But there's a trade off around 

545
00:30:20,080 --> 00:30:24,160
the quality of the design. 
And I think that this was the 

546
00:30:24,160 --> 00:30:27,800
kind of trade off that good 
product managers were making 

547
00:30:27,800 --> 00:30:31,320
over the periods of months as 
they were building traditional 

548
00:30:31,320 --> 00:30:33,680
software products or Enterprise 
Products. 

549
00:30:34,200 --> 00:30:38,400
And now that kind of trade off 
is is kind of in front of every 

550
00:30:38,400 --> 00:30:40,640
developer's desk. 
It's in your face and you. 

551
00:30:40,640 --> 00:30:43,040
Have to decide it in a session 
like. 

552
00:30:43,040 --> 00:30:44,600
Oh yeah, yeah, absolutely. 
And. 

553
00:30:44,680 --> 00:30:47,040
You know, I come from I come 
from a world where, you know, 

554
00:30:47,040 --> 00:30:51,280
we'd be making P&L business 
cases for whether to redesign 

555
00:30:51,280 --> 00:30:53,360
parts of systems or to build new
features. 

556
00:30:53,760 --> 00:30:56,200
And as I say now that now that 
that kind of decision is at 

557
00:30:56,200 --> 00:30:59,200
every developer's desk with, you
know, do I do I maybe push the 

558
00:30:59,200 --> 00:31:03,320
model a bit harder and accept 
some accept some design debt for

559
00:31:03,320 --> 00:31:07,040
the for the speed or do I it's 
yeah, it's a very, very 

560
00:31:07,040 --> 00:31:09,920
different way of of building 
things and even. 

561
00:31:10,640 --> 00:31:15,080
I, I heard something really 
fascinating the other day where 

562
00:31:15,240 --> 00:31:17,800
folks were talking about 
migrating and migrating from one

563
00:31:17,800 --> 00:31:23,040
language to the next. 
And apparently you get better 

564
00:31:23,640 --> 00:31:28,280
performance if you migrate your 
code to Rust and then migrate it

565
00:31:28,280 --> 00:31:31,560
to another language. 
Or just basically migrating to 

566
00:31:31,560 --> 00:31:35,480
Rust will give you a little bit 
of a, it's a cheat code because 

567
00:31:35,480 --> 00:31:39,320
you get better performance since
it's so opinionated and you 

568
00:31:39,320 --> 00:31:41,120
really have to make it work with
Rust. 

569
00:31:41,320 --> 00:31:43,720
It's like New York. 
If you can make it with Rust, 

570
00:31:43,720 --> 00:31:46,640
you can make it anywhere. 
Yeah, I mean, I think. 

571
00:31:46,640 --> 00:31:49,600
To be honest, I think that's a 
great observation because I 

572
00:31:49,600 --> 00:31:52,120
think also you can take 
advantage of different language 

573
00:31:52,120 --> 00:31:56,360
and tools, dynamism versus 
strictness versus performance. 

574
00:31:56,880 --> 00:32:01,360
I mean, something which I was 
been talking about the kind of 

575
00:32:01,760 --> 00:32:06,080
the liquification of software is
we're we're now at the point, 

576
00:32:06,080 --> 00:32:08,600
particularly with open source, 
where if you if you think, well,

577
00:32:08,600 --> 00:32:11,240
I kind of want this feature, I 
want it in my in my own product.

578
00:32:11,240 --> 00:32:14,360
Do a model will happily clone a 
repo for you, look at the 

579
00:32:14,360 --> 00:32:16,480
underlying implementation and 
then reimplement it in a 

580
00:32:16,480 --> 00:32:19,360
language that that you want. 
So, yeah. 

581
00:32:19,360 --> 00:32:23,120
So again, I think you know the 
the great thing is ideas have 

582
00:32:23,120 --> 00:32:26,000
become more important than just 
writing code. 

583
00:32:26,680 --> 00:32:29,040
It is uncomfortable, but I think
that because it can't be 

584
00:32:29,040 --> 00:32:32,440
precious about your code. 
Or that what you created as 

585
00:32:32,440 --> 00:32:35,000
being yours. 
And that's the whole idea of 

586
00:32:35,000 --> 00:32:36,360
open source, right? 
It's absolutely. 

587
00:32:36,440 --> 00:32:38,760
Yeah. 
You're giving it out for anyone 

588
00:32:38,760 --> 00:32:41,240
to use. 
Yeah, but now anybody can use it

589
00:32:41,240 --> 00:32:44,120
and not even it's not yours. 
Yeah, we. 

590
00:32:44,200 --> 00:32:45,520
We. 
Do lose things, right? 

591
00:32:45,520 --> 00:32:48,040
We do lose things as a as a 
consequence of this. 

592
00:32:48,840 --> 00:32:54,680
And something that something I 
do feel quite strongly about is 

593
00:32:54,760 --> 00:33:00,040
that we we must make sure that 
software does not become a pay 

594
00:33:00,040 --> 00:33:03,960
to play activity for people that
can afford expensive models, 

595
00:33:04,200 --> 00:33:06,360
right? 
This is I think this is one of 

596
00:33:06,360 --> 00:33:09,120
the the most important things 
that we need to we need to get 

597
00:33:09,120 --> 00:33:10,640
right. 
Well, yeah, when we. 

598
00:33:10,640 --> 00:33:12,560
Saw it. 
We were just saying that Gemma 4

599
00:33:12,560 --> 00:33:14,000
came out. 
We haven't played around with it

600
00:33:14,000 --> 00:33:16,240
yet, but that's a great I'm 
looking forward to. 

601
00:33:16,240 --> 00:33:17,320
Exactly. 
Because. 

602
00:33:17,320 --> 00:33:21,680
I've seen the initial vibe 
checks and it looks really 

603
00:33:21,680 --> 00:33:25,480
strong. 
And so the thing that I often 

604
00:33:25,480 --> 00:33:29,840
wonder about though, is that if 
we're not using the expensive 

605
00:33:29,840 --> 00:33:36,200
models, you're still having to 
use a lot of your time to set up

606
00:33:36,360 --> 00:33:40,040
the 'cause you're not OK. 
I guess maybe Gemma 4, if it's a

607
00:33:40,040 --> 00:33:45,520
very small model, maybe you're 
setting it up in a few GPU's. 

608
00:33:45,520 --> 00:33:48,280
Maybe it's just one GPU. 
Yeah, I think. 

609
00:33:49,640 --> 00:33:52,640
But it can get expensive. 
I guess I'm going to say I'm. 

610
00:33:52,840 --> 00:33:58,000
Going to say something which 
isn't necessarily cheap, but 

611
00:33:58,000 --> 00:34:01,640
isn't necessarily out of the out
of question either, 

612
00:34:01,640 --> 00:34:04,440
particularly, you know, that 
particularly hugging face. 

613
00:34:04,440 --> 00:34:06,320
If you're doing something 
interesting, you should let us 

614
00:34:06,320 --> 00:34:09,800
know because obviously we're 
always interested in helping and

615
00:34:09,800 --> 00:34:13,040
promoting open source, open 
source projects, building on 

616
00:34:13,040 --> 00:34:17,880
this stuff. 
But for example, Gemma, Gemma 

617
00:34:17,880 --> 00:34:20,960
for new to me, I don't know the 
model at all, not play with it, 

618
00:34:20,960 --> 00:34:22,440
but we'll just use it as an 
example. 

619
00:34:22,440 --> 00:34:26,719
We say, right, Well, it's it's 
not as strong as GPT 54 coding. 

620
00:34:26,719 --> 00:34:31,199
It can't be right. 
And if but if you wanted to use 

621
00:34:31,199 --> 00:34:34,440
it for cost effective coding, 
are there fine tunes that you 

622
00:34:34,440 --> 00:34:37,600
could do of the model that 
worked very well for particular 

623
00:34:37,600 --> 00:34:40,239
languages and products? 
Because now you have the 

624
00:34:40,239 --> 00:34:45,280
weights, you have the ability to
to change and optimise how the 

625
00:34:45,280 --> 00:34:47,840
model works. 
So it could, you know, it could 

626
00:34:47,840 --> 00:34:52,600
easily be the case that through 
some through some application of

627
00:34:53,000 --> 00:34:54,840
specialisation and thinking, 
right. 

628
00:34:54,840 --> 00:34:57,920
Well, I want to solve, I want to
be able to write Python code 

629
00:34:57,920 --> 00:35:00,360
cheap or I want to be able to 
port from TypeScript to Rust. 

630
00:35:00,360 --> 00:35:02,960
Rust, yeah, and get. 
That lift, yeah, yeah, but. 

631
00:35:03,600 --> 00:35:07,360
The but the for some extra 
effort in the setup you could 

632
00:35:07,440 --> 00:35:09,640
you. 
To be honest, when you put that 

633
00:35:09,640 --> 00:35:12,840
kind of effort into the setup, 
you can then quite easily beat 

634
00:35:12,840 --> 00:35:15,320
state-of-the-art because you're 
specialising in one particular 

635
00:35:15,320 --> 00:35:17,960
task. 
So I'm again quite optimistic 

636
00:35:17,960 --> 00:35:22,480
that that those kind of 
techniques of opening up more 

637
00:35:22,480 --> 00:35:24,720
and more, they're becoming more 
and more accessible to people. 

638
00:35:24,720 --> 00:35:26,800
We're keen on making them very 
accessible to people. 

639
00:35:27,080 --> 00:35:29,120
Let's talk about skills. 
Because I know that you're 

640
00:35:29,320 --> 00:35:32,640
pretty passionate and you've 
probably got a few cool ones. 

641
00:35:33,000 --> 00:35:36,560
I love chatting and hearing 
about folks skills that they're 

642
00:35:36,560 --> 00:35:39,280
getting the most bang for their 
buck out of because a lot of 

643
00:35:39,280 --> 00:35:44,840
times it's not that complex and 
it's just something that is a 

644
00:35:44,840 --> 00:35:47,040
knowledge gap. 
Like when you tell me here's a 

645
00:35:47,040 --> 00:35:50,000
cool skill, I get to go 
implement that and it doesn't 

646
00:35:50,000 --> 00:35:54,920
take me hours to set up. 
If anything, it takes me maybe a

647
00:35:55,360 --> 00:35:57,920
20 minute session to create with
Claude. 

648
00:35:58,320 --> 00:36:01,480
It's just that I have to know 
what the skill is. 

649
00:36:01,480 --> 00:36:03,760
Yeah. 
So what are your most used 

650
00:36:03,760 --> 00:36:06,080
skills these days? 
So I was saying. 

651
00:36:06,080 --> 00:36:09,320
My most my most used skills, or 
certainly some of the most fun 

652
00:36:09,320 --> 00:36:11,480
ones, I'm not sure that 
necessarily fit into the most 

653
00:36:11,480 --> 00:36:16,760
used was one of them. 
So we wrote a blog post actually

654
00:36:16,760 --> 00:36:20,680
that did really, really well on 
using Claude to train other 

655
00:36:20,680 --> 00:36:23,560
models, right. 
So you don't have to use Claude 

656
00:36:23,560 --> 00:36:26,280
right. 
But it was, it's kind of a great

657
00:36:26,280 --> 00:36:28,880
headline because people get 
massively engaged and then. 

658
00:36:29,240 --> 00:36:31,600
Did. 
Open. 

659
00:36:31,720 --> 00:36:33,840
Or on sloth, they actually did 
it. 

660
00:36:33,960 --> 00:36:35,720
Yeah, yeah, yeah, yeah. 
Yeah. 

661
00:36:35,720 --> 00:36:39,760
So, yeah, so we have a, we have 
a model trainer skill and 

662
00:36:39,760 --> 00:36:48,200
similar to that, my colleague 
Mervy has got some image and 

663
00:36:48,200 --> 00:36:51,720
vision training skills so that 
you can kind of fine tune and 

664
00:36:51,720 --> 00:36:56,080
train image models, but they 
make it extraordinarily 

665
00:36:56,080 --> 00:37:00,320
accessible to actually take a 
model and walk you through the 

666
00:37:00,320 --> 00:37:04,000
options that you have. 
And then at the end of it, you 

667
00:37:04,040 --> 00:37:07,160
end up with a model that you can
run and deploy locally yourself,

668
00:37:07,160 --> 00:37:11,560
or you can deploy on our zero 
GPU infrastructure and you know,

669
00:37:11,560 --> 00:37:14,240
or classify your pets, for 
example, if you've, if you've 

670
00:37:14,400 --> 00:37:15,760
trained a vision model on your 
pets. 

671
00:37:15,960 --> 00:37:18,200
So people, people love that 
idea. 

672
00:37:18,280 --> 00:37:22,680
And one of the great things 
about those skills is you don't 

673
00:37:22,680 --> 00:37:26,600
need to be a machine language 
researcher, but you can, you can

674
00:37:26,600 --> 00:37:29,280
download the skill and it will 
walk you through the options 

675
00:37:29,280 --> 00:37:31,480
that you have and set up the 
environment. 

676
00:37:31,560 --> 00:37:35,480
And it's amazing how quick 
you've got something running. 

677
00:37:35,600 --> 00:37:38,320
How quick you can get something?
Running and yeah you may need a 

678
00:37:38,320 --> 00:37:41,040
little patience you may need to 
sort of try one or two different

679
00:37:41,040 --> 00:37:45,520
things but but yes in the model 
training skill great fun all 

680
00:37:45,640 --> 00:37:49,440
those researchers that. 
Spent years of their lives 

681
00:37:49,440 --> 00:37:53,280
learning that yeah, now it is a 
skill yeah, but we. 

682
00:37:53,680 --> 00:37:56,160
We want that because the more 
the people experiment, the more 

683
00:37:56,160 --> 00:37:59,360
that they learn and the more 
that it kind of contributes 

684
00:37:59,360 --> 00:38:01,000
back. 
Yeah, we kind of build. 

685
00:38:01,120 --> 00:38:05,720
Build more and more stuff. 
Another, another favorite of 

686
00:38:05,720 --> 00:38:10,800
mine is a skill the the hugging 
face tool builder skill. 

687
00:38:11,160 --> 00:38:15,720
And what that does is so this is
kind of, let's call it kind of 

688
00:38:15,720 --> 00:38:18,800
like a blend of code mode and 
shell, because what the skill 

689
00:38:18,800 --> 00:38:22,200
actually does is it lets you 
build your own arbitrary Hugging

690
00:38:22,200 --> 00:38:25,080
face tools. 
So our open API surface. 

691
00:38:25,080 --> 00:38:31,200
So, so the API surface is, you 
know, we let people create 

692
00:38:31,200 --> 00:38:33,880
repositories or deploy models 
and all those kind of things. 

693
00:38:34,200 --> 00:38:36,600
It's quite large. 
So what what the what the tool 

694
00:38:36,600 --> 00:38:40,600
builder does is it helps through
the shell navigate our API 

695
00:38:40,600 --> 00:38:45,080
surface and let you build custom
tools that you can then reuse or

696
00:38:45,360 --> 00:38:47,000
pipe together to do other 
things. 

697
00:38:48,760 --> 00:38:50,440
So oh. 
Interesting. 

698
00:38:50,720 --> 00:38:55,240
So you build the custom tools 
and then you're able to do those

699
00:38:55,240 --> 00:38:59,560
things that you want to do. 
And it's, maybe I'm getting 

700
00:38:59,560 --> 00:39:03,640
confused here then would you, 
it's not necessarily like 

701
00:39:03,640 --> 00:39:07,320
working with MCP, it's you have 
a skill that's building a custom

702
00:39:07,320 --> 00:39:08,680
tool. 
Exactly. 

703
00:39:08,920 --> 00:39:10,960
And yeah, yeah, so. 
Maybe so maybe. 

704
00:39:10,960 --> 00:39:13,560
You know, a regular thing that I
would want to do would be to 

705
00:39:13,720 --> 00:39:16,680
find image generation models 
that have been uploaded over the

706
00:39:16,680 --> 00:39:21,160
last 20 days, find associated 
papers with them and download 

707
00:39:21,160 --> 00:39:24,680
them in markdown. 
And then also put a like on the 

708
00:39:24,680 --> 00:39:26,360
data sets that are attached to 
them. 

709
00:39:26,360 --> 00:39:28,720
So the data sets would be some 
of maybe some of the training 

710
00:39:28,720 --> 00:39:32,920
data or, or something else. 
And so rather than, you know, 

711
00:39:32,920 --> 00:39:36,320
rather than having to spend time
kind of coding your own script 

712
00:39:36,320 --> 00:39:40,960
to do that or very inefficiently
trying to get a model to do that

713
00:39:41,080 --> 00:39:45,200
repeatedly, you can, you can use
the skill to kind of navigate it

714
00:39:45,200 --> 00:39:49,480
and then it tests it, it puts 
help text in there so that 

715
00:39:49,480 --> 00:39:53,240
models can use that. 
So same repeating replicating a.

716
00:39:53,320 --> 00:39:57,320
Certain a certain workflow in a 
way precisely so you can you. 

717
00:39:57,320 --> 00:40:01,800
Can build arbitrarily 
complicated things that use our 

718
00:40:01,800 --> 00:40:04,880
APIs, and it is literally 
arbitrarily complicated and you 

719
00:40:04,880 --> 00:40:08,560
end up with a tested component 
that is then suitable for you to

720
00:40:08,560 --> 00:40:11,520
use. 
Yourself or for models to use 

721
00:40:11,520 --> 00:40:14,800
because it generates the help 
text so you can feed feedback in

722
00:40:15,080 --> 00:40:17,160
and compose them with other with
other things. 

723
00:40:17,320 --> 00:40:19,120
So I I have a lot of fun with 
that right. 

724
00:40:19,280 --> 00:40:23,040
So yeah, that is that. 
Sounds very valuable yeah. 

725
00:40:23,040 --> 00:40:26,880
And I, I was wondering like, OK,
how does this fit with the MCP 

726
00:40:26,880 --> 00:40:33,040
server versus you create your 
own tool as a skill so with MCPI

727
00:40:33,040 --> 00:40:36,280
think? 
That we kind of still 

728
00:40:36,280 --> 00:40:39,680
discovering how people best want
to use our products and services

729
00:40:39,680 --> 00:40:42,040
with agents and chat UIS and 
those. 

730
00:40:42,720 --> 00:40:47,640
And kind of when I kind of think
about MCPI normally think about 

731
00:40:47,640 --> 00:40:51,480
it from three perspectives. 
And these perspective all have 

732
00:40:51,960 --> 00:40:54,640
actually quite different needs 
and opinions. 

733
00:40:54,680 --> 00:40:58,200
First is kind of from the 
consumer or casual perspective. 

734
00:40:58,360 --> 00:41:01,600
So these are these could be 
developers, it's not just 

735
00:41:01,600 --> 00:41:04,360
necessarily consumers, but these
people that want to quickly 

736
00:41:04,360 --> 00:41:08,280
consume what we're doing so that
they might, you know, they might

737
00:41:08,280 --> 00:41:12,200
be using claw to AI and they 
they want to click Figma, they 

738
00:41:12,200 --> 00:41:15,760
want to click linear, they want 
to click hugging face and they 

739
00:41:15,760 --> 00:41:18,800
want to be able to interact with
those services quickly and 

740
00:41:18,800 --> 00:41:21,560
easily. 
They don't want to be messing 

741
00:41:21,560 --> 00:41:26,840
around with auth and they want a
nice interactive human focused 

742
00:41:27,480 --> 00:41:31,520
environment to get things done. 
There's enterprise, which has 

743
00:41:32,120 --> 00:41:34,960
often similar, similar goals to 
the consumer because you know, 

744
00:41:34,960 --> 00:41:37,760
they tend to have quite a large 
service area of people accessing

745
00:41:37,760 --> 00:41:40,000
through chat applications. 
They have additional needs 

746
00:41:40,000 --> 00:41:43,560
around auditing and all 
regulatory compliance security. 

747
00:41:43,560 --> 00:41:46,040
Scanning all that, Yeah, yeah. 
And they're kind of it's. 

748
00:41:46,040 --> 00:41:51,720
Kind of very important to them 
to make sure that what people 

749
00:41:51,720 --> 00:41:54,240
are using and how it's being 
deployed. 

750
00:41:54,720 --> 00:41:57,680
He's safe, right? 
Because you don't, because you 

751
00:41:57,680 --> 00:42:00,920
know, if you're in an 
enterprise, if you're giving 

752
00:42:00,920 --> 00:42:04,840
people arbitrary shell access 
to, to, to computers that 

753
00:42:04,840 --> 00:42:06,720
you're, you're opening up a 
surface that you've, you've 

754
00:42:06,920 --> 00:42:10,120
probably rather not. 
So MCP works extremely well in 

755
00:42:10,120 --> 00:42:12,800
those environments because it 
gives you that kind of right, 

756
00:42:13,680 --> 00:42:18,200
that right blend of security and
flexibility that this kind of 

757
00:42:18,480 --> 00:42:21,360
super important. 
And again, you know, looking at 

758
00:42:21,400 --> 00:42:24,840
kind of that, that easy to 
consume nature of say things 

759
00:42:24,840 --> 00:42:27,720
like MCP apps or tool results 
because that's great. 

760
00:42:28,120 --> 00:42:30,920
And then the, the third 
community kind of normally think

761
00:42:30,920 --> 00:42:33,320
about is what is the kind of 
developing and development and 

762
00:42:33,320 --> 00:42:38,560
engineering community? 
And I kind of put myself in that

763
00:42:38,560 --> 00:42:40,920
bucket mostly. 
And our needs are really, really

764
00:42:41,280 --> 00:42:46,720
different and our risk profiles 
are quite different and our 

765
00:42:46,720 --> 00:42:51,520
desire to get the most out of 
the models as quickly as we can.

766
00:42:51,560 --> 00:42:54,200
You know, if a new model is 
released, then people want to be

767
00:42:54,840 --> 00:42:58,600
experimenting with it straight 
away then, you know, we, we're 

768
00:42:58,600 --> 00:43:02,440
much more comfortable with 
providing the models access to 

769
00:43:02,800 --> 00:43:05,840
more, more of our computers, 
more of our resources, let them 

770
00:43:05,840 --> 00:43:07,960
navigate around on file systems 
and so on. 

771
00:43:08,600 --> 00:43:12,880
And so kind of between the kind 
of more controlled tool surface 

772
00:43:12,880 --> 00:43:15,960
that we have with MCP and you 
know what, what you can do with 

773
00:43:17,760 --> 00:43:22,760
providing access to to your 
agents with CLIS, we kind of 

774
00:43:22,760 --> 00:43:25,600
trying to get that right, but 
also I. 

775
00:43:25,600 --> 00:43:28,360
Think. 
Because only in the conversation

776
00:43:28,360 --> 00:43:30,600
we were talking about the 
importance of reinforcement 

777
00:43:30,600 --> 00:43:33,240
learning and, and, and the shell
access. 

778
00:43:33,760 --> 00:43:37,600
When we kind of think about 
shell access for models, that 

779
00:43:37,600 --> 00:43:43,360
doesn't necessarily mean an 
insecure Yolo mode on your own 

780
00:43:43,360 --> 00:43:46,120
desktop. 
What's really, really nice about

781
00:43:46,600 --> 00:43:50,800
tools that that take bash 
commands is this extraordinarily

782
00:43:50,800 --> 00:43:56,520
token dense surface. 
And it's because the kind of 

783
00:43:56,520 --> 00:44:00,480
commands that you that you have 
with batch of things like 

784
00:44:01,040 --> 00:44:04,840
navigate through this hierarchy.
Tell me in plain text what's 

785
00:44:04,840 --> 00:44:08,800
here, Tell me the content of 
that particular file or part of 

786
00:44:08,800 --> 00:44:11,640
that file. 
So so the fact that so the fact 

787
00:44:11,640 --> 00:44:15,200
that those kind of navigation 
commands become native to the 

788
00:44:15,200 --> 00:44:17,640
model is something that we can 
exploit through all our other 

789
00:44:17,640 --> 00:44:20,120
talk, right. 
So, so when we kind of think 

790
00:44:20,120 --> 00:44:26,280
about giving access to shell, I 
think just bashes a recent a 

791
00:44:26,840 --> 00:44:28,880
recent piece of software that's 
been released. 

792
00:44:28,880 --> 00:44:30,400
Oh, I haven't seen that. 
Yes. 

793
00:44:30,400 --> 00:44:34,200
So it's again. 
It's a minimal, it's a minimal 

794
00:44:34,400 --> 00:44:36,760
surface area. 
So, you know, it doesn't give 

795
00:44:36,760 --> 00:44:40,080
you access necessarily to real 
resources of file systems, but 

796
00:44:40,080 --> 00:44:45,680
it does give an interface for 
the model to to navigate, to 

797
00:44:45,680 --> 00:44:49,160
navigate a safe area with shell 
commands because it's incredibly

798
00:44:49,160 --> 00:44:52,400
token 10's and models, models 
have been trained to do so. 

799
00:44:52,520 --> 00:44:54,160
Just bash. 
Just bash. 

800
00:44:54,400 --> 00:44:55,800
Yeah. 
All right, I'm going to check. 

801
00:44:55,800 --> 00:44:57,760
That out give me a lot of 
homework here. 

802
00:44:57,760 --> 00:45:00,800
Yeah, no, it's. 
Yeah, that's, that's good fun. 

803
00:45:00,920 --> 00:45:02,920
Yeah, OK, I need to play more 
with it. 

804
00:45:03,400 --> 00:45:06,880
Agent FS is another one which 
was quite a while. 

805
00:45:06,880 --> 00:45:09,800
It was something again I'm quite
interested in because again, we 

806
00:45:09,800 --> 00:45:12,840
can give, we can give models 
access to these capabilities 

807
00:45:12,840 --> 00:45:16,000
without the security OK 
concerns. 

808
00:45:16,360 --> 00:45:18,960
Well, yeah, that. 
Wraps it up nicely in my head 

809
00:45:18,960 --> 00:45:23,160
and that helps me bucket it for 
when I would be using MCP, when 

810
00:45:23,160 --> 00:45:27,120
I would be using just the the 
tool building skill. 

811
00:45:27,440 --> 00:45:30,880
And it also, I was thinking 
about it as like when I want a 

812
00:45:30,880 --> 00:45:35,400
very custom type of workflow, 
It's probably that tool building

813
00:45:35,400 --> 00:45:39,520
skill that I'm going to go with.
But I also AM in your case, like

814
00:45:39,760 --> 00:45:43,880
a hobbyist or a developer that 
can run fast and loose. 

815
00:45:44,040 --> 00:45:47,480
I'm not doing this in my 
enterprise and I don't need to 

816
00:45:47,960 --> 00:45:50,680
worry about all the other fun 
enterprise Y things. 

817
00:45:50,720 --> 00:45:52,160
Yeah. 
And the the I mean. 

818
00:45:54,200 --> 00:45:59,160
The really kind of the fun and 
exciting part for well, semi for

819
00:45:59,160 --> 00:46:03,640
me at the moment is, you know, 
I'm kind of really enjoying 

820
00:46:03,720 --> 00:46:06,920
having models and agents with 
flat so much. 

821
00:46:06,920 --> 00:46:08,520
You have to do all this kind of 
stuff really quickly. 

822
00:46:08,760 --> 00:46:11,680
But the fact that we can then 
also provide similar experiences

823
00:46:11,680 --> 00:46:15,000
in a in a safe sandboxed 
environment exposed through 

824
00:46:15,080 --> 00:46:17,960
those kind of consumer 
applications is extraordinary. 

825
00:46:18,040 --> 00:46:22,240
I mean, you know, the kind of 
things that the people can do 

826
00:46:22,240 --> 00:46:25,960
with natural language and how 
rich we can make the experience 

827
00:46:25,960 --> 00:46:28,680
of people using natural 
languages is superb. 

828
00:46:28,880 --> 00:46:30,840
Right. 
And we, you don't lose anything 

829
00:46:30,840 --> 00:46:32,600
from the lower layers by doing 
that. 

830
00:46:32,680 --> 00:46:34,560
Yeah. 
It just makes everything more 

831
00:46:34,560 --> 00:46:36,840
accessible. 
And the more accessible things 

832
00:46:36,840 --> 00:46:39,400
are, the the more valuable 
people can add on top of it. 

833
00:46:39,400 --> 00:46:42,520
Because they're not, they're not
struggling with, you know, 

834
00:46:42,520 --> 00:46:44,440
they're not struggling with 
things that people should, just 

835
00:46:44,440 --> 00:46:46,040
shouldn't be struggling with, 
with computers.

