Skip to content

Graphorin API reference v0.15.1


Graphorin API reference / @graphorin/core / / Provider

Interface: Provider ​

Defined in: packages/core/src/contracts/provider.ts:18

Stable

Vendor-neutral LLM provider interface. Concrete adapters live in @graphorin/provider (and companion packages such as @graphorin/provider-llamacpp-node).

Every provider exposes a name (used in spans / logs), the modelId it wraps, a static capabilities descriptor, and the two streaming / one-shot generation methods.

Properties ​

PropertyModifierTypeDescriptionDefined in
acceptsSensitivity?readonlyreadonly Sensitivity[]Sensitivity tiers this provider is allowed to receive. Used by the ContextEngine sensitivity filter and the outbound redaction middleware to decide what content is safe to forward.packages/core/src/contracts/provider.ts:37
capabilitiesreadonlyProviderCapabilities-packages/core/src/contracts/provider.ts:21
modelIdreadonlystring-packages/core/src/contracts/provider.ts:20
namereadonlystring-packages/core/src/contracts/provider.ts:19

Methods ​

countTokens()? ​

ts
optional countTokens(req): Promise<number>;

Defined in: packages/core/src/contracts/provider.ts:30

Optional: provider-native input token counter.

Parameters ​

ParameterType
reqProviderRequest

Returns ​

Promise&lt;number&gt;


generate() ​

ts
generate(req): Promise<ProviderResponse>;

Defined in: packages/core/src/contracts/provider.ts:27

Convenience wrapper that consumes the stream into a single result.

Parameters ​

ParameterType
reqProviderRequest

Returns ​

Promise&lt;ProviderResponse&gt;


stream() ​

ts
stream(req): AsyncIterable<ProviderEvent>;

Defined in: packages/core/src/contracts/provider.ts:24

Returns an async stream of fine-grained provider events.

Parameters ​

ParameterType
reqProviderRequest

Returns ​

AsyncIterable&lt;ProviderEvent&gt;