|
#!/usr/bin/env node |
|
|
|
|
|
const NEBIUS_API_KEY = process.env.NEBIUS_API_KEY || 'eyJhbGciOiJIUzI1NiIsImtpZCI6IlV6SXJWd1h0dnprLVRvdzlLZWstc0M1akptWXBvX1VaVkxUZlpnMDRlOFUiLCJ0eXAiOiJKV1QifQ.eyJzdWIiOiJnb29nbGUtb2F1dGgyfDEwMzQwMDk5NTQzMzIwMjU0MzY2NSIsInNjb3BlIjoib3BlbmlkIG9mZmxpbmVfYWNjZXNzIiwiaXNzIjoiYXBpX2tleV9pc3N1ZXIiLCJhdWQiOlsiaHR0cHM6Ly9uZWJpdXMtaW5mZXJlbmNlLmV1LmF1dGgwLmNvbS9hcGkvdjIvIl0sImV4cCI6MTkwNzE0NjM0OCwidXVpZCI6IjIwZDU3YWIxLTcxYmUtNGI4ZS05MDk5LWRkODJkMDA0NWQyMCIsIm5hbWUiOiJIYWNrYXRob24iLCJleHBpcmVzX2F0IjoiMjAzMC0wNi0wOFQxMDo1MjoyOCswMDAwIn0.8WDxq0i62K0jM3ADXShpye0kvE-UBLgAYQ_jMeyJalQ'; |
|
|
|
async function testEmbeddings() { |
|
console.log('π§ͺ Testing Nebius embedding models...\n'); |
|
|
|
const baseUrl = 'https://api.studio.nebius.ai/v1'; |
|
const testText = 'What is RAG?'; |
|
|
|
const embeddingModels = [ |
|
'BAAI/bge-en-icl', |
|
'BAAI/bge-multilingual-gemma2', |
|
'intfloat/e5-mistral-7b-instruct' |
|
]; |
|
|
|
for (const model of embeddingModels) { |
|
try { |
|
console.log(`Testing ${model}...`); |
|
const response = await fetch(`${baseUrl}/embeddings`, { |
|
method: 'POST', |
|
headers: { |
|
'Authorization': `Bearer ${NEBIUS_API_KEY}`, |
|
'Content-Type': 'application/json' |
|
}, |
|
body: JSON.stringify({ |
|
input: testText, |
|
model: model |
|
}) |
|
}); |
|
|
|
if (response.ok) { |
|
const result = await response.json(); |
|
console.log(`β
${model} SUCCESS!`); |
|
console.log(` Dimensions: ${result.data[0].embedding.length}`); |
|
console.log(` First 5 values: [${result.data[0].embedding.slice(0, 5).map(v => v.toFixed(4)).join(', ')}...]`); |
|
console.log(` Usage: ${result.usage.total_tokens} tokens\n`); |
|
break; |
|
} else { |
|
const error = await response.text(); |
|
console.log(`β ${model} failed: ${response.status} - ${error}\n`); |
|
} |
|
} catch (error) { |
|
console.log(`β ${model} error: ${error.message}\n`); |
|
} |
|
} |
|
} |
|
|
|
testEmbeddings(); |