> For the complete documentation index, see [llms.txt](https://docs.cloudeka.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cloudeka.ai/deka-gpu-documentations/panduan-untuk-enterprise/deka-llm/api-deka-llm/embedding.md).

# Embedding

Embedding adalah representasi vektor dari teks atau data lain. Representasi ini dapat digunakan dalam berbagai aplikasi machine learning dan pemrosesan bahasa. Embedding mengubah kata, kalimat, atau dokumen menjadi vektor numerik dalam ruang berdimensi tinggi. Hal ini memudahkan komputer memahami dan memproses makna data yang dianalisis. Berikut beberapa penggunaan embedding:

* **Pencarian** mengubah setiap dokumen dan kueri menjadi vektor. Hasil pencarian diurutkan berdasarkan kemiripan vektor embedding antara kueri dan dokumen. Semakin dekat vektornya, semakin relevan hasilnya.
* **Clustering** mengelompokkan kalimat yang telah diubah menjadi vektor embedding menggunakan algoritma seperti K-Means. Teks dengan vektor embedding serupa akan dikelompokkan bersama.
* **Rekomendasi** mengubah deskripsi item menjadi vektor embedding. Saat pengguna tertarik pada suatu item, sistem mencari item lain dengan vektor serupa untuk direkomendasikan.
* **Deteksi Anomali** mengubah kalimat menjadi vektor. Vektor yang sangat berbeda dari sebagian besar vektor lain akan diidentifikasi sebagai anomali.
* **Pengukuran Keragaman** menggunakan vektor dari kalimat untuk menganalisis keragaman kalimat dalam ruang vektor. Keragaman dapat diukur melalui distribusi jarak antarvektor.
* **Klasifikasi** membandingkan vektor kalimat dengan vektor label yang ada. Kalimat kemudian diklasifikasikan ke kategori dengan vektor paling serupa.

Endpoint ini menggunakan metode POST. Data permintaan dikirim ke server untuk diproses. Anda dapat menggunakan endpoint Embeddings berikut.

Saat ini, hanya model `baai/bge-multilingual-gemma2` yang dapat digunakan untuk Embeddings. Kirimkan permintaan ke endpoint berikut:

{% tabs %}
{% tab title="Terminal" %}
{% code title="Contoh Permintaan" lineNumbers="true" %}

```json
curl https://dekallm.cloudeka.ai/v1/embeddings \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "input": "Masukkan teks Anda di sini",
    "model": "baai/bge-multilingual-gemma2"
  }'
```

{% endcode %}
{% endtab %}

{% tab title="Python" %}
{% code title="Contoh Permintaan" lineNumbers="true" %}

```python
import requests

# URL endpoint
url = "https://dekallm.cloudeka.ai/v1/embeddings"

# Header dengan tipe konten dan otorisasi
headers = {
    "Content-Type": "application/json",
    "Authorization": "API_KEY"  # ganti API_KEY dengan API key Anda
}

# Data JSON yang akan dikirim
data = {
    "input": "Masukkan teks Anda di sini",
    "model": "baai/bge-multilingual-gemma2"
}

# Permintaan POST
response = requests.post(url, headers=headers, json=data)

# Memeriksa apakah permintaan berhasil
if response.status_code == 200:
    print("Respons:", response.json())
else:
    print("Gagal mendapatkan embedding. Kode status:", response.status_code)
    print("Respons:", response.text)
```

{% endcode %}
{% endtab %}
{% endtabs %}

Berikut hasil respons yang diterima.

{% code title="Respons" lineNumbers="true" %}

```json
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "embedding": [
        0.0023064255,
        -0.009327292,
        .... (1536 floats total for ada-002)
        -0.0028842222,
      ],
      "index": 0
    }
  ],
  "model": "text-embedding-ada-002",
  "usage": {
    "prompt_tokens": 8,
    "total_tokens": 8
  }
}
```

{% endcode %}
