Beheer LLM-providers en models, synchroniseer models vanuit externe registers, voer statuscontroles uit en configureer API-sleutels per organization voor onafhankelijke facturatie.
Entity Enricher ondersteunt een breed scala aan LLM-providers. Elke provider kan meerdere modellen hebben met individuele prijzen, mogelijkheden en configuratie.
Veel teams sturen LLM-verkeer via een bedrijfs-AI-gateway, een regionaal endpoint of een provider die niet standaard is ingebouwd — bijvoorbeeld een enterprise LiteLLM-proxy, Cloudflare AI Gateway of Alibaba DashScope (voor Qwen-modellen). Je voegt deze toe als een eigen Standard (OpenAI-compatible)provider met een aangepaste base-URL.
acme-openai-gw). Ingebouwde namen zoals openai of anthropic zijn gereserveerd. https://gateway.example.com/v1. Dit veld is vereist voor elke provider waarvoor Entity Enricher geen ingebouwde client heeft. https://-URL's zijn. Loopback- en privébereiken (localhost, 10.x, 192.168.x) worden geweigerd om SSRF te voorkomen — een zelf gehoste server moet bereikbaar zijn via internet. Gebruik voor een lokale Ollama in plaats daarvan de speciale Ollama-tunnel./v1-protocol spreken (chat completions, /models). {endpoint}/models om de sleutel en de basis-URL te verifiëren voordat je een enrichment uitvoert.Elke aanroep met een API-sleutel wordt afgestemd op het budget dat de provider die sleutel toekent — verzoeken en tokens per minuut, per model — zodat een fan-out nooit tegen 429-fouten aanloopt. Het budget wordt niet ingetypt: het wordt uitgelezen uit de response-headers van de provider zelf, aangeleerd na een afwijzing wanneer de provider niets vermeldt, of, als laatste redmiddel, door een eigenaar ingevoerd.
Dit staat los van de limiet max gelijktijdige jobs van je abonnement, die bepaalt hoeveel enrichment-jobs je hele organization tegelijk uitvoert over alle providers heen.
Elk model houdt zijn mogelijkheden bij, die als pictogrammen worden getoond in de modelkiezer:
| Mogelijkheid | Beschrijving |
|---|---|
| Vision | Kan afbeeldingen en visuele invoer verwerken |
| Tool-aanroepen | Ondersteunt function calling / tool use |
| Audio-invoer | Kan audio-invoer verwerken |
| PDF-invoer | Kan PDF-documenten verwerken |
| Promptcaching | Ondersteunt prompt-caching voor kostenreductie |
| Redeneren | Uitgebreid denken / chain-of-thought-mogelijkheden |
| Embeddings | Zet tekst om in een vector in plaats van te antwoorden — waarmee semantische ID's worden opgelost. Embeddingmodellen vormen een eigen familie, met hun eigen vectorgrootte, en verschijnen nooit in een verrijkingskiezer |
Een model benoemen is optioneel. Enrichment, schemageneratie en samplegeneratie accepteren allemaal auto — en behandelen een weggelaten model als auto — dat op de server wordt bepaald, per taak, op het moment dat de job start. De run vermeldt welk model is gekozen, dus automatisch betekent nooit ondoorzichtig.
Eigenaren kunnen per taak een voorkeursmodel vastzetten onder Instellingen → Organisatie → Modelselectie. Als er een is ingesteld voor de betreffende taak, wint die.
Zonder vastgezet model valt de keuze op het model met de beste gemengde score uit je scorebron-benchmarks — je eigen metingen van kwaliteit, snelheid en kosten op je eigen schema's. Is er helemaal geen scorebron, dan wordt het verzoek geweigerd in plaats van gegokt.
Zoeken op internet inschakelen, of een document bijvoegen dat ongewijzigd verstuurd moet worden, beperkt de kandidaten tot modellen die dat ook echt kunnen — en komt er geen enkele in aanmerking, dan krijg je een expliciete foutmelding in plaats van een stille downgrade.
Een model kan ook voor één taak worden geblokkeerd zonder gedeactiveerd te worden: een model dat goed verrijkt maar slechte schema's genereert, kun je alleen verbergen in de keuzelijsten voor schema- en voorbeeldgeneratie, hetzij voor je organisatie, hetzij globaal door een beheerder. Overal elders blijft het volledig beschikbaar — een zachter instrument dan de deactivering hieronder.
Houd modelprijzen up-to-date door te synchroniseren vanuit externe registers. Het synchronisatieproces detecteert automatisch nieuwe modellen, prijswijzigingen en verwijderde modellen.
De standaardprijsbron. Haalt gegevens op uit LiteLLM's door de community onderhouden register op GitHub met echte API-modelnamen, prijzen, contextlengtes en mogelijkheden.
Dekt ~30 providers. Bevat geen weergavenamen, benchmarks of generatiesnelheid.
Een alternatieve bron van pricepertoken.com. Bevat weergavenamen, benchmarks (coderings- en wiskundescores) en generatiesnelheid (tokens per seconde).
Dekt ~20 providers. Biedt rijkere metadata dan LiteLLM.
Een officiële geverifieerde catalogus van GLM-model-identifiers, met prijzen die rechtstreeks uit de Z.AI-documentatie zijn overgenomen en hiaten in mogelijkheden die daar zijn onderzocht.
Vervangt Z.AI-vermeldingen die eerder uit LiteLLM en PricePerToken zijn geïmporteerd.
Valideer proactief of modellen bereikbaar zijn door een minimale health check-prompt uit te voeren. Zo worden defecte modellen opgespoord voordat gebruikers fouten tegenkomen tijdens verrijking.
Statuscontroles kunnen worden uitgevoerd op alle modellen, de modellen van een specifieke provider of een enkel model. Resultaten worden in realtime gestreamd via SSE met een voortgangsbalk die het aantal geslaagde/mislukte controles toont.
Wanneer een verrijkingsaanroep mislukt met een “model niet gevonden”-fout, wordt het model automatisch gedeactiveerd om herhaalde fouten te voorkomen. Dit gebeurt in realtime tijdens normale verrijkingsbewerkingen.
| Reden voor deactivering | Ingesteld door | Automatisch heractiveerd? |
|---|---|---|
| Model niet gevonden | Verrijkingsfouten, health checks, of een mogelijkhedentest die geen enkele route beantwoordt | Ja (via prijssynchronisatie of validatie) |
| Geen gestructureerde uitvoer | Mogelijkhedentest: noch het tool-kanaal noch het native kanaal op enige bereikbare route | Ja, alleen door een latere capability-probe |
| Synchronisatie verwijderd | Prijssynchronisatie (model verdwenen) | Ja (als het model opnieuw in het register verschijnt) |
| Handmatig | Beheerdersschakelaar in de UI | Nee (alleen handmatige reactivering) |
Organisaties kunnen hun eigen API-sleutels voor LLM-providers configureren voor onafhankelijke facturering en gebruiksregistratie. Het systeem gebruikt een sleutelresolutie in twee niveaus met LRU-selectie:
Sleutels per organisatie geconfigureerd op de pagina API Keys. Ondersteunt meerdere sleutels per provider met LRU-rotatie. Versleuteld met Fernet.
Platformbrede sleutels beheerd door beheerders. Gedeeld over alle organizations. Ondersteunt ook meerdere sleutels per provider met LRU-rotatie.
Bij elke verrijking wordt vastgelegd welke sleutel is gebruikt, zodat je de kosten per sleutel kunt volgen. Sleutels ondersteunen health checks en gebruikstellers. Binnen een pool wordt de ingeschakelde sleutel met de oudste tijdstempel van laatst gebruikt als volgende gekozen; een sleutel verlaat de rotatie alleen als je hem handmatig uitschakelt, dus een providerfout haalt nooit stilzwijgend een sleutel uit dienst. Lees in de handleiding API Keys hoe je sleutels beheert.
Exporteer je volledige provider- en modelconfiguratie als JSON voor back-up of overdracht naar een andere instantie. Importeren is altijd een upsert: bestaande providers en modellen worden op naam gematcht en ter plekke bijgewerkt, terwijl nieuwe worden toegevoegd — er wordt niets verwijderd.
De export bevat providerinstellingen, modelconfiguraties, prijzen, mogelijkheden en de canonieke modelspecificaties — maar nooit API-sleutels, die apart worden opgeslagen. Configureer API-sleutels na het importeren apart. Systeembeheerders maken een back-up van de volledige globale catalogus; organisatie-eigenaren exporteren en importeren alleen de providers en modellen van hun eigen organisatie — de gedeelde globale catalogus kan niet via import worden aangemaakt of bewerkt.
De modellenpagina toont de wereldwijde catalogus aan iedereen: leveranciersprijzen, gemeten mogelijkheden en de scores die elk model behaalde op de benchmarkscenario's die als globale scorebronnen zijn gepubliceerd. De pagina leest twee statische JSON-bestanden die door de nachtelijke modelvernieuwing worden herschreven en die je kunt downloaden en hergebruiken. Een model dat de provider niet langer aanbiedt (gedeactiveerd als “model not found”) wordt weggelaten; elk ander model uit de catalogus staat in de lijst.
/data/models.json — de tabel: één vermelding per provider × model, met opzoektabellen voor providers, scenario's en specs./data/benchmarks.json — elk openbaar benchmarkresultaat, gegroepeerd per modelsleutel.Beide worden geleverd met een ETag en een openbare cache van één uur, gzip-gecodeerd als de client dat accepteert. Het veld version wordt opgehoogd bij elke wijziging waarop een consument zich moet aanpassen.
generated_at, counts, default_weightsWanneer het bestand is geschreven, hoeveel modellen, providers en scenario's het bevat, en de verhouding kwaliteit / snelheid / kosten (in procenten) achter elke totaalscore.providers[], scenarios[], specs{}Opzoektabellen: modellen verwijzen via index naar een provider en de scenario's; specs zijn de openbare benchmarkscores van de weights (intelligence, coding, math en de rest onder extra), gekoppeld aan de canonieke sleutel zodat resellers van hetzelfde model ze delen.models[].key, model, display_name, canonical_keyDe samengestelde sleutel die de API accepteert (provider::model), de ruwe model-id, het label en de provideroverstijgende identiteit.models[].pricingAdviesprijzen van de leverancier in USD per miljoen tokens: input, output, cache_read, cache_write, cache_write_1h, reasoning_output, plus web_search_per_query met de bijbehorende eenheid. Vóór eventuele abonnementscommissie.models[].capabilities[]De vlaggen die gelden: vision, pdf_input, audio_input, audio_output, video_input, tool_calls, tool_choice, response_schema, strict_structured_output, reasoning, reasoning_effort, web_search, prompt_caching, embeddings, requires_streaming. Een ontbrekende vlag is false of niet gemeten.models[].context_length, max_input_tokens, max_output_tokens, deprecation_date, latencyLimieten, de uitfaseringsdatum van de leverancier indien aangekondigd, en de opgehaalde latentiecijfers (tokens per seconde, tijd tot eerste token).models[].enrichment_capable, disabled_tasks[]Of het model überhaupt een kanaal voor gestructureerde uitvoer heeft, en de taken waarvoor de app het nooit aanbiedt (classificatie en arbitrage vereisen tool calls; schema- en voorbeeldgeneratie volgen de schemageneratie-gate).models[].scores{task}Per taaktype (enrichment, schema_generation, sample_generation): de gemiddelde kwaliteit, snelheid en kosten over de openbare scenario's van die taak, het totaal volgens de standaardgewichten, en de scenario-indexen. Snelheid en kosten zijn relatief ten opzichte van de andere modellen op hetzelfde scenario.Hoe de scores voor kwaliteit, snelheid en kosten worden berekend, lees je in Benchmark Scoring.