MCPcopy Index your code
hub / github.com/abetlen/llama-cpp-python / _locate_prefix_node

Method _locate_prefix_node

examples/server/server.py:853–876  ·  view source on GitHub ↗
(
        self,
        sequence_id: int,
        keep_len: int,
    )

Source from the content-addressed store, hash-verified

851 return middle
852
853 def _locate_prefix_node(
854 self,
855 sequence_id: int,
856 keep_len: int,
857 ) -> "RadixTrie.Node":
858 total_len = self.sequence_lengths[sequence_id]
859 assert 0 <= keep_len <= total_len
860 if keep_len == 0:
861 return self.root
862 node = self.sequences[sequence_id]
863 drop_len = total_len - keep_len
864 while node is not self.root:
865 label_len = len(node.label)
866 if drop_len == 0:
867 return node
868 if drop_len < label_len:
869 parent = node.parent
870 assert parent is not None
871 return self._split_child(parent, node, label_len - drop_len)
872 drop_len -= label_len
873 parent = node.parent
874 assert parent is not None
875 node = parent
876 return self.root
877
878 def extend(
879 self,

Callers 2

truncateMethod · 0.95
copyMethod · 0.95

Calls 1

_split_childMethod · 0.95

Tested by

no test coverage detected