{
  "aboutHtml": "<p>LFM2.5-Embedding-350M är LiquidAI:s täta bi-encoder för flerspråkig sökning och sökning över språkgränser. Den producerar en vektor med 1024 dimensioner för varje text och riktar sig mot sökning med kort kontext på elva språk. Den namngivna 350M-modellfamiljen använder en dubbelriktad anpassning av LFM2.5-350M-Base; den detaljerade modelltabellen anger ungefär 354 miljoner parametrar för denna inbäddningsutgåva.</p><h4>En dubbelriktad sökrepresentation</h4><p>Tillverkaren anpassar basmodellen så att attention och lokala faltningar kan använda kontext på båda sidor av en token. Poolning i CLS-stil omvandlar den behandlade texten till en tät vektor. Modelltabellen beskriver sjutton lager: tio faltningsblock, sex attention-block och ett poolningssteg. Detta är en sökkodare med egen förberedelse och eget resultat, i stället för basmodellens textgenereringsuppgift.</p><p>Den separat namngivna LFM2.5-ColBERT-350M behåller vektorer per token för sen interaktion. Den representationen kräver ett annat index och en annan jämförelsemetod. Inbäddningsmodellen här ger en vektor per dokument eller fråga med cosinuslikhet som dokumenterad jämförelse.</p><h4>Använd rätt asymmetriska prompter</h4><p>Förbered sökfrågor med ”query:” och källpassager med ”document:”. Tillverkaren lagrar dessa prompter i konfigurationen och referensarbetsflödet använder motsvarande promptnamn. Den rekommenderar särskilt att använda motsvarande roll på varje sida eftersom modellen tränades med dessa prefix. Detta dokumentprefix skiljer sig från E5-modellernas ”passage:”-konvention.</p><p>En praktisk produktsöksamling kan innehålla beskrivningar på de språk som stöds. Förbered användarens sökformulering som en fråga och varje produktbeskrivning som ett dokument. Lagra originaltexten, produktidentifieraren och språket tillsammans med vektorn så att ett sökresultat kan returnera motsvarande post. För en supportsamling behåller du regeln eller instruktionen som är relevant för frågan i stället för att ersätta den med en ovidkommande kort etikett.</p><h4>Språk och passagestorlek</h4><p>Den dokumenterade språkuppsättningen är engelska, spanska, tyska, franska, italienska, portugisiska, arabiska, svenska, norska, japanska och koreanska. Tillverkaren riktar modellen uttryckligen mot både sökning inom ett språk och över språkgränser. Förbered verkliga frågor från den avsedda målgruppen och granska den returnerade dokumenttexten på dessa språk.</p><p>Specifikationen för dokumentlängd är 512 token. Dela en lång källa i sammanhängande passager som bevarar rubriken, definitionerna och villkoren som ett hämtat resultat behöver. Rollprefixet och tillagd kontext ingår i den förberedda inmatningen. Ett FAQ-svar, en produktförklaring eller ett fokuserat avsnitt i ett tekniskt dokument är en mer lämplig enhet än en hel för stor manual.</p><h4>Träning och matchning</h4><p>Tillverkaren beskriver tre träningssteg: engelsk kontrastiv förträning; flerspråkig destillation och destillation över språkgränser; därefter finjustering med utvunna svåra negativa exempel. Den resulterande modellen är avsedd för produktkataloger, FAQ- och supportsamlingar, fil- eller anteckningssökning och sökning i verksamhetskunskap. Detta är uppgifter för textrepresentationerna, inte påståenden om driftsättning av en viss applikation.</p><p>Tillverkarens exempel normaliserar fråge- och dokumentvektorer och rangordnar dem med en skalärprodukt, motsvarande cosinuslikhet. Beräkna korpusrepresentationerna i förväg när källmaterialet förbereds, beräkna sedan inbäddningen för en sökfråga och returnera kandidatdokument med deras text och identifierare. Behåll den valda modellen och rollkonventionen tillsammans med indexet så att den numeriska jämförelsen använder kompatibla representationer.</p><p>Det användbara resultatet är ett kompakt, tätt sökindex eller en frågevektor som hämtar källmaterial över den dokumenterade språkuppsättningen. Denna exakta LFM2.5 Embedding-utgåva förblir åtskild från sin ColBERT-följeslagare, äldre LFM2-sökmodeller och externt kvantiserade implementationer. Den valda passagetexten är evidensen som används av en läsare eller ett senare RAG-svarssteg.</p>",
  "aboutText": "LFM2.5-Embedding-350M är LiquidAI:s täta bi-encoder för flerspråkig sökning och sökning över språkgränser. Den producerar en vektor med 1024 dimensioner för varje text och riktar sig mot sökning med kort kontext på elva språk. Den namngivna 350M-modellfamiljen använder en dubbelriktad anpassning av LFM2.5-350M-Base; den detaljerade modelltabellen anger ungefär 354 miljoner parametrar för denna inbäddningsutgåva.\n\n### En dubbelriktad sökrepresentation\n\nTillverkaren anpassar basmodellen så att attention och lokala faltningar kan använda kontext på båda sidor av en token. Poolning i CLS-stil omvandlar den behandlade texten till en tät vektor. Modelltabellen beskriver sjutton lager: tio faltningsblock, sex attention-block och ett poolningssteg. Detta är en sökkodare med egen förberedelse och eget resultat, i stället för basmodellens textgenereringsuppgift.\n\nDen separat namngivna LFM2.5-ColBERT-350M behåller vektorer per token för sen interaktion. Den representationen kräver ett annat index och en annan jämförelsemetod. Inbäddningsmodellen här ger en vektor per dokument eller fråga med cosinuslikhet som dokumenterad jämförelse.\n\n### Använd rätt asymmetriska prompter\n\nFörbered sökfrågor med ”query:” och källpassager med ”document:”. Tillverkaren lagrar dessa prompter i konfigurationen och referensarbetsflödet använder motsvarande promptnamn. Den rekommenderar särskilt att använda motsvarande roll på varje sida eftersom modellen tränades med dessa prefix. Detta dokumentprefix skiljer sig från E5-modellernas ”passage:”-konvention.\n\nEn praktisk produktsöksamling kan innehålla beskrivningar på de språk som stöds. Förbered användarens sökformulering som en fråga och varje produktbeskrivning som ett dokument. Lagra originaltexten, produktidentifieraren och språket tillsammans med vektorn så att ett sökresultat kan returnera motsvarande post. För en supportsamling behåller du regeln eller instruktionen som är relevant för frågan i stället för att ersätta den med en ovidkommande kort etikett.\n\n### Språk och passagestorlek\n\nDen dokumenterade språkuppsättningen är engelska, spanska, tyska, franska, italienska, portugisiska, arabiska, svenska, norska, japanska och koreanska. Tillverkaren riktar modellen uttryckligen mot både sökning inom ett språk och över språkgränser. Förbered verkliga frågor från den avsedda målgruppen och granska den returnerade dokumenttexten på dessa språk.\n\nSpecifikationen för dokumentlängd är 512 token. Dela en lång källa i sammanhängande passager som bevarar rubriken, definitionerna och villkoren som ett hämtat resultat behöver. Rollprefixet och tillagd kontext ingår i den förberedda inmatningen. Ett FAQ-svar, en produktförklaring eller ett fokuserat avsnitt i ett tekniskt dokument är en mer lämplig enhet än en hel för stor manual.\n\n### Träning och matchning\n\nTillverkaren beskriver tre träningssteg: engelsk kontrastiv förträning; flerspråkig destillation och destillation över språkgränser; därefter finjustering med utvunna svåra negativa exempel. Den resulterande modellen är avsedd för produktkataloger, FAQ- och supportsamlingar, fil- eller anteckningssökning och sökning i verksamhetskunskap. Detta är uppgifter för textrepresentationerna, inte påståenden om driftsättning av en viss applikation.\n\nTillverkarens exempel normaliserar fråge- och dokumentvektorer och rangordnar dem med en skalärprodukt, motsvarande cosinuslikhet. Beräkna korpusrepresentationerna i förväg när källmaterialet förbereds, beräkna sedan inbäddningen för en sökfråga och returnera kandidatdokument med deras text och identifierare. Behåll den valda modellen och rollkonventionen tillsammans med indexet så att den numeriska jämförelsen använder kompatibla representationer.\n\nDet användbara resultatet är ett kompakt, tätt sökindex eller en frågevektor som hämtar källmaterial över den dokumenterade språkuppsättningen. Denna exakta LFM2.5 Embedding-utgåva förblir åtskild från sin ColBERT-följeslagare, äldre LFM2-sökmodeller och externt kvantiserade implementationer. Den valda passagetexten är evidensen som används av en läsare eller ett senare RAG-svarssteg.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "8b57633ebeae060e56febaca73a0ef8702986282fda9e4660d5ddbb133aa936c",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "sv",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">LiquidAI: LFM2.5-Embedding-350M (free)</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Stäng\">×</button></div><div class=\"idline\"><span>LiquidAI /</span><code>liquid/lfm-2.5-embedding-350m:free</code><button type=\"button\" id=\"copy-id\">Kopiera ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Modellkortets avsnitt\"><button type=\"button\" data-card-jump=\"overview\">Start</button><button type=\"button\" data-card-jump=\"methods\">Indata &amp; metoder</button><button type=\"button\" data-card-jump=\"pricing\">Priser</button><button type=\"button\" data-card-jump=\"examples\">Exempel</button><button type=\"button\" data-card-jump=\"results\">Resultat</button><button type=\"button\" data-card-jump=\"aliases\">Alias</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API-metoder\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|embeddings|/v1/embeddings|liquid%2Flfm-2.5-embedding-350m%3Afree\">Embeddings</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Start</h3><p class=\"mdesc-full\">LiquidAI LFM2.5-Embedding-350M producerar en 1024-dimensionell vektor per text för flerspråkig och språköverskridande informationssökning. Den riktar sig till 11 språk och korta indata på 512 token, med separata prefix för fråga och dokument.</p><dl class=\"card-io\" data-card-io><div><dt>Godkända indata</dt><dd>Text · token_ids</dd></div><div><dt>Resultat</dt><dd>embedding</dd></div></dl><details class=\"card-about\"><summary>Om modellen</summary><p class=\"note-s\" data-model-method-boundary>Den här beskrivningen omfattar modellens förmågor. Tillgängliga indata, utdata och alternativ i Ailoot anges nedan för den valda metoden.</p><div class=\"mabout\" id=\"m-about\"><p>LFM2.5-Embedding-350M är LiquidAI:s täta bi-encoder för flerspråkig sökning och sökning över språkgränser. Den producerar en vektor med 1024 dimensioner för varje text och riktar sig mot sökning med kort kontext på elva språk. Den namngivna 350M-modellfamiljen använder en dubbelriktad anpassning av LFM2.5-350M-Base; den detaljerade modelltabellen anger ungefär 354 miljoner parametrar för denna inbäddningsutgåva.</p><h4>En dubbelriktad sökrepresentation</h4><p>Tillverkaren anpassar basmodellen så att attention och lokala faltningar kan använda kontext på båda sidor av en token. Poolning i CLS-stil omvandlar den behandlade texten till en tät vektor. Modelltabellen beskriver sjutton lager: tio faltningsblock, sex attention-block och ett poolningssteg. Detta är en sökkodare med egen förberedelse och eget resultat, i stället för basmodellens textgenereringsuppgift.</p><p>Den separat namngivna LFM2.5-ColBERT-350M behåller vektorer per token för sen interaktion. Den representationen kräver ett annat index och en annan jämförelsemetod. Inbäddningsmodellen här ger en vektor per dokument eller fråga med cosinuslikhet som dokumenterad jämförelse.</p><h4>Använd rätt asymmetriska prompter</h4><p>Förbered sökfrågor med ”query:” och källpassager med ”document:”. Tillverkaren lagrar dessa prompter i konfigurationen och referensarbetsflödet använder motsvarande promptnamn. Den rekommenderar särskilt att använda motsvarande roll på varje sida eftersom modellen tränades med dessa prefix. Detta dokumentprefix skiljer sig från E5-modellernas ”passage:”-konvention.</p><p>En praktisk produktsöksamling kan innehålla beskrivningar på de språk som stöds. Förbered användarens sökformulering som en fråga och varje produktbeskrivning som ett dokument. Lagra originaltexten, produktidentifieraren och språket tillsammans med vektorn så att ett sökresultat kan returnera motsvarande post. För en supportsamling behåller du regeln eller instruktionen som är relevant för frågan i stället för att ersätta den med en ovidkommande kort etikett.</p><h4>Språk och passagestorlek</h4><p>Den dokumenterade språkuppsättningen är engelska, spanska, tyska, franska, italienska, portugisiska, arabiska, svenska, norska, japanska och koreanska. Tillverkaren riktar modellen uttryckligen mot både sökning inom ett språk och över språkgränser. Förbered verkliga frågor från den avsedda målgruppen och granska den returnerade dokumenttexten på dessa språk.</p><p>Specifikationen för dokumentlängd är 512 token. Dela en lång källa i sammanhängande passager som bevarar rubriken, definitionerna och villkoren som ett hämtat resultat behöver. Rollprefixet och tillagd kontext ingår i den förberedda inmatningen. Ett FAQ-svar, en produktförklaring eller ett fokuserat avsnitt i ett tekniskt dokument är en mer lämplig enhet än en hel för stor manual.</p><h4>Träning och matchning</h4><p>Tillverkaren beskriver tre träningssteg: engelsk kontrastiv förträning; flerspråkig destillation och destillation över språkgränser; därefter finjustering med utvunna svåra negativa exempel. Den resulterande modellen är avsedd för produktkataloger, FAQ- och supportsamlingar, fil- eller anteckningssökning och sökning i verksamhetskunskap. Detta är uppgifter för textrepresentationerna, inte påståenden om driftsättning av en viss applikation.</p><p>Tillverkarens exempel normaliserar fråge- och dokumentvektorer och rangordnar dem med en skalärprodukt, motsvarande cosinuslikhet. Beräkna korpusrepresentationerna i förväg när källmaterialet förbereds, beräkna sedan inbäddningen för en sökfråga och returnera kandidatdokument med deras text och identifierare. Behåll den valda modellen och rollkonventionen tillsammans med indexet så att den numeriska jämförelsen använder kompatibla representationer.</p><p>Det användbara resultatet är ett kompakt, tätt sökindex eller en frågevektor som hämtar källmaterial över den dokumenterade språkuppsättningen. Denna exakta LFM2.5 Embedding-utgåva förblir åtskild från sin ColBERT-följeslagare, äldre LFM2-sökmodeller och externt kvantiserade implementationer. Den valda passagetexten är evidensen som används av en läsare eller ett senare RAG-svarssteg.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Tillgängligt i Ailoot · indata &amp; metoder</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Embeddings</b> <code>POST /v1/embeddings</code></summary><dl class=\"method-capabilities\"><div><dt>Indatatyper</dt><dd><code>text</code>, <code>token_ids</code></dd></div><div><dt>Utdatatyper</dt><dd><code>embedding</code></dd></div><div><dt>Kontext</dt><dd>512 tokens</dd></div><div><dt>Utdataformat</dt><dd>json</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Fält</th><th>Typ</th><th>Krav</th><th>Värden &amp; gränser</th><th>Standard</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Obligatoriskt</td><td data-cell-label=\"Värden &amp; gränser\"><span class=\"card-cell-label\">Värden &amp; gränser</span><div>liquid/lfm-2.5-embedding-350m:free</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string|string[]|integer[]|integer[][]</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Obligatoriskt</td><td data-cell-label=\"Värden &amp; gränser\"><span class=\"card-cell-label\">Värden &amp; gränser</span><div>Minsta antal objekt: 1</div><div>Villkor: En homogen batch som inte är tom. Token-ID:n är heltal som är större än eller lika med noll.</div><div>Indatabudget: Maximum: 512 · Textenhet: UTF8-byte · Tokenenhet: element i en tokenarray</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">encoding_format</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Valfritt</td><td data-cell-label=\"Värden &amp; gränser\"><span class=\"card-cell-label\">Värden &amp; gränser</span><div>float</div></td><td data-cell-label=\"Standard\" data-default=\"known\"><span class=\"card-cell-label\">Standard</span>float</td></tr><tr data-parameter-availability=\"unsupported\"><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">dimensions</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>integer</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Stöds inte</td><td data-cell-label=\"Värden &amp; gränser\"><span class=\"card-cell-label\">Värden &amp; gränser</span><div>Minimum: 1</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">user</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>json_value</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Valfritt</td><td data-cell-label=\"Värden &amp; gränser\"><span class=\"card-cell-label\">Värden &amp; gränser</span><div>Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">session_id</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>json_value</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Valfritt</td><td data-cell-label=\"Värden &amp; gränser\"><span class=\"card-cell-label\">Värden &amp; gränser</span><div>Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"pass_through_metadata\"><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">trace</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>json_value</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Valfritt</td><td data-cell-label=\"Värden &amp; gränser\"><span class=\"card-cell-label\">Värden &amp; gränser</span><div>Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>object</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Valfritt</td><td data-cell-label=\"Värden &amp; gränser\"><span class=\"card-cell-label\">Värden &amp; gränser</span><div>Villkor: provider.options avvisades</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Kombinationer av indatamaterial</summary><p class=\"note-s\"><b>text_to_embedding</b></p></details><details class=\"note-s\" data-method-contract><summary>Metodparametrar och livscykel</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Avtal</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Avtal\"><span class=\"card-cell-label\">Avtal</span>application/json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Avtal\"><span class=\"card-cell-label\">Avtal</span>model, input</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>input_shapes</code></th><td data-cell-label=\"Avtal\"><span class=\"card-cell-label\">Avtal</span>string, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>encoding_format</code></th><td data-cell-label=\"Avtal\"><span class=\"card-cell-label\">Avtal</span>float</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>dimensions_override</code></th><td data-cell-label=\"Avtal\"><span class=\"card-cell-label\">Avtal</span>false</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>max_input_budget_units</code></th><td data-cell-label=\"Avtal\"><span class=\"card-cell-label\">Avtal</span>512</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>multimodal_objects</code></th><td data-cell-label=\"Avtal\"><span class=\"card-cell-label\">Avtal</span>false</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Avtal\"><span class=\"card-cell-label\">Avtal</span>text, token_ids</td></tr></tbody></table></div><p>Livscykel: <code>synchronous_json</code></p><p class=\"note-s\">Behåll varje vektorindex och dimension.</p><p class=\"note-s\">Att modellen har ett multimodalt namn innebär inte att bildobjekt tillåts på just denna anropsväg.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Priser</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tariffuppgifter lägger inte till begäransalternativ. Parametrar som stöds anges för den valda metoden.</p><dl data-price-conditions><dt>Snabbt läge</dt><dd>Standardpris <span class=\"note-s\">När snabbt läge är valt</span></dd><dt>Flex-läge</dt><dd>Standardpris <span class=\"note-s\">När läget flex är valt</span></dd><dt>Högsta resonemangsnivå</dt><dd>Standardpris <span class=\"note-s\">När den högsta resonemangsnivån använder standardjusteringen (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot-priser</h4><h4>Priser efter konfiguration</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfiguration</th><th>Prislista</th><th>Avgift</th></tr></thead><tbody><tr><th data-cell-label=\"Konfiguration\" scope=\"row\"><span class=\"card-cell-label\">Konfiguration</span>Grundpriser för token</th><td data-cell-label=\"Prislista\"><span class=\"card-cell-label\">Prislista</span>Grundpris</td><td data-cell-label=\"Avgift\"><span class=\"card-cell-label\">Avgift</span><div><span>Indata · Indatatoken</span> <b>$0</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Utdata · Utdatatoken</span> <b>$0</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Indata · Cacheläsning</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Indata · Skrivning till cache</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Indata · Skrivning till cache, 1 tim</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot reserverar ett uppskattat belopp före en begäran. Efter resultatet slutregleras avgiften utifrån uppmätt förbrukning. Slutreglering för strömning använder den slutliga förbrukningsposten. <a href=\"/docs/sv/billing/reserve/\">Så fungerar reservation och slutreglering →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Exempelbegäranden</h3><h4>Ailoot Ultra · Embeddings</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kodvarianter\"><button class=\"cg-tab\" id=\"model-code-1793-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1793-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</button><button class=\"cg-tab\" id=\"model-code-1793-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1793-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Python SDK</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopiera kod\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1793-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1793-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;liquid/lfm-2.5-embedding-350m:free&quot;, &quot;input&quot;: [&quot;First document&quot;, &quot;Second document&quot;]}&#39;)\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nr=json.loads(Path(&quot;result.json&quot;).read_text())\nfor x in r.get(&quot;data&quot;,[]): print(json.dumps({&quot;index&quot;:x.get(&quot;index&quot;),&quot;embedding&quot;:x.get(&quot;embedding&quot;)}))\nPY_RESULT\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-1793-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-1793-tab-1\" hidden><pre data-lang=\"python\"><code>from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=&quot;https://api.ailoot.ai/v1&quot;,api_key=os.environ[&quot;AILOOT_API_KEY&quot;],max_retries=0)\nresult=client.embeddings.create(model=&#39;liquid/lfm-2.5-embedding-350m:free&#39;,input=[&quot;First document&quot;,&quot;Second document&quot;])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Ta emot och spara resultat</h3><h4>Ailoot Ultra · Embeddings</h4><p class=\"note-s\">json</p><div class=\"card-result-process\" data-all-results><h5>Behåll alla färdiga resultat</h5><p class=\"note-s\">Behåll varje fullständigt returnerat svar, fil och innehållsdel.</p><p class=\"note-s\">Behåll varje vektor tillsammans med dess index. Antalet vektorer måste vara lika med antalet indataobjekt; dimensionerna måste vara konsekventa.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Om det ursprungliga svaret behöver kontrolleras</h5><p class=\"note-s\">Ingen endpoint för inbäddningsjobb införs.</p></div><details class=\"card-about\" data-output-fields><summary>Svarsfält</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Fält</th><th>Typ</th></tr></thead><tbody><tr><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">object</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>string</td></tr><tr><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>string</td></tr><tr><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">data[].index</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>integer</td></tr><tr><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">data[].embedding</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>finite float[]</td></tr><tr><th data-cell-label=\"Fält\" scope=\"row\"><span class=\"card-cell-label\">Fält</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>object</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Fel och nästa steg</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Svar</th><th>Villkor</th><th>Nästa steg</th></tr></thead><tbody><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Villkor\"><span class=\"card-cell-label\">Villkor</span>Ogiltiga obligatoriska fält, ogiltig representation av underlaget eller ogiltigt parametervärde</td><td data-cell-label=\"Nästa steg\"><span class=\"card-cell-label\">Nästa steg</span>Korrigera de angivna fälten före en ny begäran om att skapa.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Alias</h3><h4>Modellalias</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=liquid%2Flfm-2.5-embedding-350m%3Afree&amp;route=Ultra&amp;caller=liquid%2Flfm-2.5-embedding-350m%3Afree&amp;fmt=embeddings\"><code>liquid/lfm-2.5-embedding-350m:free</code></a></span></p><h4>Alias för metodsökvägar</h4><p class=\"note-s\">Använd metodsökvägarna som visas ovan.</p><h4>Relaterade anropar-ID:n</h4><p class=\"note-s\"><a href=\"#m=liquid%2Flfm-2.5-embedding-350m%3Afree&amp;route=Ultra&amp;caller=liquid%2Flfm-2.5-embedding-350m%3Afree&amp;fmt=embeddings\"><code>liquid/lfm-2.5-embedding-350m:free</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "liquid/lfm-2.5-embedding-350m:free",
        "fmt": "embeddings",
        "http": "POST",
        "path": "/v1/embeddings",
        "request_model_id": "liquid/lfm-2.5-embedding-350m:free",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|embeddings|/v1/embeddings|liquid%2Flfm-2.5-embedding-350m%3Afree",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep every vector with its index. Vector count must equal input count; dimensions must be consistent.",
            "errors": [
              {
                "code": null,
                "condition": "Ogiltiga obligatoriska fält, ogiltig representation av underlaget eller ogiltigt parametervärde",
                "http_status": 400,
                "recovery": "Korrigera de angivna fälten före en ny begäran om att skapa.",
                "type": "invalid_request_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "create": {
                "http": "POST",
                "path": "/v1/embeddings"
              },
              "job_read": null,
              "mode": "synchronous_json",
              "unknown": "Ingen endpoint för inbäddningsjobb införs."
            },
            "material_combinations": [
              {
                "alternatives": [
                  "string",
                  "string[]",
                  "nonnegative_integer_token_array",
                  "nonnegative_integer_token_array[]"
                ],
                "mode": "text_to_embedding"
              }
            ],
            "operation_modes": [
              "single_embedding",
              "batched_embeddings"
            ],
            "outputs": {
              "all_results": "Behåll varje vektor tillsammans med dess index. Antalet vektorer måste vara lika med antalet indataobjekt; dimensionerna måste vara konsekventa.",
              "default_dimensions": 1024,
              "family": "embedding",
              "fields": [
                {
                  "description": null,
                  "name": "object",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "data[].index",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "data[].embedding",
                  "type": "finite float[]"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "liquid/lfm-2.5-embedding-350m:free"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "budget": {
                  "maximum": 512,
                  "text_unit": "UTF8-byte",
                  "token_unit": "element i en tokenarray"
                },
                "conditions": "En homogen batch som inte är tom. Token-ID:n är heltal som är större än eller lika med noll.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "min_items": 1,
                "name": "input",
                "required": true,
                "type": "string|string[]|integer[]|integer[][]"
              },
              {
                "availability": "source_interface",
                "default": "float",
                "default_known": true,
                "enum": [
                  "float"
                ],
                "enum_known": true,
                "name": "encoding_format",
                "required": false,
                "type": "string"
              },
              {
                "availability": "unsupported",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minimum": 1,
                "name": "dimensions",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "user",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "session_id",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "source_interface",
                "conditions": "provider.options avvisades",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "mixed input kinds",
              "empty input",
              "image/audio/file objects",
              "encoding_format=base64",
              "dimensions override"
            ]
          },
          "hints": [
            "Behåll varje vektorindex och dimension.",
            "Att modellen har ett multimodalt namn innebär inte att bildobjekt tillåts på just denna anropsväg."
          ],
          "input": {
            "content_type": "application/json",
            "dimensions_override": false,
            "encoding_format": [
              "float"
            ],
            "input_shapes": [
              "string",
              "string[]",
              "nonnegative_integer_token_array",
              "nonnegative_integer_token_array[]"
            ],
            "material_types": [
              "text",
              "token_ids"
            ],
            "max_input_budget_units": 512,
            "multimodal_objects": false,
            "required": [
              "model",
              "input"
            ]
          },
          "lifecycle": {
            "mode": "synchronous_json",
            "unknown": "no embedding job endpoint inferred"
          },
          "manufacturer_capability": null,
          "method": {
            "http": "POST",
            "path": "/v1/embeddings"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_embedding"
          ],
          "output": {
            "default_dimensions": 1024,
            "family": "embedding",
            "format": "json",
            "http_success": 200,
            "vectors": "one dense float vector per input; indices/model/usage validated"
          }
        },
        "ctx": 512,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Grundpriser för token",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"liquid/lfm-2.5-embedding-350m:free\", \"input\": [\"First document\", \"Second document\"]}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path(\"result.json\").read_text())\nfor x in r.get(\"data\",[]): print(json.dumps({\"index\":x.get(\"index\"),\"embedding\":x.get(\"embedding\")}))\nPY_RESULT\n",
            "label": "curl · retained exact creation",
            "language": "bash"
          },
          {
            "code": "from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=\"https://api.ailoot.ai/v1\",api_key=os.environ[\"AILOOT_API_KEY\"],max_retries=0)\nresult=client.embeddings.create(model='liquid/lfm-2.5-embedding-350m:free',input=[\"First document\",\"Second document\"])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n",
            "label": "Python SDK · all vectors",
            "language": "python"
          }
        ],
        "family": "openai",
        "fast_multiplier": 1,
        "flex_multiplier": 1,
        "fmt": "embeddings",
        "hints": [
          "Keep every vector index and dimension.",
          "Multimodal model name does not admit image objects on this exact path."
        ],
        "http": "POST",
        "in": 0,
        "input": [
          "text",
          "token_ids"
        ],
        "label": "Эмбеддинги",
        "max_out": null,
        "max_reasoning_effort_multiplier": 1,
        "method_aliases": [],
        "out": 0,
        "output": [
          "embedding"
        ],
        "path": "/v1/embeddings",
        "price_conditions": [
          {
            "label": "Snabbt läge",
            "value": "Standardpris",
            "when": "När snabbt läge är valt"
          },
          {
            "label": "Flex-läge",
            "value": "Standardpris",
            "when": "När läget flex är valt"
          },
          {
            "label": "Högsta resonemangsnivå",
            "value": "Standardpris",
            "when": "När den högsta resonemangsnivån använder standardjusteringen (default)"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "liquid/lfm-2.5-embedding-350m:free",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    }
  ],
  "model_id": "liquid/lfm-2.5-embedding-350m:free",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "e5a8afe8344a4be69f21a2afb412302a20d8b4ab88802ed9cc5b68ada8db78fc",
    "input_html_sha256": "455f5628207f46cf7b8d429891d48f1fa9bf273614f98ba8e3864c36485441c0",
    "private_audit_sha256": "882aca4d6583f9ff2ba7851749d621640b944dbcbd36b17fb93a301b5c5de39c",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/sv/liquid-lfm-2-5-embedding-350m-u003a-free/",
    "description": "LiquidAI LFM2.5-Embedding-350M producerar en 1024-dimensionell vektor per text för flerspråkig och språköverskridande informationssökning. Den riktar sig till 11 språk och korta indata på 512 token, med separata prefix för fråga och dokument.",
    "locale": "sv",
    "md_url": "https://ailoot.ai/models/sv/liquid-lfm-2-5-embedding-350m-u003a-free/index.md",
    "title": "LiquidAI: LFM2.5-Embedding-350M (free) — Ailoot",
    "url": "https://ailoot.ai/models/sv/liquid-lfm-2-5-embedding-350m-u003a-free/"
  },
  "rawModel": {
    "about": "LFM2.5-Embedding-350M är LiquidAI:s täta bi-encoder för flerspråkig sökning och sökning över språkgränser. Den producerar en vektor med 1024 dimensioner för varje text och riktar sig mot sökning med kort kontext på elva språk. Den namngivna 350M-modellfamiljen använder en dubbelriktad anpassning av LFM2.5-350M-Base; den detaljerade modelltabellen anger ungefär 354 miljoner parametrar för denna inbäddningsutgåva.\n\n### En dubbelriktad sökrepresentation\n\nTillverkaren anpassar basmodellen så att attention och lokala faltningar kan använda kontext på båda sidor av en token. Poolning i CLS-stil omvandlar den behandlade texten till en tät vektor. Modelltabellen beskriver sjutton lager: tio faltningsblock, sex attention-block och ett poolningssteg. Detta är en sökkodare med egen förberedelse och eget resultat, i stället för basmodellens textgenereringsuppgift.\n\nDen separat namngivna LFM2.5-ColBERT-350M behåller vektorer per token för sen interaktion. Den representationen kräver ett annat index och en annan jämförelsemetod. Inbäddningsmodellen här ger en vektor per dokument eller fråga med cosinuslikhet som dokumenterad jämförelse.\n\n### Använd rätt asymmetriska prompter\n\nFörbered sökfrågor med ”query:” och källpassager med ”document:”. Tillverkaren lagrar dessa prompter i konfigurationen och referensarbetsflödet använder motsvarande promptnamn. Den rekommenderar särskilt att använda motsvarande roll på varje sida eftersom modellen tränades med dessa prefix. Detta dokumentprefix skiljer sig från E5-modellernas ”passage:”-konvention.\n\nEn praktisk produktsöksamling kan innehålla beskrivningar på de språk som stöds. Förbered användarens sökformulering som en fråga och varje produktbeskrivning som ett dokument. Lagra originaltexten, produktidentifieraren och språket tillsammans med vektorn så att ett sökresultat kan returnera motsvarande post. För en supportsamling behåller du regeln eller instruktionen som är relevant för frågan i stället för att ersätta den med en ovidkommande kort etikett.\n\n### Språk och passagestorlek\n\nDen dokumenterade språkuppsättningen är engelska, spanska, tyska, franska, italienska, portugisiska, arabiska, svenska, norska, japanska och koreanska. Tillverkaren riktar modellen uttryckligen mot både sökning inom ett språk och över språkgränser. Förbered verkliga frågor från den avsedda målgruppen och granska den returnerade dokumenttexten på dessa språk.\n\nSpecifikationen för dokumentlängd är 512 token. Dela en lång källa i sammanhängande passager som bevarar rubriken, definitionerna och villkoren som ett hämtat resultat behöver. Rollprefixet och tillagd kontext ingår i den förberedda inmatningen. Ett FAQ-svar, en produktförklaring eller ett fokuserat avsnitt i ett tekniskt dokument är en mer lämplig enhet än en hel för stor manual.\n\n### Träning och matchning\n\nTillverkaren beskriver tre träningssteg: engelsk kontrastiv förträning; flerspråkig destillation och destillation över språkgränser; därefter finjustering med utvunna svåra negativa exempel. Den resulterande modellen är avsedd för produktkataloger, FAQ- och supportsamlingar, fil- eller anteckningssökning och sökning i verksamhetskunskap. Detta är uppgifter för textrepresentationerna, inte påståenden om driftsättning av en viss applikation.\n\nTillverkarens exempel normaliserar fråge- och dokumentvektorer och rangordnar dem med en skalärprodukt, motsvarande cosinuslikhet. Beräkna korpusrepresentationerna i förväg när källmaterialet förbereds, beräkna sedan inbäddningen för en sökfråga och returnera kandidatdokument med deras text och identifierare. Behåll den valda modellen och rollkonventionen tillsammans med indexet så att den numeriska jämförelsen använder kompatibla representationer.\n\nDet användbara resultatet är ett kompakt, tätt sökindex eller en frågevektor som hämtar källmaterial över den dokumenterade språkuppsättningen. Denna exakta LFM2.5 Embedding-utgåva förblir åtskild från sin ColBERT-följeslagare, äldre LFM2-sökmodeller och externt kvantiserade implementationer. Den valda passagetexten är evidensen som används av en läsare eller ett senare RAG-svarssteg.",
    "alias_of": null,
    "aliases": [],
    "author": "LiquidAI",
    "available": null,
    "canonical_model": "liquid/lfm-2.5-embedding-350m:free",
    "capabilities": {
      "context_length": 512,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "embeddings"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          }
        ],
        "summary": "Fullständig prissättning för konfigurationen finns i detaljerna."
      }
    ],
    "ctx": 512,
    "entity_type": "model",
    "formats": [
      "embeddings"
    ],
    "id": "liquid/lfm-2.5-embedding-350m:free",
    "input": [
      "text",
      "token_ids"
    ],
    "kind": "embedding",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Keep every vector with its index. Vector count must equal input count; dimensions must be consistent.",
            "errors": [
              {
                "code": null,
                "condition": "Ogiltiga obligatoriska fält, ogiltig representation av underlaget eller ogiltigt parametervärde",
                "http_status": 400,
                "recovery": "Korrigera de angivna fälten före en ny begäran om att skapa.",
                "type": "invalid_request_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "create": {
                "http": "POST",
                "path": "/v1/embeddings"
              },
              "job_read": null,
              "mode": "synchronous_json",
              "unknown": "Ingen endpoint för inbäddningsjobb införs."
            },
            "material_combinations": [
              {
                "alternatives": [
                  "string",
                  "string[]",
                  "nonnegative_integer_token_array",
                  "nonnegative_integer_token_array[]"
                ],
                "mode": "text_to_embedding"
              }
            ],
            "operation_modes": [
              "single_embedding",
              "batched_embeddings"
            ],
            "outputs": {
              "all_results": "Behåll varje vektor tillsammans med dess index. Antalet vektorer måste vara lika med antalet indataobjekt; dimensionerna måste vara konsekventa.",
              "default_dimensions": 1024,
              "family": "embedding",
              "fields": [
                {
                  "description": null,
                  "name": "object",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "data[].index",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "data[].embedding",
                  "type": "finite float[]"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "liquid/lfm-2.5-embedding-350m:free"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "budget": {
                  "maximum": 512,
                  "text_unit": "UTF8-byte",
                  "token_unit": "element i en tokenarray"
                },
                "conditions": "En homogen batch som inte är tom. Token-ID:n är heltal som är större än eller lika med noll.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "min_items": 1,
                "name": "input",
                "required": true,
                "type": "string|string[]|integer[]|integer[][]"
              },
              {
                "availability": "source_interface",
                "default": "float",
                "default_known": true,
                "enum": [
                  "float"
                ],
                "enum_known": true,
                "name": "encoding_format",
                "required": false,
                "type": "string"
              },
              {
                "availability": "unsupported",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minimum": 1,
                "name": "dimensions",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "user",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "session_id",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "pass_through_metadata",
                "conditions": "Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "type": "json_value"
              },
              {
                "availability": "source_interface",
                "conditions": "provider.options avvisades",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "mixed input kinds",
              "empty input",
              "image/audio/file objects",
              "encoding_format=base64",
              "dimensions override"
            ]
          },
          "hints": [
            "Behåll varje vektorindex och dimension.",
            "Att modellen har ett multimodalt namn innebär inte att bildobjekt tillåts på just denna anropsväg."
          ],
          "input": {
            "content_type": "application/json",
            "dimensions_override": false,
            "encoding_format": [
              "float"
            ],
            "input_shapes": [
              "string",
              "string[]",
              "nonnegative_integer_token_array",
              "nonnegative_integer_token_array[]"
            ],
            "material_types": [
              "text",
              "token_ids"
            ],
            "max_input_budget_units": 512,
            "multimodal_objects": false,
            "required": [
              "model",
              "input"
            ]
          },
          "lifecycle": {
            "mode": "synchronous_json",
            "unknown": "no embedding job endpoint inferred"
          },
          "manufacturer_capability": null,
          "method": {
            "http": "POST",
            "path": "/v1/embeddings"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_embedding"
          ],
          "output": {
            "default_dimensions": 1024,
            "family": "embedding",
            "format": "json",
            "http_success": 200,
            "vectors": "one dense float vector per input; indices/model/usage validated"
          }
        },
        "ctx": 512,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Grundpriser för token",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"liquid/lfm-2.5-embedding-350m:free\", \"input\": [\"First document\", \"Second document\"]}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path(\"result.json\").read_text())\nfor x in r.get(\"data\",[]): print(json.dumps({\"index\":x.get(\"index\"),\"embedding\":x.get(\"embedding\")}))\nPY_RESULT\n",
            "label": "curl · retained exact creation",
            "language": "bash"
          },
          {
            "code": "from openai import OpenAI\nimport os\n\nclient=OpenAI(base_url=\"https://api.ailoot.ai/v1\",api_key=os.environ[\"AILOOT_API_KEY\"],max_retries=0)\nresult=client.embeddings.create(model='liquid/lfm-2.5-embedding-350m:free',input=[\"First document\",\"Second document\"])\nprint(result)\nfor item in result.data:print(item.index,item.embedding)\n",
            "label": "Python SDK · all vectors",
            "language": "python"
          }
        ],
        "family": "openai",
        "fast_multiplier": 1,
        "flex_multiplier": 1,
        "fmt": "embeddings",
        "hints": [
          "Keep every vector index and dimension.",
          "Multimodal model name does not admit image objects on this exact path."
        ],
        "http": "POST",
        "in": 0,
        "input": [
          "text",
          "token_ids"
        ],
        "label": "Эмбеддинги",
        "max_out": null,
        "max_reasoning_effort_multiplier": 1,
        "method_aliases": [],
        "out": 0,
        "output": [
          "embedding"
        ],
        "path": "/v1/embeddings",
        "price_conditions": [
          {
            "label": "Snabbt läge",
            "value": "Standardpris",
            "when": "När snabbt läge är valt"
          },
          {
            "label": "Flex-läge",
            "value": "Standardpris",
            "when": "När läget flex är valt"
          },
          {
            "label": "Högsta resonemangsnivå",
            "value": "Standardpris",
            "when": "När den högsta resonemangsnivån använder standardjusteringen (default)"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "liquid/lfm-2.5-embedding-350m:free",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "liquid/lfm-2.5-embedding-350m:free",
        "request_model_id": "liquid/lfm-2.5-embedding-350m:free",
        "route_label": "Ultra"
      }
    ],
    "name": "LiquidAI: LFM2.5-Embedding-350M (free)",
    "price": {
      "in": 0,
      "in_label": null,
      "out": 0,
      "out_label": null,
      "scope_label": "Token rates",
      "sort_in": 0,
      "sort_out": 0,
      "varies": false
    },
    "pricing_profiles": [
      {
        "dimensions": {
          "regime": "base"
        },
        "label": "Эмбеддинги · Base token rates",
        "units": [
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    ],
    "public_id": "liquid/lfm-2.5-embedding-350m:free",
    "short": "LiquidAI LFM2.5-Embedding-350M producerar en 1024-dimensionell vektor per text för flerspråkig och språköverskridande informationssökning. Den riktar sig till 11 språk och korta indata på 512 token, med separata prefix för fråga och dokument."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "LiquidAI LFM2.5-Embedding-350M producerar en 1024-dimensionell vektor per text för flerspråkig och språköverskridande informationssökning. Den riktar sig till 11 språk och korta indata på 512 token, med separata prefix för fråga och dokument.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "a4278f9cbecb35e14f5a53ed65559dadb07e2ea80913cb99ab1b3726db64ef3b",
    "renderer_sha256": "8a45bb31b83d2551e6d975cf4683518c7cb445a54b9394a01947f4dd103f1051"
  },
  "sourceRevision": "729313a1d4d5a313398789762f62b430fad541e7810da027793d5986833934d3"
}
