File size: 2,067 Bytes
7c012de
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/usr/bin/env node

// Test specific embedding models with Nebius
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; // Found working model
      } else {
        const error = await response.text();
        console.log(`❌ ${model} failed: ${response.status} - ${error}\n`);
      }
    } catch (error) {
      console.log(`❌ ${model} error: ${error.message}\n`);
    }
  }
}

testEmbeddings();