Search

115 code results for embeddings

Code
115

f-hosted local inference gateway for text/audio/vision/embeddings without changing NCA PRIMARY S
const OPENAI_EMBEDDINGS_MODEL = "text-embedding-3-small";
const PINECONE_API_VERSION = "2024-10";
async function embedQuery(query: string, apiKey: string): Promise<number[]> {
const res = await fetch("https://api.openai.com/v1/embeddings", {
method: "POST",
},
body: JSON.stringify({ model: OPENAI_EMBEDDINGS_MODEL, input: query }),
});
if (!res.ok) {
throw new Error(`OpenAI embeddings request failed (${res.status}): ${await res.text()}`);
}
/^\/api\/v1\/chat\/completions$/,
/^\/api\/v1\/embeddings$/,
/^\/api\/v1\/models$/,
const data = await resp.json();
return data.embeddings.map((e: any) => e.values);
}
const allTexts = [query, ...candidates];
const embeddings = await embedBatch(allTexts);
const queryVec = embeddings[0];
const candVecs = embeddings.slice(1);
text:
"NVIDIA embeddings help convert text into vector representations for similarity search",
metadata: { category: "ai", tags: ["nvidia", "embeddings"] },
},
import { GpuContext } from "./gpu-core.ts";
import { Embeddings } from "./model-embeddings.ts";
import { TransformerBlock } from "./model-block.ts";
export class Transformer {
emb: Embeddings;
blocks: TransformerBlock[];
this.cfg = cfg;
this.emb = new Embeddings(cfg.vocabSize, cfg.dim, cfg.maxSeqLen);
this.blocks = Array.from(
export class Embeddings {
token: TokenEmbedding;
// Embeddings: tok + pos
const x0: number[][] = [];
// Embeddings: tok + pos
const x0: number[][] = [];
// Embeddings
const x0: number[][] = [];
A simple interface for making and querying Pinecone vector databases. Use OpenAI
embeddings to vectorize and search
async function generateQueryEmbedding(query: string): Promise<number[]> {
const response = await openai.embeddings.create({
model: EMBEDDING_MODEL,
const PINECONE_INDEX_NAME = Deno.env.get("PINECONE_INDEX_NAME") ||
"aws-ring-embeddings-small";
const PINECONE_DIMENSIONS = parseInt(
);
const OPENAI_EMBEDDINGS_MODEL = Deno.env.get("OPENAI_EMBEDDINGS_MODEL") ||
"text-embedding-3-small";
async function embedQuestion(question: string): Promise<number[]> {
const response = await openai.embeddings.create({
model: OPENAI_EMBEDDINGS_MODEL,
input: question,
// Step 1: embeddings
const { result: embedding, ms: embedMs } = await timeStep(
import type { Page, SearchOptions, SearchResult } from "./types.ts";
// import { searchStrategy, generateEmbeddings } from "./placeholder.ts";
// import { searchStrategy, generateEmbeddings } from "./jigsawstack-orama.ts"; // ~550ms query
// import { searchStrategy, generateEmbeddings } from "./openai-orama.ts"; // ~100-200ms query e
// import { searchStrategy, generateEmbeddings } from "./openai-cosine.ts"; // ~100-200ms query
// import { searchStrategy, generateEmbeddings } from "./mixedbread-embeddings-cosine.ts"; // Mi
// import { searchStrategy, generateEmbeddings } from "./mixedbread.ts"; // Mixedbread Stores (m
// import { searchStrategy, generateEmbeddings } from "./hf-inference-qwen3-cosine.ts"; // HF In
import { searchStrategy, generateEmbeddings } from "./cloudflare-bge-cosine.ts"; // Cloudflare W
// import { searchStrategy, generateEmbeddings } from "./transformers-cosine.ts"; // ~10-30ms (l
// import { searchStrategy, generateEmbeddings } from "./transformers-local-onnx.ts"; // ~10-30m
// Embeddings function for recalculate - uses same import as search strategy
export const getActiveEmbeddingsFunction = (): ((content: string) => Promise<number[] | null>) =
return generateEmbeddings;
};
// Transformers.js + Cosine Similarity Strategy: Local embeddings in browser/Deno
// Fastest option - no API calls, runs entirely client-side
// Load feature extraction pipeline with all-MiniLM-L6-v2 model
// This is a small, fast model optimized for embeddings (~86MB, ~384 dims)
// Downloads from Hugging Face on first run, then uses cache (~150ms vs several seconds)
// Generate embeddings using transformers.js (runs locally, no API calls)
export const generateEmbeddings = async (content: string): Promise<number[] | null> => {
try {
// Generate embeddings - returns a tensor, we need to extract the array
const output = await pipeline(content, {
const errorMessage = error instanceof Error ? error.message : String(error);
console.error("Transformers.js embeddings failed:", errorMessage);
return null;
name: "transformers-cosine",
cription: "Semantic search using Transformers.js local embeddings with cosine similarity (fastes
search: async (query: string, pages: Page[], options: SearchOptions = {}): Promise<SearchResul
const queryEmbedStart = performance.now();
const queryEmbedding = await generateEmbeddings(query);
if (enableTiming) {
for (const page of pages) {
const pageEmbedding = page.embeddings;
if (!pageEmbedding || pageEmbedding.length !== queryEmbedding.length) {
continue; // Skip pages without embeddings or wrong dimension
}