Loading...
  • Erstellen
  • Admin
  • Modelle & Preise
  • Client-SDKs
  • API-Referenz
Search...
⌘K
Log in
Embeddings
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Erstellen/Modellfähigkeiten

Embeddings

Text Embeddings sind numerische Darstellungen von Text, die es ermöglichen, semantische Ähnlichkeit zu messen. Dieser Leitfaden führt in Embeddings ein, ihre Anwendungen und wie man Embedding-Modelle für Aufgaben wie Suche, Empfehlungen und Anomalieerkennung verwendet.

Was this page helpful?

  • Vor der Implementierung von Embeddings
  • Wie man Embeddings mit Anthropic erhält
  • Verfügbare Modelle
  • Erste Schritte mit Voyage AI
  • Voyage Python-Bibliothek
  • Voyage HTTP API
  • AWS Marketplace
  • Schnellstart-Beispiel
  • FAQ
  • Preisgestaltung

Vor der Implementierung von Embeddings

Bei der Auswahl eines Embeddings-Anbieters gibt es mehrere Faktoren, die Sie je nach Ihren Anforderungen und Vorlieben berücksichtigen können:

  • Datensatzgröße & Domänenspezifität: Größe des Modelltrainingsdatensatzes und seine Relevanz für die Domäne, die Sie einbetten möchten. Größere oder domänenspezifischere Daten führen in der Regel zu besseren domäneninternen Embeddings
  • Inferenzleistung: Geschwindigkeit der Embedding-Suche und End-to-End-Latenz. Dies ist eine besonders wichtige Überlegung für großflächige Produktionsbereitstellungen
  • Anpassung: Optionen für fortgesetzte Schulung auf privaten Daten oder Spezialisierung von Modellen für sehr spezifische Domänen. Dies kann die Leistung bei einzigartigen Vokabularen verbessern

Wie man Embeddings mit Anthropic erhält

Anthropic bietet kein eigenes Embedding-Modell an. Ein Embeddings-Anbieter, der eine große Vielfalt an Optionen und Funktionen bietet, die alle oben genannten Überlegungen umfassen, ist Voyage AI.

Voyage AI erstellt hochmoderne Embedding-Modelle und bietet angepasste Modelle für spezifische Industriebereiche wie Finanzen und Gesundheitswesen oder maßgeschneiderte feinabgestimmte Modelle für einzelne Kunden.

Der Rest dieses Leitfadens ist für Voyage AI, aber Sie sollten eine Vielzahl von Embeddings-Anbietern bewerten, um die beste Lösung für Ihren spezifischen Anwendungsfall zu finden.

Verfügbare Modelle

Voyage empfiehlt die Verwendung der folgenden Text-Embedding-Modelle:

ModellKontextlängeEmbedding-DimensionBeschreibung
voyage-3-large32.0001024 (Standard), 256, 512, 2048Die beste allgemeine und mehrsprachige Abrufqualität. Siehe Blog-Beitrag für Details.
voyage-3.532.0001024 (Standard), 256, 512, 2048Optimiert für allgemeine und mehrsprachige Abrufqualität. Siehe Blog-Beitrag für Details.
voyage-3.5-lite32.0001024 (Standard), 256, 512, 2048Optimiert für Latenz und Kosten. Siehe Blog-Beitrag für Details.
voyage-code-332.0001024 (Standard), 256, 512, 2048Optimiert für Code-Abruf. Siehe Blog-Beitrag für Details.
voyage-finance-232.0001024Optimiert für Finanz-Abruf und RAG. Siehe für Details.

Zusätzlich werden die folgenden multimodalen Embedding-Modelle empfohlen:

ModellKontextlängeEmbedding-DimensionBeschreibung
voyage-multimodal-3320001024Reichhaltiges multimodales Embedding-Modell, das verschachtelte Text- und inhaltsreiche Bilder wie Screenshots von PDFs, Folien, Tabellen, Abbildungen und mehr vektorisieren kann. Siehe Blog-Beitrag für Details.

Benötigen Sie Hilfe bei der Entscheidung, welches Text-Embedding-Modell Sie verwenden sollten? Schauen Sie sich die FAQ an.

Erste Schritte mit Voyage AI

Um auf Voyage Embeddings zuzugreifen:

  1. Registrieren Sie sich auf der Website von Voyage AI
  2. Erhalten Sie einen API-Schlüssel
  3. Legen Sie den API-Schlüssel als Umgebungsvariable fest, um es bequem zu haben:
export VOYAGE_API_KEY="<your secret key>"

Sie können die Embeddings entweder mit dem offiziellen voyageai Python-Paket oder HTTP-Anfragen erhalten, wie unten beschrieben.

Voyage Python-Bibliothek

Das voyageai-Paket kann mit dem folgenden Befehl installiert werden:

pip install -U voyageai

Dann können Sie ein Client-Objekt erstellen und es verwenden, um Ihre Texte einzubetten:

import voyageai

vo = voyageai.Client()
# This will automatically use the environment variable VOYAGE_API_KEY.
# Alternatively, you can use vo = voyageai.Client(api_key="<your secret key>")

texts = ["Sample text 1", "Sample text 2"]

result = vo.embed(texts, model="voyage-3.5", input_type="document")
print(result.embeddings[0])
print(result.embeddings[1])

result.embeddings wird eine Liste von zwei Embedding-Vektoren sein, die jeweils 1024 Gleitkommazahlen enthalten. Nach dem Ausführen des obigen Codes werden die beiden Embeddings auf dem Bildschirm gedruckt:

[-0.013131560757756233, 0.019828535616397858, ...]   # embedding for "Sample text 1"
[-0.0069352793507277966, 0.020878976210951805, ...]  # embedding for "Sample text 2"

Beim Erstellen der Embeddings können Sie mehrere andere Argumente an die embed()-Funktion übergeben.

Weitere Informationen zum Voyage Python-Paket finden Sie in der Voyage-Dokumentation.

Voyage HTTP API

Sie können Embeddings auch durch Anfragen an die Voyage HTTP API erhalten. Sie können beispielsweise eine HTTP-Anfrage über den curl-Befehl in einem Terminal senden:

curl https://api.voyageai.com/v1/embeddings \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $VOYAGE_API_KEY" \
  -d '{
    "input": ["Sample text 1", "Sample text 2"],
    "model": "voyage-3.5"
  }'

Die Antwort, die Sie erhalten, ist ein JSON-Objekt, das die Embeddings und die Token-Nutzung enthält:

{
  "object": "list",
  "data": [
    {
      "embedding": [-0.013131560757756233, 0.019828535616397858 /* ... */],
      "index": 0
    },
    {
      "embedding": [-0.0069352793507277966, 0.020878976210951805 /* ... */],
      "index": 1
    }
  ],
  "model": "voyage-3.5",
  "usage": {
    "total_tokens": 10
  }
}

Weitere Informationen zur Voyage HTTP API finden Sie in der Voyage-Dokumentation.

AWS Marketplace

Voyage Embeddings sind auf dem AWS Marketplace verfügbar. Anweisungen zum Zugriff auf Voyage auf AWS finden Sie in der Voyage AWS Marketplace-Dokumentation.

Schnellstart-Beispiel

Das folgende kurze Beispiel zeigt, wie man Embeddings verwendet.

Angenommen, Sie haben einen kleinen Corpus von sechs Dokumenten zum Abrufen

documents = [
    "The Mediterranean diet emphasizes fish, olive oil, and vegetables, believed to reduce chronic diseases.",
    "Photosynthesis in plants converts light energy into glucose and produces essential oxygen.",
    "20th-century innovations, from radios to smartphones, centered on electronic advancements.",
    "Rivers provide water, irrigation, and habitat for aquatic species, vital for ecosystems.",
    "Apple's conference call to discuss fourth fiscal quarter results and business updates is scheduled for Thursday, November 2, 2023 at 2:00 p.m. PT / 5:00 p.m. ET.",
    "Shakespeare's works, like 'Hamlet' and 'A Midsummer Night's Dream,' endure in literature.",
]

Verwenden Sie zunächst Voyage, um jedes Dokument in einen Embedding-Vektor umzuwandeln

import voyageai

vo = voyageai.Client()

# Embed the documents
doc_embds = vo.embed(documents, model="voyage-3.5", input_type="document").embeddings

Die Embeddings ermöglichen es Ihnen, semantische Suche/Abruf im Vektorraum durchzuführen. Angesichts einer Beispielabfrage,

query = "When is Apple's conference call scheduled?"

Konvertieren Sie es als nächstes in ein Embedding und führen Sie eine Nearest-Neighbor-Suche durch, um das relevanteste Dokument basierend auf der Entfernung im Embedding-Raum zu finden.

import numpy as np

# Embed the query
query_embd = vo.embed([query], model="voyage-3.5", input_type="query").embeddings[0]

# Compute the similarity
# Voyage embeddings are normalized to length 1, therefore dot-product
# and cosine similarity are the same.
similarities = np.dot(doc_embds, query_embd)

retrieved_id = np.argmax(similarities)
print(documents[retrieved_id])

Beachten Sie, dass input_type="document" und input_type="query" zum Einbetten des Dokuments bzw. der Abfrage verwendet werden. Weitere Spezifikationen finden Sie im Voyage Python-Paket-Abschnitt.

Die Ausgabe wäre das 5. Dokument, das tatsächlich am relevantesten für die Abfrage ist:

Apple's conference call to discuss fourth fiscal quarter results and business updates is scheduled for Thursday, November 2, 2023 at 2:00 p.m. PT / 5:00 p.m. ET.

Wenn Sie nach einem detaillierten Satz von Cookbooks zur Durchführung von RAG mit Embeddings suchen, einschließlich Vektordatenbanken, schauen Sie sich das RAG Cookbook an.

FAQ

Preisgestaltung

Besuchen Sie Voyages Preisseite für die aktuellsten Preisdetails.

Blog-Beitrag
voyage-law-216.0001024Optimiert für juristische und langkontextuelle Abruf- und RAG-Aufgaben. Auch verbesserte Leistung über alle Domänen hinweg. Siehe Blog-Beitrag für Details.