Diese Woche hat Liquid AI zwei neue Abrufmodelle veröffentlicht. Sie sind LFM2.5-ColBERT-350M Und LFM2.5-Embedding-350M. Beide enthalten 350 Millionen Parameter. Beide sind die ersten bidirektionalen Mitglieder der LFM-Familie. Sie bauen darauf auf LFM2.5-350M-Foundationveröffentlicht im März. Das Paar zielt auf eine schnelle mehrsprachige und mehrsprachige Suche in 11 Sprachen ab. Ihre Stellfläche ist klein genug, um quick überall eingesetzt zu werden. Beide sind ab sofort auf Hugging Face unter der LFM Open License v1.0 verfügbar.
LFM2.5 Retriever
Die beiden Modelle haben das gleiche Grundgerüst, stellen Textual content jedoch unterschiedlich dar. LFM2.5-Embedding-350M ist ein dichter Bi-Encoder. Es verwandelt jedes Dokument in einen einzelnen Vektor. Wählen Sie es, wenn Sie die schnellste Suche und den kleinsten, günstigsten Index wünschen.
LFM2.5-ColBERT-350M ist ein Modell der späten Interaktion. Es wandelt jedes Token in einen Vektor um und nicht in einen Vektor professional Dokument. Dadurch können Abfragen Wort für Wort abgeglichen werden, um eine höhere Genauigkeit und eine bessere Verallgemeinerung zu erzielen. Der Kompromiss ist ein größerer Index. Wählen Sie es, wenn Genauigkeit wichtiger ist als Speicherplatz. Die Abfragelänge ist auf 32 Token begrenzt. Es kann auch die Ergebnisse eines Retrievers der ersten Stufe neu einordnen, ohne einen Index zu erstellen.
Beide zielen auf die Kurzkontextsuche ab. Zu den guten Lösungen gehören Produktkataloge, FAQ-Wissensdatenbanken und Supportdokumente. Liquid AI positioniert sowohl als Drop-in-Ersatz für eine bestehende RAG-Pipeline.
Der Architekturwandel: Von kausal zu bidirektional
Beide Modelle beginnen mit LFM2.5-350M-Base, einem mitteltrainierten Allzweck-Kontrollpunkt. Liquid AI wendet einen kleinen Satz an bidirektionale Patches zur LFM2-Architektur. Diese adaptieren ihn von einem kausalen Decoder zu einem bidirektionalen Encoder.
In einer Kausalkonfiguration verwendet jeder Token nur sich selbst und vorherige Token. Das eignet sich für die Era von hyperlinks nach rechts, ist aber für das Abrufen weniger natürlich. Das Group ersetzt die kausale Aufmerksamkeitsmaske durch eine bidirektionale. Jetzt kann jedes Token sowohl den linken als auch den rechten Kontext berücksichtigen. Sie machen auch die kurzen LFM2-Faltungen nicht kausal. Diese mischen lokale Informationen symmetrisch um jeden Token herum, nicht nur aus der Vergangenheit.
Dadurch bleibt die Effizienz des LFM2-Backbones erhalten und gleichzeitig werden die Abrufanforderungen für Vollkontextdarstellungen erfüllt. Jedes Modell hat 17 Schichten: 10 Faltungsschichten, 6 Aufmerksamkeitsschichten und 1 Pooling- oder Dense-Schicht. Die Kontextlänge erreicht 32.768 Token, obwohl Dokumente auf 512 Token abgestimmt sind. Vom Shared-Encoder unterscheiden sich die beiden Modelle lediglich in der Ausgabe. Beim Einbetten wird Pooling im CLS-Stil für einen 1024-Dim-Vektor verwendet. ColBERT behält 128-Dim-Einbettungen professional Token für die späte MaxSim-Interaktion bei.
Coaching und Daten
Beide Modelle folgen dem gleichen dreistufigen Rezept:
- Stufe eins ist ein groß angelegtes kontrastives Vortraining in Englisch.
- Stufe zwei ist die mehrsprachige und sprachübergreifende Destillation aller 11 Sprachen durch einen starken Lehrer.
- Stufe drei ist die letzte Feinabstimmung der hart abgebauten Detrimental.
Das Einbettungsmodell empfängt etwas mehr sprachübergreifende Daten als ColBERT. Der sprachübergreifende Abruf erfolgt in der späten Interaktionskonfiguration natürlicher. Trainingsdaten kombinieren kuratierte interne Daten mit englischsprachigen Open-Supply-Retrieval-Datensätzen. LLM-basierte Übersetzung erweitert die mehrsprachigen und sprachenübergreifenden Paare.
Benchmark
Liquid AI hat zwei Fähigkeiten bewertet. Der erste ist der mehrsprachige Abruf mit NanoBEIR. Die zweite ist die sprachübergreifende Open-Area-QA mit MKQA-11. Beide berichten über Ergebnisse in allen 11 Sprachen: Arabisch, Deutsch, Englisch, Spanisch, Französisch, Italienisch, Japanisch, Koreanisch, Norwegisch, Portugiesisch und Schwedisch.
Im Durchschnitt führen beide Modelle ihre Klasse an. Hier die Vergleichsdetails:
| Modell | Typ | NanoBEIR ML (NDCG@10) | MKQA-11 (Rückruf@20) |
|---|---|---|---|
| LFM2.5-ColBERT-350M | späte Interaktion | 0,605 | 0,694 |
| LFM2.5-Embedding-350M | dicht | 0,577 | 0,691 |
| Qwen/Qwen3-Embedding-0.6B | dicht | 0,556 | 0,638 |
| LFM2-ColBERT-350M | späte Interaktion | 0,540 | 0,646 |
| Alibaba-NLP/gte-multilingual-base | dicht | 0,528 | 0,675 |
| lightonai/GTE-ModernColBERT-v1 | späte Interaktion | 0,489 | 0,459 |
| BAAI/bge-large-en-v1.5 | dicht | 0,359 | 0,413 |
ColBERT führt in beiden Durchschnittswerten. Die Einbettung liegt bei MKQA-11 mit 0,691 knapp dahinter. Beide schlagen Qwen3-Embedding-0.6B, ein größeres Modell. Der neue ColBERT verbessert auch den früheren LFM2-ColBERT-350M, von 0,540 auf 0,605 auf NanoBEIR. Liquid AI weist außerdem darauf hin, dass NanoBEIR English das teurere vollständige BEIR verfolgt. Die beiden korrelieren weiterhin stark miteinander, wobei NanoBEIR nahezu konstant etwa 15 % besser abschneidet. Das Forschungsteam nutzt NanoBEIR daher als praktischen Stellvertreter bei Trainingsläufen.
Latenz und Edge-Bereitstellung
Liquid AI hat GGUF-Varianten für veröffentlicht lama.cpp. Dadurch können beide Modelle auf CPUs, Laptops und Edge-Geräten laufen. Die folgenden Abbildungen verwenden ein MacBook Professional M4 Max im FP16. Abfragen bestehen aus 32 Token; Dokumente sind 256 Token.
| Modell | Bühne | Dokumente zwischengespeichert | S. 50 |
|---|---|---|---|
| LFM2.5-Embedding-350M | Einbettung von Abfragen | Ja | 7,3 ms |
| LFM2.5-ColBERT-350M | Abfrageeinbettung + MaxSim | Ja | 8,2 ms |
| LFM2.5-ColBERT-350M | Abfrage + Dokumenteneinbettung + MaxSim | NEIN | 34,3 ms |
Wenn Dokumenteinbettungen vorab berechnet werden, bleibt die mittlere (p50) Abfragelatenz unter 10 ms. Durch die Kodierung von Dokumenten zur Abfragezeit wird ColBERT auf 34,3 ms erhöht. Für den Unternehmensmaßstab hat Liquid AI außerdem einen internen GPU-Stack erstellt. Auf einem H100 bei FP16 werden Latenzen von nur 1 ms beobachtet. Die Einbettungs-Abfragelatenz beträgt dort 1,5 ms p50.
Anwendungsfälle mit Beispielen
- E-Commerce: Durchsuchen Sie einen Produktkatalog in mehreren Sprachen mit einem Index. Ein Käufer gibt eine koreanische Suchanfrage ein und das System zeigt eine englische Produktliste an. Durch den sprachübergreifenden Abruf funktioniert dies ohne Indizes professional Sprache.
- FAQ und Help-Wissensdatenbanken: Rufen Sie zuverlässig die richtige Antwort auf allen kundenorientierten Oberflächen ab. Eine französische Supportfrage ist einem englischen Hilfeartikel zugeordnet.
- Semantische Suche auf dem Gerät: Durchsuchen Sie Dateien, E-Mails und Notizen lokal auf Shopper-{Hardware}. Der GGUF-Construct speichert Daten auf dem Gerät zu nahezu Nullkosten.
- Wissensassistenten für Unternehmen: Rufen Sie interne rechtliche, finanzielle und technische Dokumente in mehreren Sprachen ab. ColBERT eignet sich hierfür, wenn die Antwortgenauigkeit wichtiger ist als die Indexgröße.
Code: Erste Schritte
Das Einbettungsmodell läuft durch sentence-transformers. Übergeben Sie immer die asymmetrischen Eingabeaufforderungen. question: Und doc:. Werden sie stillschweigend weggelassen, verschlechtert sich die Abrufqualität.
from sentence_transformers import SentenceTransformer
mannequin = SentenceTransformer(
"LiquidAI/LFM2.5-Embedding-350M",
trust_remote_code=True,
)
queries = ("What's the capital of France?")
paperwork = ("Paris is the capital and largest metropolis of France.")
q_emb = mannequin.encode(queries, prompt_name="question", normalize_embeddings=True)
d_emb = mannequin.encode(paperwork, prompt_name="doc", normalize_embeddings=True)
scores = q_emb @ d_emb.T # form: (n_queries, n_documents)
Das ColBERT-Modell läuft durch PyLate. Sein PLAID-Index nutzt FastPLAID für eine effiziente Ähnlichkeitssuche.
from pylate import indexes, fashions, retrieve
mannequin = fashions.ColBERT(
model_name_or_path="LiquidAI/LFM2.5-ColBERT-350M",
trust_remote_code=True,
)
mannequin.tokenizer.pad_token = mannequin.tokenizer.eos_token
index = indexes.PLAID(index_folder="pylate-index", index_name="index", override=True)
docs_emb = mannequin.encode(("doc 1 textual content", "doc 2 textual content"), is_query=False)
index.add_documents(documents_ids=("1", "2"), documents_embeddings=docs_emb)
retriever = retrieve.ColBERT(index=index)
q_emb = mannequin.encode(("a search question"), is_query=True)
scores = retriever.retrieve(queries_embeddings=q_emb, okay=10)
Um stattdessen eine vorhandene Pipeline der ersten Stufe neu einzustufen, überspringen Sie den Index und verwenden Sie rank.rerank.
from pylate import fashions, rank
mannequin = fashions.ColBERT(model_name_or_path="LiquidAI/LFM2.5-ColBERT-350M", trust_remote_code=True)
queries = ("question A")
paperwork = (("candidate doc 1", "candidate doc 2"))
documents_ids = ((1, 2))
q_emb = mannequin.encode(queries, is_query=True)
d_emb = mannequin.encode(paperwork, is_query=False)
reranked = rank.rerank(
documents_ids=documents_ids,
queries_embeddings=q_emb,
documents_embeddings=d_emb,
)
Sie können jedes Modell auch anhand Ihrer eigenen Daten optimieren. Die Einbettungskarte bietet Snippets mit sentence-transformers Und MultipleNegativesRankingLoss.
Wichtige Erkenntnisse
- LFM2.5-ColBERT-350M und LFM2.5-Embedding-350M von Liquid AI sind die ersten bidirektionalen LFMs, die für die mehrsprachige Suche in 11 Sprachen entwickelt wurden.
- Beide 350M-Modelle führen ihre Klasse auf NanoBEIR und MKQA-11 an und schlagen den größeren Qwen3-Embedding-0.6B.
- Durch die Einbettung erhält man den kleinsten und günstigsten Index; ColBERT handelt mit einem größeren Index für eine höhere Genauigkeit professional Token.
- GGUF-Builds werden über llama.cpp auf CPUs, Laptops und Edge ausgeführt, mit einer zwischengespeicherten p50-Abfragelatenz von weniger als 10 ms.
- Sie fallen durch in bestehende RAG-Pipelines
sentence-transformersund PyLate unter der LFM Open License v1.0.
Interaktiver Erklärer
Schauen Sie sich das an Technische Particulars, LFM2.5-Einbettung Und LFM2.5-ColBERT. Sie können uns auch gerne weiter folgen Twitter und vergessen Sie nicht, bei uns mitzumachen 150k+ML SubReddit und Abonnieren Unser Publication. Warten! Bist du im Telegram? Jetzt können Sie uns auch per Telegram kontaktieren.
Möchten Sie mit uns zusammenarbeiten, um Ihr GitHub-Repo ODER Ihre Hugging Face Web page ODER Produktveröffentlichung ODER Ihr Webinar usw. zu bewerben? Vernetzen Sie sich mit uns
