node-llama-cpp
Version:
Run AI models locally on your machine with node.js bindings for llama.cpp. Enforce a JSON schema on the model output on the generation level
39 lines (38 loc) • 1.3 kB
TypeScript
import { Token, Tokenizer } from "../types.js";
export declare class TokenStreamRegulator {
addChunk({ tokens, text }: {
tokens: Token[];
text: string;
}): QueuedTokenRelease;
popFreeChunkTokens(): Token[];
getPartiallyFreeChunk(tokenizer: Tokenizer): {
tokens: Token[];
text: string;
};
getAllQueuedChunkTokens(): Token[];
getLastQueuedChunkTokens(maxTokens?: number): Token[];
clearQueue(): void;
reset(): void;
removeChunkIfLast(queuedTokenRelease: QueuedTokenRelease | undefined): boolean;
}
export declare class QueuedTokenRelease {
private constructor();
get tokens(): readonly Token[];
get text(): string;
get isFree(): boolean;
get hasTextLocks(): boolean;
get hasTokenLocks(): boolean;
get isPartiallyFree(): boolean;
getFreeTextIndex(): number;
getFreeTokenIndex(): number;
createTextIndexLock(startIndex: number): QueuedTokenReleaseLock;
createTokenIndexLock(startIndex: number): QueuedTokenReleaseLock;
modifyTokensAndText(tokens: readonly Token[], text: string): void;
}
export declare class QueuedTokenReleaseLock {
private constructor();
get index(): number;
duplicate(): QueuedTokenReleaseLock;
dispose(): void;
[Symbol.dispose](): void;
}