Cloud The core runtime is open source and free. TekMemo Cloud (hosted sync, managed MCP, team features) is in early access. Join the waitlist →
Skip to content

Provider Adapters

TekMemo provides official standalone adapter packages for industry-leading embedding and reranking models. Each adapter implements the standard MemoryEmbedder contract from @tekbreed/tekmemo.

OpenAI (@tekbreed/tekmemo-adapter-openai)

Exposes embedding integration for OpenAI's text-embedding-3-* and ada-002 models.

Installation

bash
npm install @tekbreed/tekmemo-adapter-openai @tekbreed/tekmemo

Usage

ts
import { createOpenAIEmbedder } from "@tekbreed/tekmemo-adapter-openai";

const embedder = createOpenAIEmbedder({
  apiKey: process.env.OPENAI_API_KEY,
  model: "text-embedding-3-small",
  dimensions: 1536,
});

const results = await embedder.embedTexts({
  texts: ["This is a test document.", "Another piece of memory."],
});

Use with the Tekmemo class:

ts
import { Tekmemo } from "@tekbreed/tekmemo";
import { createOpenAIEmbedder } from "@tekbreed/tekmemo-adapter-openai";

const memo = new Tekmemo({
  rootDir: "./.tekmemo",
  projectId: "my-app",
  embedder: createOpenAIEmbedder({ apiKey: process.env.OPENAI_API_KEY! }),
});

VoyageAI (@tekbreed/tekmemo-adapter-voyage)

High-performance embedding and reranking integration for Voyage's specialized models (e.g. voyage-large-2, voyage-code-2).

Installation

bash
npm install @tekbreed/tekmemo-adapter-voyage @tekbreed/tekmemo

Usage

ts
import { createVoyageEmbedder } from "@tekbreed/tekmemo-adapter-voyage";

const embedder = createVoyageEmbedder({
  apiKey: process.env.VOYAGE_API_KEY,
  model: "voyage-2",
});

const results = await embedder.embedTexts({
  texts: ["How does the billing system work?", "Explain the graph schema."],
});

Transformers.js — local (@tekbreed/tekmemo-adapter-transformers)

A zero-config local ONNX embedder that runs in process via Transformers.js — no API key, no cloud. This is the adapter that powers TekMemo's zero-API-key hybrid recall: with recall.localEmbeddings enabled, the runtime lazy-loads it on the first recall and recall.engine: "auto" upgrades to hybrid retrieval.

Installation

bash
npm install @tekbreed/tekmemo-adapter-transformers @tekbreed/tekmemo

Usage

ts
import { createTransformersEmbedder } from "@tekbreed/tekmemo-adapter-transformers";

// Defaults to Xenova/all-MiniLM-L6-v2 (384-dim); model downloads once then runs offline
const embedder = createTransformersEmbedder();

const { embeddings } = await embedder.embedTexts({
  texts: ["User prefers TypeScript.", "Authentication uses bearer tokens."],
});

You usually do not need to construct it yourself — set recall.localEmbeddings (see Configuration) and the runtime wires it up lazily. If the adapter is missing or fails, recall falls back to the lexical (BM25 + fuzzy) path.

Best for offline/private/single-machine agent memory; for large shared indices, prefer a provider embedder above plus a managed vector store.

Shared provider features

The OpenAI and Voyage adapters share:

  • Batching: Automatically handles large text arrays by splitting them into batches that fit the provider's limits.
  • Retries: Configurable exponential backoff for network and rate-limit errors.
  • Validation: Strict validation of dimensions, model names, and input lengths.
  • Error Mapping: Converts raw API errors into typed TekMemo errors.

Released under the MIT License.