全部产品
Search
文档中心

DashVector:Mulai Cepat

更新时间:Jul 02, 2025

Topik ini membantu Anda memulai dengan cepat menggunakan DashVector.

Prasyarat

  • Anda telah berhasil membuat kluster. Untuk informasi lebih lanjut, lihat Buat kluster.

  • Anda telah berhasil membuat Kunci API. Untuk informasi lebih lanjut, lihat Pengelolaan Kunci API.

  • Anda telah menginstal SDK DashVector versi terbaru. Untuk informasi lebih lanjut, lihat Instal SDK DashVector.

Catatan
  1. Ganti YOUR_API_KEY dengan Kunci API Anda dan YOUR_CLUSTER_ENDPOINT dengan Titik akhir kluster Anda dalam contoh berikut.

  2. Titik akhir kluster dapat ditemukan di halaman Detail Kluster pada konsol DashVector.

Langkah 1. Buat klien

Langkah ini dapat dilewati jika Anda menggunakan HTTP API.

import dashvector

client = dashvector.Client(
    api_key='YOUR_API_KEY',
    endpoint='YOUR_CLUSTER_ENDPOINT'
)
assert client
import com.aliyun.dashvector.DashVectorClient;
import com.aliyun.dashvector.common.DashVectorException;


DashVectorClient client = new DashVectorClient("YOUR_API_KEY", "YOUR_CLUSTER_ENDPOINT");

Langkah 2. Buat koleksi

Buat koleksi bernama quickstart dengan empat dimensi vektor.

client.create(name='quickstart', dimension=4)

collection = client.get('quickstart')
assert collection
import com.aliyun.dashvector.models.responses.Response;
import com.aliyun.dashvector.DashVectorCollection;


Response<Void> response = client.create("quickstart", 4);
System.out.println(response);
DashVectorCollection collection = client.get("quickstart");

assert collection.isSuccess();
curl -XPOST \
  -H 'dashvector-auth-token: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "quickstart", 
    "dimension": 4
  }' https://YOUR_CLUSTER_ENDPOINT/v1/collections
Catatan
  1. Jika metode pengukuran jarak tidak ditentukan, nilai default Cosine akan digunakan.

  2. Jika tipe data vektor tidak ditentukan, nilai default Float akan digunakan.

Langkah 3. Sisipkan Dokumen

from dashvector import Doc

# Gunakan objek dashvector.Doc untuk menyisipkan satu Dok.
collection.insert(Doc(id='1', vector=[0.1, 0.2, 0.3, 0.4]))

# Gunakan objek dashvector.Doc untuk menyisipkan dua Dok sekaligus.
collection.insert(
    [
        Doc(id='2', vector=[0.2, 0.3, 0.4, 0.5], fields={'age': 20, 'name': 'zhangsan'}),
        Doc(id='3', vector=[0.3, 0.4, 0.5, 0.6], fields={'anykey': 'anyvalue'})    
    ]
)
import com.aliyun.dashvector.models.Vector;
import com.aliyun.dashvector.models.Doc;
import com.aliyun.dashvector.models.requests.InsertDocRequest;
import com.aliyun.dashvector.models.responses.Response;

import java.util.Arrays;
import java.util.HashMap;


Doc doc1 = Doc.builder()
    .id("1")
    .vector(
        Vector.builder()
            .value(Arrays.asList(0.1f, 0.2f, 0.3f, 0.4f))
            .build()
    ).build();

Doc doc2 = Doc.builder()
    .id("2")
    .vector(
        Vector.builder()
            .value(Arrays.asList(0.2f, 0.3f, 0.4f, 0.5f))
            .build()
    ).fields(new HashMap<String, Object>(){{
        put("age", 20);
        put("name", "zhangsan");
    }}).build();

Doc doc3 = Doc.builder()
    .id("3")
    .field("anykey", "anyvalue")
    .vector(
        Vector.builder()
            .value(Arrays.asList(0.3f, 0.4f, 0.5f, 0.6f))
            .build()
    ).build();

InsertDocRequest request = InsertDocRequest.builder()
    .docs(Arrays.asList(doc1, doc2, doc3))
    .build();

Response<Void> response = collection.insert(request);
# Sisipkan tiga Dok.

curl -XPOST \
  -H 'dashvector-auth-token: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "docs": [
      {"id": "1", "vector": [0.1, 0.2, 0.3, 0.4]},
      {"id": "2", "vector": [0.2, 0.3, 0.4, 0.5], "fields": {"age": 20, "name": "zhangsan"}},
      {"id": "3", "vector": [0.3, 0.4, 0.5, 0.6], "fields": {"anykey": "anyvalue"}}
    ]
  }' https://YOUR_CLUSTER_ENDPOINT/v1/collections/quickstart/docs

Langkah 4. Lakukan pencarian kesamaan

rets = collection.query([0.1, 0.2, 0.3, 0.4], topk=2)

print(rets)
import com.aliyun.dashvector.models.Vector;
import com.aliyun.dashvector.models.Doc;
import com.aliyun.dashvector.models.requests.QueryDocRequest;
import com.aliyun.dashvector.models.responses.Response;

import java.util.Arrays;
import java.util.List;


Vector vector = Vector.builder().value(Arrays.asList(0.1f, 0.2f, 0.3f, 0.4f)).build();
      	
QueryDocRequest request = QueryDocRequest.builder()
    .vector(vector)
    .topk(2)
    .build();

Response<List<Doc>> response = collection.query(request);
curl -XPOST \
  -H 'dashvector-auth-token: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "vector": [0.1, 0.2, 0.3, 0.4],
    "topk": 2
  }' https://YOUR_CLUSTER_ENDPOINT/v1/collections/quickstart/query

Langkah 5. Hapus Dokumen

# Hapus sebuah Dok.
collection.delete(ids=['1'])
import com.aliyun.dashvector.models.Doc;
import com.aliyun.dashvector.models.requests.DeleteDocRequest;
import com.aliyun.dashvector.models.responses.Response;


DeleteDocRequest request = DeleteDocRequest.builder()
    .id("1")
    .build();
      
Response<List<Doc>> response = collection.delete(request);
curl -XDELETE \
  -H 'dashvector-auth-token: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"ids": ["1"]}' \
  https://YOUR_CLUSTER_ENDPOINT/v1/collections/quickstart/docs

Langkah 6. Lihat statistik koleksi

stats = collection.stats()

print(stats)
import com.aliyun.dashvector.models.CollectionStats;
import com.aliyun.dashvector.models.responses.Response;


Response<CollectionStats> response = collection.stats();
curl -H 'dashvector-auth-token: YOUR_API_KEY' \
  https://YOUR_CLUSTER_ENDPOINT/v1/collections/quickstart/stats

Langkah 7. Hapus koleksi

client.delete('quickstart')
import com.aliyun.dashvector.models.responses.Response;


Response<Void> response = client.delete("quickstart");
curl -XDELETE -H 'dashvector-auth-token: YOUR_API_KEY' \
  https://YOUR_CLUSTER_ENDPOINT/v1/collections/quickstart