Modèle / jeu de données
superlinked/sie avatar
superlinked/sie

SIE : le moteur d'inférence Superlinked pour l'inférence auto-hébergée des agents

Serveur d'inférence open source et cluster de production pour tous les modèles dont votre agent a besoin.

3 283 étoiles312 forksPythonApache-2.0

En bref

De quoi s’agit-il ?
Le moteur d'inférence Superlinked dessert les modèles de recherche, conversion de documents, sortie structurée, sécurité du contenu et boucle d'agent via une API compatible OpenAI.
À qui s’adresse-t-il ?
Le README documente un serveur d'inférence à cluster unique avec chargement de modèles à la demande, cinq groupes de tâches, des SDK Python et TypeScript et une pile de production basée sur Helm. Il ne publie ni résultats de benchmarks, ni chiffres de latence, ni engagements de support ou de sécurité ; ces affirmations restent non vérifiées par le dépôt lui-même.
Puis-je l’utiliser commercialement ?
Oui. Apache-2.0 est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
Est-il encore maintenu ?
Oui. Les derniers commits datent d’il y a 4 jours.
En quel langage est-il écrit ?
Principalement Python, d’après les statistiques de langage de GitHub.

Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.

ANALYSE OPEN SOURCE APPROFONDIE

Une API compatible OpenAI pour tous les modèles qu'un agent appelle

SIE (Superlinked Inference Engine) est un serveur d'inférence auto-hébergé que le README décrit comme faisant tourner les modèles derrière chaque tâche d'agent via une seule API : recherche et récupération, conversion de documents en Markdown, sortie structurée, sécurité du contenu et la boucle d'agent elle-même. L'objectif affiché est de remplacer le patchwork d'un serveur de modèles distinct par tâche par un système unique qui sert plus de 100 modèles, en les chargeant à la demande. Le serveur expose les points de terminaison compatibles OpenAI /v1/embeddings, /v1/chat/completions, /v1/completions et /v1/responses, que le README présente comme un chemin de migration direct pour les clients de style OpenAI.

Chargement et configuration des modèles

Le catalogue de modèles est préconfiguré avec Stella, SPLADE, Qwen3, GLiNER, SigLIP et d'autres ; le README affirme que les modèles d'embedding et de récupération sont évalués sur MTEB, mais ne publie pas les résultats. SIE sert plusieurs modèles simultanément avec chargement à la demande et éviction LRU. Le premier appel à un modèle télécharge ses poids, avec une progression affichée dans le terminal du serveur ; les appels suivants sautent le téléchargement. Le README indique explicitement que la latence d'inférence dépend du modèle, de la tâche, du matériel et de la taille du lot, et ne fournit aucun chiffre de latence. Chaque modèle est un fichier de configuration sous packages/sie_server/models/, et le SDK accepte un ID Hugging Face comme référence de modèle.

Les cinq groupes de tâches du catalogue

Le README regroupe les modèles servis en cinq tâches. La recherche intègre, met en correspondance et réordonne avec bge-m3, splade-v3, colbertv2 et qwen3-reranker. La conversion document vers Markdown transforme PDF, fichiers Office et scans en Markdown propre via lightonocr, glm-ocr, mineru, paddleocr-vl et docling. La sortie structurée produit du JSON valide selon le schéma avec gliner2, nuner-zero et qwen3.6-27b. La sécurité du contenu renvoie un verdict de sécurité avec une probabilité que l'appelant peut seuiller, via granite-guardian-2b. La boucle d'agent planifie les étapes et appelle des outils avec qwen3.6-27b, streaming inclus.

Démarrer le serveur et premier appel curl

Le démarrage rapide donne deux chemins. L'installation native sur macOS Apple Silicon ou Linux exige Python 3.12 : pip install "sie-server[local]" puis sie-server serve. Docker propose des images distinctes par bundle afin que les familles de modèles aux dépendances incompatibles restent isolées : latest-cuda12-default pour GPU NVIDIA, latest-cuda12-transformers5 pour LightOnOCR ou GLM-OCR, latest-cpu-default pour CPU et latest-cuda12-sglang pour la génération de texte sur GPU. Un curl vers /readyz doit renvoyer ok, et le premier appel d'embedding est un simple POST curl vers /v1/embeddings avec un ID de modèle et un texte d'entrée ; la réponse contient le vecteur d'embedding.

SDK Python et TypeScript, et intégrations

Deux SDK sont documentés : sie-sdk pour Python et @superlinked/sie-sdk pour TypeScript, installable via npm, pnpm ou yarn. L'exemple Python du README crée un SIEClient pointant vers localhost:8080 et montre quatre opérations : client.encode pour les embeddings, client.score pour réordonner une requête contre des candidats, client.extract pour l'extraction d'entités avec étiquettes et intervalles, et client.generate pour la génération de texte avec des paramètres comme max_new_tokens et temperature. Les intégrations listées sont LangChain, LlamaIndex, Haystack, DSPy, CrewAI, Chroma, Qdrant, Weaviate et LanceDB, avec des guides de configuration liés. Il existe aussi un paquet MCP edge pour décharger le travail documentaire des clients MCP.

Cluster de production et déploiement

Le README indique que le même code fonctionne contre un cluster de production et fournit la pile complète : une passerelle d'équilibrage de charge, une autoscaling KEDA avec réduction à zéro, des tableaux de bord Grafana et des modules Terraform pour GKE, EKS et AKS. Le déploiement passe par un chart Helm, oci://ghcr.io/superlinked/charts/sie-cluster, avec un overlay de valeurs par cloud (values-gke.yaml, values-aws.yaml, values-aks.yaml). La commande d'exemple épingle une version de chart pour des installations reproductibles, crée le namespace sie et définit hfToken.create avec un jeton Hugging Face. Le README renvoie à un guide de déploiement pour les détails de configuration.

Espace de développement, télémétrie et licence

La racine du dépôt est un espace de travail Python virtuel. La configuration documentée repose sur uv : uv python install 3.12, uv lock --check, uv sync --frozen --all-packages, et pytest avec --frozen --project . --no-sync. L'appartenance aux paquets est explicite dans le pyproject.toml racine ; un paquet n'entre dans l'espace de travail que dans le même changement qui ajoute son code source complet. SIE collecte des données d'utilisation anonymes (version, OS, architecture, type de GPU), sans adresses IP, noms d'hôte ni données de requête ; SIE_TELEMETRY_DISABLED=1 ou DO_NOT_TRACK=1 désactive cette collecte. Le projet est sous Apache 2.0 ; l'extrait de licence accorde une licence de droit d'auteur perpétuelle, mondiale, non exclusive et sans redevance pour reproduire, préparer des œuvres dérivées, afficher publiquement, exécuter, sous-licencier et distribuer l'œuvre. L'extrait ne mentionne ni garantie, ni support, ni conditions de sécurité.

Conclusion éditoriale

Le README documente un serveur d'inférence à cluster unique avec chargement de modèles à la demande, cinq groupes de tâches, des SDK Python et TypeScript et une pile de production basée sur Helm. Il ne publie ni résultats de benchmarks, ni chiffres de latence, ni engagements de support ou de sécurité ; ces affirmations restent non vérifiées par le dépôt lui-même.

Sources officielles

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Notes de la communauté

Notes de la communauté