360 Secure SkillHub
360 安全技能中心

Embeddings

提供向量嵌入端到端参考:比较 OpenAI、Cohere、Voyage 与本地模型的选型,列出分块重叠、归一化、批处理、缓存等关键规则,覆盖 Pinecone、Weaviate、Qdrant、pgvector、Chroma 等向量存储与 top-k 相似度检索模式,并附 Python 示例片段与选型决策清单。

ivangdavila
ivangdavila
热度 88.93
最近更新 2026-05-11 16:51:50
分类:开发依赖:第三方 API / 代码执行应用场景:API 集成 / 数据处理 / 代码生成

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add embeddings
Metadata
name
Embeddings
slug
embeddings
description
Generate, store, and search vector embeddings with provider selection, chunking strategies, and similarity search optimization.

When to Use

User wants to convert text/images to vectors, build semantic search, or integrate embeddings into applications.

Quick Reference

Topic File
Provider comparison & selection providers.md
Chunking strategies & code chunking.md
Vector database patterns storage.md
Search & retrieval tuning search.md

Core Capabilities

  1. Generate embeddings — Call provider APIs (OpenAI, Cohere, Voyage, local models)
  2. Chunk content — Split documents with overlap, semantic boundaries, token limits
  3. Store vectors — Insert into Pinecone, Weaviate, Qdrant, pgvector, Chroma
  4. Similarity search — Query with top-k, filters, hybrid search
  5. Batch processing — Handle large datasets with rate limiting and retries
  6. Model comparison — Evaluate embedding quality for specific use cases

Decision Checklist

Before recommending approach, ask:

  • What content type? (text, code, images, multimodal)
  • Volume and update frequency?
  • Latency requirements? (real-time vs batch)
  • Budget constraints? (API costs vs self-hosted)
  • Existing infrastructure? (cloud provider, database)

Critical Rules

  • Same model everywhere — Query embeddings MUST use identical model as document embeddings
  • Normalize before storage — Most similarity metrics assume unit vectors
  • Chunk with overlap — 10-20% overlap prevents context loss at boundaries
  • Batch API calls — Never embed one item at a time in production
  • Cache embeddings — Regenerating is expensive; store with source hash
  • Monitor dimensions — Higher isn't always better; 768-1536 is usually optimal

Provider Quick Selection

Need Provider Why
Best quality, any cost OpenAI text-embedding-3-large Top benchmarks
Cost-sensitive OpenAI text-embedding-3-small 5x cheaper, 80% quality
Multilingual Cohere embed-multilingual-v3 100+ languages
Code/technical Voyage voyage-code-2 Optimized for code
Privacy/offline Local (e5, bge, nomic) No data leaves machine
Images OpenAI CLIP, Cohere multimodal Cross-modal search

Common Patterns

# Batch embedding with retry
def embed_batch(texts, model="text-embedding-3-small"):
    results = []
    for chunk in batched(texts, 100):  # API limit
        response = client.embeddings.create(input=chunk, model=model)
        results.extend([e.embedding for e in response.data])
    return results

# Similarity search with filter
results = index.query(
    vector=query_embedding,
    top_k=10,
    filter={"category": "technical"},
    include_metadata=True
)