Una delle domande interessanti che le persone ci pongono è: "Come fate voi a controllare la vibe dei vostri 向量模型 (Embeddings)?" Certo, c'è MTEB per una valutazione seria e quantitativa su benchmark pubblici, ma cosa fate per problemi open-domain o nuovi? Oggi vogliamo condividere un piccolo strumento interno che utilizziamo per il debug e la visualizzazione. Potete chiamarlo il nostro toolkit per il test della vibe. Noi lo chiamiamo Correlations, ed è open source su GitHub.
tagDesign
Correlations genera heatmap interattive in cui ogni cella mostra la similarità coseno tra due elementi, siano essi chunk della stessa raccolta di documenti o di raccolte diverse, modalità, iperparametri o modelli. Supporta diverse interazioni:
- Ispezione al passaggio del mouse: testo/immagine originale e punteggi di similarità per singole coppie di celle
- Selezione della regione: selezione interattiva dell'area per un'analisi mirata dei modelli di similarità
- Filtraggio della soglia: punteggio di similarità e filtri di lunghezza del testo per ridurre il rumore
Lo strumento opera tramite una pipeline a due fasi:
npm run embed: Utilizzo dell'API Jina Embeddings con strategie di chunking configurabili (newline, punteggiatura, basato su caratteri o modelli regex)npm run corr: Interfaccia utente basata su browser che serve heatmap di correlazione con interattività in tempo reale
Per iniziare:
npm install
export JINA_API_KEY=your_jina_key_here
npm run embed -- https://jina.ai/news/jina-embeddings-v3-a-frontier-multilingual-embedding-model -o v3-blog.jsonl -t retrieval.query
npm run embed -- https://arxiv.org/pdf/2409.10173 -o v3-arxiv.jsonl -t retrieval.passage
npm run corr -- v3-blog.jsonl v3-arxiv.jsonlJINA_API_KEY viene utilizzata per l'embedding e la lettura di contenuti da un URL quando necessario, la lettura da un file di testo locale è ovviamente supportata. Puoi anche portare i tuoi 向量模型 (Embeddings) ed eseguire npm run corr solo per la visualizzazione, nel qual caso non hai bisogno di JINA_API_KEY. Lo strumento supporta sia l'analisi di auto-correlazione (all'interno di una singola raccolta) sia l'analisi di correlazione incrociata (tra due raccolte).
tagCasi d'uso
tagDe-duplicazione del contenuto e analisi dell'allineamento
Dimostriamo l'utilità dello strumento attraverso l'analisi delle nostre pubblicazioni jina-embeddings-v3. Confrontando il documento accademico con la nota di rilascio, la visualizzazione ha rivelato distinti modelli diagonali nella heatmap di correlazione, indicando un forte allineamento chunk-to-chunk tra i documenti. Un esame dettagliato ha mostrato un riutilizzo sistematico dei contenuti, in particolare nelle sezioni tecniche che descrivono i tipi di attività LoRA.
tagConvalida di citazioni e riferimenti
Lo strumento si dimostra valido per la convalida dell'accuratezza delle citazioni nei sistemi di generazione aumentata dal recupero, dove diventa fondamentale verificare che i passaggi recuperati supportino realmente le affermazioni generate. L'analisi basata sulla similarità è uno strumento potente e intuitivo per esplorare set di dati di grandi dimensioni, ad esempio, per rivelare modelli raggruppando gli elementi per similarità.
tagEsplorazione della strategia di chunking
Il chunking tardivo e altre strategie di segmentazione possono essere valutate esaminando come i diversi approcci influenzano la coerenza semantica all'interno e tra i segmenti di testo. La visualizzazione aiuta a identificare l'effetto del chunking tardivo e i confini ottimali del chunk rivelando schemi di somiglianza che si allineano alla struttura semantica.
tagAnalisi cross-modale
Lo strumento si estende oltre il testo per supportare i vettori modello (Embeddings) di immagini tramite jina-clip-v2, consentendo l'analisi dei modelli di correlazione testo-immagine per applicazioni multimodali.
tagLavori correlati nella visualizzazione di vettori modello (Embedding)
La sfida dell'interpretabilità è particolarmente acuta quando si lavora con vettori modello (Embeddings) ad alta dimensione. Il panorama delle tecniche di visualizzazione di vettori modello (Embedding) si è evoluto in modo significativo, con diversi approcci che possono essere classificati come:
- Basati sulla riduzione della dimensionalità: approcci tradizionali che utilizzano PCA, t-SNE, UMAP che proiettano spazi ad alta dimensione in 2D/3D
- Basati sull'esplorazione interattiva: strumenti come Parallax e TextEssence che consentono la manipolazione e l'esplorazione diretta
- Soluzioni specifiche per il dominio: strumenti specializzati come Clustergrammer per dati biologici
- Visualizzazione diretta della somiglianza: il nostro approccio e metodi simili basati su heatmap che preservano le informazioni relazionali complete
| Metodo | Approccio | Casi d'uso |
|---|---|---|
| Correlations | Heatmap di somiglianza a coppie diretta | Debug della somiglianza del testo, analisi dell'allineamento |
| Embedding Projector | PCA, t-SNE e proiezioni lineari personalizzate | Visualizzazione e interpretazione interattiva |
| Parallax | Formule algebriche per l'esplorazione semantica | Comprensione delle relazioni semantiche |
| TextEssence | Analisi comparativa del corpus | Analisi diacronica, confronto di corpus |
| Nomic Atlas | Visualizzazione scalabile basata su cloud | Set di dati su larga scala, collaborazione |
| Clustergrammer | Heatmap interattiva con clustering | Dati biologici ad alta dimensione |
| t-SNE | Visualizzazione non lineare del cluster | Debug del modello, identificazione della confusione |
| UMAP | Conservazione della struttura locale e globale | Set di dati medio-grandi, analisi generale |
| PCA | Riduzione lineare della dimensionalità | Esplorazione iniziale, confronto di base |
tagLimitazioni degli approcci punto-punto
Gli strumenti di visualizzazione esistenti si concentrano principalmente su rappresentazioni punto-punto in spazi 2D, che possono perdere informazioni critiche sulle relazioni a coppie. Inoltre, la maggior parte degli strumenti sono progettati per l'analisi di un singolo spazio di vettori modello (Embedding) piuttosto che per la valutazione comparativa tra diverse fonti, modalità o strategie di vettori modello (Embedding) (ad es. chunking tardivo attivo vs. non attivo).
Ad esempio, di recente abbiamo riscontrato due casi d'uso in Jina. Il primo riguarda il controllo incrociato delle citazioni in DeepSearch, dove dobbiamo abbinare il report generato agli estratti originali del materiale di riferimento. Il secondo è il recupero multimodale, dove dobbiamo verificare l'allineamento immagine-testo e immagine-immagine su nuovi dati non etichettati. In entrambi i casi, dobbiamo esplorare le relazioni tra due raccolte di vettori modello (Embeddings). Quindi usiamo Correlations per avere un'idea di quanto bene si allineino le corrispondenze e per convalidare se le correlazioni più alte corrispondono costantemente alle corrispondenze corrette.
tagConclusione
Oltre al controllo delle vibrazioni, correlations può fornire approfondimenti più profondi sulle relazioni semantiche. Come punto di partenza, è possibile estrarre diverse statistiche chiave dalla matrice di correlazione:
- Densità della matrice: la proporzione di correlazioni al di sopra delle soglie specificate, che indica la coesione semantica complessiva
- Distribuzione degli autovalori: l'analisi delle componenti principali rivela i modelli dominanti nella struttura di somiglianza
- Rango della matrice: indica la dimensionalità effettiva delle relazioni di somiglianza
- Numero di condizione: misura la stabilità numerica e potenziali problemi di multicollinearità
L'analisi avanzata può anche comportare l'estrazione di sottomatrici significative che rappresentano regioni semantiche coerenti. L'estrazione della sottomatrice principale di somma massima di ordine k da una matrice reale di ordine n è un tipico problema di ottimizzazione combinatoria che può identificare i segmenti più altamente correlati.






