This is the way how Base Julia is designed, so there is nothing we can do about this limitation.
julia> nt = (a=1,b=2,c=3)
(a = 1, b = 2, c = 3)
julia> nt[1:2]
ERROR: MethodError: no method matching getindex(::NamedTuple{(:a, :b, :c), Tuple{Int64, Int64, Int64}}, ::UnitRange{Int64})
You can write: sum(collect(x)[1:2]). Unfortunately this will have a performance impact.