Pinecone hosted inference on api.pinecone.io: generate embeddings and rerank documents, without an index.

Functions

build-embed-body

fn (model: Str, texts: Vec, parameters: Any): Map

The POST /embed body: inputs as [{text}], plus parameters when given (e.g. {input_type: "passage", truncate: "END"}). Exposed for testing.

build-rerank-body

fn (model: Str, query: Str, documents: Vec, options: Map): Map

The POST /rerank body: documents may be strings (sent as {text}) or Maps; set options among top_n, return_documents, rank_fields, parameters are included. Exposed for testing.

embed

fn (model: Str, texts: Vec): Map
fn (model: Str, texts: Vec, parameters: Map): Map
fn (model: Str, texts: Vec, parameters: Map?, opts: Map): Map

POST /embed - Embed texts with a hosted model, e.g. "llama-text-embed-v2" (dense), "multilingual-e5-large" (dense), or "pinecone-sparse-english-v0" (sparse). parameters is model-specific; most dense models want input_type ("passage" for documents, "query" for questions). Returns {model, vector_type, data: [{values}] or [{sparse_values, sparse_indices}], usage}.

Example

out ::pinecone::inference/embed("llama-text-embed-v2", ["Hot runs workflows."], {input_type: "passage"})
first(out.data).values
Context Vars: pinecone.api.key

rerank

fn (model: Str, query: Str, documents: Vec): Map
fn (model: Str, query: Str, documents: Vec, options: Map): Map
fn (model: Str, query: Str, documents: Vec, options: Map, opts: Map): Map

POST /rerank - Order documents by relevance to query with a hosted reranker ("bge-reranker-v2-m3", "pinecone-rerank-v0", "cohere-rerank-4-fast"). options: top_n, return_documents (default true), rank_fields (default ["text"]), parameters. Returns {model, data: [{index, score, document?}], usage}, best first; index points into documents.

Example

out ::pinecone::inference/rerank("bge-reranker-v2-m3", "What is Hot?", [
  "Hot is a workflow language.",
  "Pinecone is a vector database."
], {top_n: 1})
first(out.data).index
Context Vars: pinecone.api.key