QVAC Logo

@qvac/sdk

API reference — v0.8.0

Overview

@qvac/sdk npm package exposes a function-centric, typed JS API.

Functions

FunctionSummarySignature
cancel()Cancels an ongoing operation.cancel(params: { modelId: string; operation: "inference" } | { clearCache?: boolean; downloadKey: string; operation: "downloadAsset" } | { operation: "rag"; workspace?: string }): Promise
close()No description availableclose(): Promise
completion()Generates completion from a language model based on conversation history.completion(params: CompletionParams): { stats: Promise<{ cacheTokens: number; timeToFirstToken: number; tokensPerSecond: number } | undefined>; text: Promise<string>; tokenStream: AsyncGenerator<string>; toolCalls: Promise<ToolCallWithCall[]>; toolCallStream: AsyncGenerator<{ call: { arguments: Record<string, unknown>; id: string; name: string; raw?: string }; type: "toolCall" } | { error: { code: "PARSE_ERROR" | "VALIDATION_ERROR" | "UNKNOWN_TOOL"; message: string; raw?: string }; type: "toolCallError" }> }
defineHandler()Helper function to define a handler with full type inference.defineHandler(definition: PluginHandlerDefinition): PluginHandlerDefinition
definePlugin()Helper function to define a plugin with full type inference.definePlugin(plugin: T): T
deleteCache()Deletes KV cache files.deleteCache(params: { all: true } | { kvCacheKey: string; modelId?: string }): Promise
downloadAsset()Downloads an asset (model file) without loading it into memory.downloadAsset(options: DownloadAssetOptions, rpcOptions?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
embed()Generates embeddings for a single text using a specified model.embed(params: { modelId: string; text: string }, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
getLogger()No description availablegetLogger(namespace: string, options?: LoggerOptions): Logger
getModelByName()No description availablegetModelByName(name: string): RegistryItem | undefined
getModelByPath()No description availablegetModelByPath(registryPath: string): RegistryItem | undefined
getModelBySrc()No description availablegetModelBySrc(modelId: string, blobCoreKey: string): RegistryItem | undefined
getModelInfo()No description availablegetModelInfo(params: { name: string }): Promise
invokePlugin()Invoke a non-streaming plugin handler.invokePlugin(options: InvokePluginOptions, rpcOptions?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
invokePluginStream()Invoke a streaming plugin handler.invokePluginStream(options: InvokePluginOptions, rpcOptions?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): AsyncGenerator
loadModel()Loads a machine learning model from a local path, remote URL, or Hyperdrive key.loadModel(options: LoadModelOptions, rpcOptions?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
loggingStream()Opens a logging stream to receive real-time logs.loggingStream(params: { id: string }): AsyncGenerator
modelRegistryGetModel()No description availablemodelRegistryGetModel(registryPath: string, registrySource: string): Promise
modelRegistryList()No description availablemodelRegistryList(): Promise
modelRegistrySearch()No description availablemodelRegistrySearch(params: ModelRegistrySearchParams): Promise
ocr()Performs Optical Character Recognition (OCR) on an image to extract text.ocr(params: OCRClientParams): { blocks: Promise<{ bbox?: [number, number, number, number]; confidence?: number; text: string }[]>; blockStream: AsyncGenerator<{ bbox?: [number, number, number, number]; confidence?: number; text: string }[]>; stats: Promise<{ detectionTime?: number; recognitionTime?: number; totalTime?: number } | undefined> }
ping()Sends a ping request to the server and returns the pong response.ping(): Promise
ragChunk()Chunks documents into smaller pieces for embedding.ragChunk(params: { chunkOpts?: { chunkOverlap?: number; chunkSize?: number; chunkStrategy?: "character" | "paragraph"; splitStrategy?: "character" | "word" | "token" | "sentence" | "line" }; documents: string | string[] }, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
ragCloseWorkspace()Closes a RAG workspace, releasing in-memory resources (Corestore, HyperDB adapter, RAG instance).ragCloseWorkspace(params?: { deleteOnClose?: boolean; workspace?: string }, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
ragDeleteEmbeddings()Deletes document embeddings from the RAG vector database.ragDeleteEmbeddings(params: { ids: string[]; modelId?: string; workspace?: string }, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
ragDeleteWorkspace()Deletes a RAG workspace and all its data.ragDeleteWorkspace(params: { workspace: string }, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
ragIngest()Ingests documents into the RAG vector database.ragIngest(params: RagIngestParams, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
ragListWorkspaces()Lists all RAG workspaces with their open status.ragListWorkspaces(options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
ragReindex()Reindexes the RAG database to optimize search performance.ragReindex(params: RagReindexParams, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
ragSaveEmbeddings()Saves pre-embedded documents to the RAG vector database.ragSaveEmbeddings(params: RagSaveEmbeddingsParams, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
ragSearch()Searches for similar documents in the RAG vector database.ragSearch(params: { modelId: string; n?: number; query: string; topK?: number; workspace?: string }, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
startQVACProvider()Starts a provider service that offers QVAC capabilities to remote peers.startQVACProvider(params: { firewall?: { mode: "allow" | "deny"; publicKeys: string[] }; topic: string }): Promise
stopQVACProvider()Stops a running provider service and leaves the specified topic.stopQVACProvider(params: { topic: string }): Promise
textToSpeech()No description availabletextToSpeech(params: { inputType: string; modelId: string; stream: boolean; text: string }, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): { buffer: Promise<number[]>; bufferStream: AsyncGenerator<number>; done: Promise<boolean> }
transcribe()This function provides a simple interface for transcribing audio by
collecting all streaming results into a single string response.transcribe(params: TranscribeClientParams, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): Promise
transcribeStream()This function streams audio transcription results in real-time, yielding
text chunks as they become available from the model.transcribeStream(params: TranscribeClientParams, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): AsyncGenerator
translate()Translates text from one language to another using a specified translation model.translate(params: TranslateClientParams, options?: { forceNewConnection?: boolean; profiling?: { enabled?: boolean; includeServerBreakdown?: boolean; mode?: "summary" | "verbose" }; timeout?: number }): { stats: Promise<{ processedTokens: number; processingTime: number } | undefined>; text: Promise<string>; tokenStream: AsyncGenerator<string> }
unloadModel()Unloads a previously loaded model from the server.unloadModel(params: { clearStorage?: boolean; modelId: string }): Promise

Errors

See Errors for the full list of SDK error codes.

On this page