Loading...
  • Bangun
  • Admin
  • Model & harga
  • Client SDK
  • Referensi API
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
Bangun/Kemampuan model

Embeddings

Embeddings teks adalah representasi numerik dari teks yang memungkinkan pengukuran kesamaan semantik. Panduan ini memperkenalkan embeddings, aplikasinya, dan cara menggunakan model embedding untuk tugas-tugas seperti pencarian, rekomendasi, dan deteksi anomali.

Sebelum mengimplementasikan embeddings

Saat memilih penyedia embeddings, ada beberapa faktor yang dapat Anda pertimbangkan tergantung pada kebutuhan dan preferensi Anda:

  • Ukuran dataset & spesifisitas domain: ukuran dataset pelatihan model dan relevansinya dengan domain yang ingin Anda embed. Data yang lebih besar atau lebih spesifik domain umumnya menghasilkan embeddings dalam domain yang lebih baik
  • Kinerja inferensi: kecepatan pencarian embedding dan latensi end-to-end. Ini adalah pertimbangan yang sangat penting untuk penyebaran produksi skala besar
  • Kustomisasi: opsi untuk pelatihan berkelanjutan pada data pribadi, atau spesialisasi model untuk domain yang sangat spesifik. Ini dapat meningkatkan kinerja pada kosakata unik

Cara mendapatkan embeddings dengan Anthropic

Anthropic tidak menawarkan model embedding miliknya sendiri. Salah satu penyedia embeddings yang memiliki berbagai pilihan dan kemampuan yang mencakup semua pertimbangan di atas adalah Voyage AI.

Voyage AI membuat model embedding canggih dan menawarkan model yang disesuaikan untuk domain industri tertentu seperti keuangan dan kesehatan, atau model yang disesuaikan dengan baik untuk pelanggan individual.

Sisa panduan ini adalah untuk Voyage AI, tetapi Anda harus mengevaluasi berbagai vendor embeddings untuk menemukan yang paling sesuai dengan kasus penggunaan spesifik Anda.

Model yang Tersedia

Voyage merekomendasikan penggunaan model embedding teks berikut:

ModelPanjang KonteksDimensi EmbeddingDeskripsi
voyage-3-large32.0001024 (default), 256, 512, 2048Kualitas pengambilan tujuan umum dan multibahasa terbaik. Lihat blog post untuk detail.
voyage-3.532.0001024 (default), 256, 512, 2048Dioptimalkan untuk kualitas pengambilan tujuan umum dan multibahasa. Lihat blog post untuk detail.
voyage-3.5-lite32.0001024 (default), 256, 512, 2048Dioptimalkan untuk latensi dan biaya. Lihat blog post untuk detail.
voyage-code-332.0001024 (default), 256, 512, 2048Dioptimalkan untuk pengambilan kode. Lihat blog post untuk detail.
voyage-finance-232.0001024Dioptimalkan untuk pengambilan dan RAG keuangan. Lihat untuk detail.

Selain itu, model embedding multimodal berikut direkomendasikan:

ModelPanjang KonteksDimensi EmbeddingDeskripsi
voyage-multimodal-3320001024Model embedding multimodal kaya yang dapat membuat vektor teks dan gambar yang kaya konten yang disisipi, seperti tangkapan layar PDF, slide, tabel, gambar, dan lainnya. Lihat blog post untuk detail.

Butuh bantuan memutuskan model embedding teks mana yang digunakan? Lihat FAQ.

Memulai dengan Voyage AI

Untuk mengakses embeddings Voyage:

  1. Daftar di situs web Voyage AI
  2. Dapatkan kunci API
  3. Atur kunci API sebagai variabel lingkungan untuk kenyamanan:
export VOYAGE_API_KEY="<your secret key>"

Anda dapat memperoleh embeddings dengan menggunakan paket Python voyageai resmi atau permintaan HTTP, seperti yang dijelaskan di bawah.

Perpustakaan Python Voyage

Paket voyageai dapat diinstal menggunakan perintah berikut:

pip install -U voyageai

Kemudian, Anda dapat membuat objek klien dan mulai menggunakannya untuk embed teks Anda:

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 akan menjadi daftar dua vektor embedding, masing-masing berisi 1024 angka floating-point. Setelah menjalankan kode di atas, dua embeddings akan dicetak di layar:

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

Saat membuat embeddings, Anda dapat menentukan beberapa argumen lain ke fungsi embed().

Untuk informasi lebih lanjut tentang paket python Voyage, lihat dokumentasi Voyage.

API HTTP Voyage

Anda juga dapat mendapatkan embeddings dengan meminta API HTTP Voyage. Misalnya, Anda dapat mengirim permintaan HTTP melalui perintah curl di terminal:

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"
  }'

Respons yang akan Anda dapatkan adalah objek JSON yang berisi embeddings dan penggunaan token:

{
  "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
  }
}

Untuk informasi lebih lanjut tentang API HTTP Voyage, lihat dokumentasi Voyage.

AWS Marketplace

Embeddings Voyage tersedia di AWS Marketplace. Instruksi untuk mengakses Voyage di AWS tersedia di dokumentasi Voyage AWS Marketplace.

Contoh Quickstart

Contoh singkat berikut menunjukkan cara menggunakan embeddings.

Misalkan Anda memiliki corpus kecil enam dokumen untuk diambil dari

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.",
]

Pertama, gunakan Voyage untuk mengonversi setiap dokumen menjadi vektor embedding

import voyageai

vo = voyageai.Client()

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

Embeddings memungkinkan Anda melakukan pencarian semantik / pengambilan dalam ruang vektor. Diberikan contoh query,

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

Selanjutnya, konversi ke embedding dan lakukan pencarian tetangga terdekat untuk menemukan dokumen paling relevan berdasarkan jarak dalam ruang embedding.

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])

Perhatikan bahwa input_type="document" dan input_type="query" digunakan untuk embedding dokumen dan query, masing-masing. Spesifikasi lebih lanjut dapat ditemukan di bagian paket Python Voyage.

Output akan menjadi dokumen ke-5, yang memang paling relevan dengan query:

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.

Jika Anda mencari set cookbook terperinci tentang cara melakukan RAG dengan embeddings, termasuk database vektor, lihat cookbook RAG.

FAQ

Harga

Kunjungi halaman harga Voyage untuk detail harga terbaru.

Was this page helpful?

  • Sebelum mengimplementasikan embeddings
  • Cara mendapatkan embeddings dengan Anthropic
  • Model yang Tersedia
  • Memulai dengan Voyage AI
  • Perpustakaan Python Voyage
  • API HTTP Voyage
  • AWS Marketplace
  • Contoh Quickstart
  • FAQ
  • Harga
blog post
voyage-law-216.0001024Dioptimalkan untuk pengambilan dan RAG hukum dan konteks panjang. Juga peningkatan kinerja di semua domain. Lihat blog post untuk detail.