} from "@volcengine/tos-sdk";
const client = new TosVectorsClient({
accessKeyId: process.env["TOS_ACCESS_KEY"],
accessKeySecret: process.env["TOS_SECRET_KEY"],
region: 'Provide your region',
endpoint: 'Provide your vector endpoint',
const vectorBucketName = 'Provide your vector bucket name';
const accountId = process.env["TOS_ACCOUNT_ID"];
const indexName = "test"
function handleError(error: Error) {
if (error instanceof TosClientError) {
console.log("Client Error:");
console.log(" Message:", error.message);
console.log(" Stack:", error.stack);
} else if (error instanceof TosServerError) {
console.log("Server Error:");
console.log(" Request ID:", error.requestId);
console.log(" Status Code:", error.statusCode);
console.log(" Code:", error.code);
console.log(" Message:", error.message);
console.log(" Headers:", error.headers);
console.log("Unexpected Error:");
console.log(" Message:", error.message);
const keys = ["key1", "key2", "key3"];
`开始根据向量 key 批量查询向量,向量桶: ${vectorBucketName}, 索引: ${indexName}, key 数量: ${keys.length}...`,
const result = await client.getVectors({
console.log("Request Succeeded:");
console.log(" Request ID:", result.requestId);
console.log(" Status Code:", result.statusCode);
console.log(" Headers:", result.headers);
const vectors = result.data.vectors || [];
console.log(` 返回向量数量: ${vectors.length}`);
vectors.forEach((vector, index) => {
const dataLength = vector.data?.float32?.length ?? 0;
const metadataKeys = vector.metadata ? Object.keys(vector.metadata) : [];
console.log(` 向量 #${index + 1}:`);
console.log(` - Key: ${vector.key}`);
console.log(` - 向量维度(float32 长度): ${dataLength}`);
console.log(" - 向量数据: <未返回或为空>");
if (metadataKeys.length > 0) {
console.log(` - 元数据字段: ${metadataKeys.join(", ")}`);
console.log(" - 元数据字段: <无>");