Comment intégrer LiteLLM aux workflows Git, GitHub et GitLab ?

LiteLLM offre un moyen pratique d’intégrer des capacités d’IA à des processus d’automatisation basés sur Git, sans vous enfermer chez un fournisseur de modèles unique.

Pour les équipes utilisant GitHub ou GitLab, l’outil peut servir de passerelle d’IA unifiée pour la révision de code, l’aide à la rédaction de commits, l’analyse des demandes de fusion (merge requests) et les automatisations pilotées par l’intégration continue (CI).

Cela s’avère particulièrement utile lorsque vous recherchez de la flexibilité entre les différents fournisseurs, une gouvernance centralisée et une API cohérente pour vos pipelines.

litellm git github gitlab

Pourquoi LiteLLM s’adapte bien aux workflows Git

In git-based environments, the same AI capability often needs to work across different stages: commit time, pull request or merge request review, release preparation, and CI checks.

LiteLLM helps by giving you one OpenAI-compatible endpoint that can route requests to many model providers behind the scenes. That means your automation can stay stable even if you change models, add fallbacks, or move some workloads to self-hosted inference.

For DevOps and DevSecOps teams, this is a strong pattern because it keeps AI usage centralized.

You can add policy controls, logging, model allowlists, and cost tracking at the proxy layer instead of spreading those concerns across many scripts and repositories.

In practice, that makes AI features easier to standardize across GitHub and GitLab estates.

Dans les environnements basés sur Git, une même fonctionnalité d’IA doit souvent opérer à différentes étapes : lors du commit, de la revue de pull request ou de merge request, de la préparation de la mise en production et des vérifications d’intégration continue (CI).

LiteLLM facilite cette tâche en proposant un point de terminaison unique compatible avec l’API OpenAI, capable d’acheminer les requêtes vers divers fournisseurs de modèles en arrière-plan. Ainsi, vos processus automatisés restent stables, même si vous changez de modèle, mettez en place des mécanismes de secours (fallbacks) ou déplacez certaines charges de travail vers une infrastructure d’inférence auto-hébergée.

Pour les équipes DevOps et DevSecOps, cette approche est particulièrement pertinente car elle permet de centraliser l’utilisation de l’IA.

Vous pouvez intégrer des contrôles de politique, la journalisation, des listes blanches de modèles et le suivi des coûts directement au niveau du proxy, plutôt que de disperser ces éléments à travers de multiples scripts et dépôts.

Concrètement, cela simplifie la standardisation des fonctionnalités d’IA au sein de vos écosystèmes GitHub et GitLab.

Cas d’utilisation courants

Voici des moyens pratiques d’utiliser LiteLLM dans des workflows basés sur Git :

  1. Revue de pull request ou de merge request.
  2. Génération de messages de commit.
  3. Vérifications de sécurité et de conformité.
  4. Rédaction de notes de version.
  5. Aide à la documentation.
  6. Enrichissement du pipeline CI.

Exemple de GitHub Actions

Cet exemple illustre un modèle simple dans lequel GitHub Actions fait appel à un proxy LiteLLM lors d’un workflow de pull request. Vous pouvez adapter le prompt pour générer un résumé de la revue, une ébauche de journal des modifications (changelog) ou une liste de contrôle de sécurité.

textname: AI Review with LiteLLM

on:
  pull_request:
    types: [opened, synchronize, reopened]

jobs:
  ai-review:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Get diff
        run: |
          git fetch origin ${{ github.base_ref }} --depth=1
          git diff origin/${{ github.base_ref }}...HEAD > pr.diff

      - name: Call LiteLLM proxy
        env:
          LITELLM_API_KEY: ${{ secrets.LITELLM_API_KEY }}
        run: |
          PROMPT=$(cat <<'EOF'
          Review the following pull request diff and provide:
          1. A short summary
          2. Potential risks
          3. Suggested improvements

          Diff:
          EOF
          )
          DIFF_CONTENT=$(cat pr.diff)

          curl -s https://litellm.example.com/v1/chat/completions \
            -H "Authorization: Bearer ${LITELLM_API_KEY}" \
            -H "Content-Type: application/json" \
            -d "$(jq -n \
              --arg model 'gpt-4o-mini' \
              --arg system "$PROMPT" \
              --arg user "$DIFF_CONTENT" \
              '{
                model: $model,
                messages: [
                  {role: "system", content: $system},
                  {role: "user", content: $user}
                ]
              }')"

Ce modèle est particulièrement adapté lorsque vous souhaitez intégrer la sortie de l’IA directement dans le flux de travail, plutôt que de passer par une étape distincte de révision manuelle. Vous pouvez également enregistrer la réponse sous forme de commentaire de pull request, d’artefact de build ou de résumé de tâche.

Exemple GitLab CI

Dans GitLab, cette même idée correspond parfaitement à un pipeline de demande de fusion (merge request pipeline). Cet exemple utilise un job qui récupère le diff et l’envoie à un proxy LiteLLM.

textstages:
  - ai_review

ai_review:
  stage: ai_review
  image: alpine:3.20
  variables:
    GIT_DEPTH: "1"
  before_script:
    - apk add --no-cache git curl jq
  script:
    - git fetch origin "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" --depth=1
    - git diff "origin/$CI_MERGE_REQUEST_TARGET_BRANCH_NAME...HEAD" > mr.diff
    - |
      PROMPT="Review the following merge request diff and provide:
      1. A short summary
      2. Potential risks
      3. Suggested improvements"
      DIFF_CONTENT="$(cat mr.diff)"

      curl -s https://litellm.example.com/v1/chat/completions \
        -H "Authorization: Bearer ${LITELLM_API_KEY}" \
        -H "Content-Type: application/json" \
        -d "$(jq -n \
          --arg model 'gpt-4o-mini' \
          --arg system "$PROMPT" \
          --arg user "$DIFF_CONTENT" \
          '{
            model: $model,
            messages: [
              {role: "system", content: $system},
              {role: "user", content: $user}
            ]
          }')"
  rules:
    - if: $CI_MERGE_REQUEST_IID

Cela s’intègre parfaitement à GitLab, car les pipelines de demandes de fusion constituent déjà un emplacement tout indiqué pour les vérifications automatisées. Vous pouvez étendre le même job pour publier la réponse en tant qu’artefact, ajouter un commentaire à la demande de fusion ou transmettre le résultat à une étape de contrôle qualité ultérieure.

Conseil de mise en œuvre

Si vous développez cette solution pour un environnement de production, veillez à structurer le format des invites et des réponses.

Par exemple, demandez une sortie JSON afin que votre pipeline puisse analyser correctement la gravité, le résumé et les recommandations.

Il est également judicieux de séparer les modèles publics des dépôts sensibles et d’acheminer les projets protégés uniquement vers des fournisseurs auto-hébergés ou agréés.

Pour les environnements fortement basés sur GitLab, LiteLLM peut également servir de couche de compatibilité devant les systèmes d’IA auto-hébergés ou internes.

Pour les flux de travail centrés sur GitHub, il permet de standardiser le comportement de l’IA entre les dépôts, même si les équipes préfèrent des modèles différents. Dans les deux cas, la véritable valeur ajoutée réside non seulement dans l’accès aux modèles, mais aussi dans le contrôle et la cohérence.

Notre entreprise propose des licences par abonnement, du support et des services gérés pour LiteLLM, git, GitLab et GitHub.
Contactez-nous pour toute question.: litellm@almtoolbox.com
ou appelez-nous : +33 1 84 17 53 28

LiteLLM AI Gateway : suivi des coûts, garde-fous, budgets et plus pour gérer plus de 100 LLM

Dans cet article, nous allons plus loin et expliquons les principales fonctionnalités de la passerelle LiteLLM AI Gateway :
le suivi des coûts, l’API de traitement par lots (batches), les garde-fous (guardrails), l’accès aux modèles, les budgets, l’observabilité des LLM, la limitation du débit (rate limiting), la gestion des prompts, la journalisation S3 (logging) et les points de terminaison pass-through (pass-through endpoints)
et pourquoi les équipes DevOps / Plateforme / Architecture s’y intéressent.

Comme nous l’avons récemment partagé, nous (ALM Toolbox) représentons officiellement LiteLLM en tant que solution de passerelle d’IA (AI Gateway) pour les organisations qui souhaitent utiliser l’IA générative de manière sécurisée et efficace à grande échelle.

LiteLLM se positionne devant plus de 100 fournisseurs de LLM (notamment OpenAI, Claude/Anthropic, Gemini, Amazon Bedrock et des modèles locaux/Ollama) et expose une API unifiée compatible avec OpenAI au lieu de multiples SDK spécifiques à chaque fournisseur.

passerelle ia litellm

Pourquoi avez-vous besoin d’une passerelle d’IA (AI Gateway) aujourd’hui ?

Dans de nombreuses organisations, chaque équipe commence à utiliser l’IA générative de son côté : multiples fournisseurs, multiples clés API, aucune visibilité centrale sur les coûts et quasi-absence de gouvernance sur ce qui est envoyé à quel modèle.

Cela devient rapidement un problème : les directions financières commencent à demander « qui a dépensé cet argent dans les LLM ? », les équipes de sécurité s’inquiètent du partage des données et des jetons (tokens), et les équipes DevOps ont besoin d’un moyen de surveiller et de limiter le débit du trafic.

LiteLLM résout ce problème en agissant comme une passerelle LLM centralisée : toutes les applications appellent le proxy LiteLLM (en utilisant le format OpenAI), et la passerelle achemine ensuite les requêtes vers le bon fournisseur, applique des garde-fous, enregistre tout et impose des limites de coûts et de débit.

Cela signifie que vous pouvez standardiser votre organisation sur https://votre-passerelle-litellm/ en tant que point de terminaison unique pour toute l’utilisation des LLM, que ce soit dans le cloud ou dans des environnements auto-hébergés.

Qu’est-ce que LiteLLM en quelques mots ?

LiteLLM est une passerelle d’IA open source (proxy LLM) qui expose une API compatible avec OpenAI tout en se connectant en coulisses à de nombreux fournisseurs de LLM et types de modèles différents.

Vous pouvez le déployer sous forme de conteneur ou de service (sur site, dans votre cloud privé ou managé), définir des règles de routage dans un fichier de configuration, puis fournir à vos équipes des clés API virtuelles dissociées des clés brutes des fournisseurs.

Puisque tout le trafic passe par LiteLLM, vous bénéficiez automatiquement d’un suivi centralisé des coûts, de budgets, de limites de débit, d’observabilité, de journaux d’audit, de garde-fous et de gestion des prompts – sans modifier le code de vos applications au-delà de l’URL de base et de la clé.

De notre point de vue, c’est similaire à ce qu’une passerelle d’API ou un reverse-proxy fait pour les microservices, mais adapté aux besoins uniques de l’IA générative et des LLM.

1) Suivi des coûts : voyez enfin qui dépense quoi

L’un des premiers défis avec l’IA générative est de comprendre les coûts des LLM par équipe, projet et environnement.
LiteLLM sert de proxy pour chaque requête et enregistre des informations détaillées sur les coûts et l’utilisation des jetons dans une base de données PostgreSQL, y compris le fournisseur, le modèle, le nombre de jetons, le coût calculé, la clé, l’utilisateur, l’équipe et les horodatages.

  • Suivez les dépenses par clé / utilisateur / équipe / organisation au fil du temps.
  • Voyez combien chaque modèle et fournisseur vous coûte réellement dans des conditions de charge réelles.
  • Exportez les données de coûts vers des outils de BI ou des rapports de refacturation pour les clients internes ou externes.

LiteLLM expose également des métriques Prometheus telles que le coût total et l’utilisation des jetons par modèle et par clé, ce qui vous permet d’ajouter des tableaux de bord Grafana affichant les dépenses historiques et en temps réel pour les LLM, tout comme vous le faites pour l’infrastructure.
Pour de nombreuses organisations, c’est la première fois qu’elles obtiennent une visibilité précise des coûts par locataire (tenant) pour l’ensemble de leur utilisation de l’IA générative.

2) Budgets et niveaux de limitation de débit (Rate Limit Tiers)

En plus du suivi brut, LiteLLM vous permet de définir des budgets et des niveaux de limitation de débit (Rate Limit Tiers) – des plans réutilisables qui limitent la consommation maximale autorisée pour chaque clé / utilisateur / équipe.
Dans la configuration, vous pouvez définir des niveaux avec des limites mensuelles en dollars, des quotas de jetons, des requêtes par minute (RPM) et des jetons par minute (TPM), puis attribuer des clés virtuelles à ces niveaux.

Lorsqu’une clé atteint son budget ou son seuil de RPM/TPM, LiteLLM peut automatiquement bloquer les requêtes suivantes ou renvoyer des réponses standard de limitation de débit, tandis que des métriques telles que litellm_rate_limit_remaining vous aident à surveiller la capacité restante par niveau.
Cela facilite la mise en œuvre de « plans » pour les équipes internes ou les clients externes (ex. Gratuit / Standard / Entreprise), chacun ayant ses propres contraintes de budget et de débit, à l’instar des API SaaS.

3) Garde-fous (Guardrails) : application centralisée de la sécurité et des politiques

Une autre fonctionnalité majeure réside dans les garde-fous (Guardrails) : la capacité d’appliquer des politiques de sécurité, de conformité et de contenu aux invites (prompts) et aux réponses, au sein d’une passerelle unique.
LiteLLM vous permet de configurer des garde-fous qui s’exécutent avant l’envoi d’un prompt (pré-appel) et/ou après la génération d’une réponse (post-appel), afin de bloquer ou de transformer le trafic qui enfreint vos règles.

La passerelle peut s’intégrer à des systèmes de garde-fous côté fournisseur, tels que AWS Bedrock Guardrails, et peut même répartir la charge des requêtes de garde-fous sur plusieurs déploiements ou comptes pour ne pas dépasser les limites des fournisseurs.
Les cas d’usage typiques incluent le blocage des informations personnelles identifiables (PII), l’application de sujets autorisés, la désinfection des sorties pour des domaines d’activité spécifiques, ou l’intégration de votre propre logique de garde-fous qui s’exécute pour tous les modèles de manière centralisée.

4) Accès aux modèles et clés virtuelles

LiteLLM introduit le concept de clés API virtuelles associées aux clés des fournisseurs sous-jacents et aux listes de modèles, ce qui est très utile pour le DevOps et la sécurité.
Au lieu de donner aux développeurs des clés OpenAI ou Anthropic directes, vous émettez des clés LiteLLM avec des modèles autorisés et des budgets strictement définis, et vous renouvelez les clés des fournisseurs en arrière-plan selon les besoins.

Le routage s’effectue via une configuration model_list où les noms logiques des modèles (par exemple gpt-4 ou modèle-anglais-interne) sont associés à un ou plusieurs fournisseurs et backends, y compris des LLM cloud et des modèles auto-hébergés/locaux (par exemple via Ollama ou vLLM).
Vous pouvez également configurer des mécanismes de secours (fallbacks) et de répartition de charge entre fournisseurs : si un fournisseur est indisponible ou bridé, LiteLLM peut automatiquement en essayer un autre tout en conservant la même interface de style OpenAI pour vos applications.

5) Observabilité et surveillance des LLM

L’observabilité est essentielle lorsque vous exécutez des LLM en production, et LiteLLM fournit plusieurs niveaux de surveillance prêts à l’emploi.
La passerelle expose un point de terminaison /metrics compatible avec Prometheus, fournissant des métriques sur le nombre de requêtes, les latences, l’utilisation des jetons, les coûts totaux et les limites de débit par modèle et par clé.

De plus, LiteLLM écrit des journaux structurés détaillés et propose des intégrations avec Langfuse, OpenTelemetry, Datadog, Helicone, Lunary, MLflow et d’autres via des fonctions de rappel (callbacks) et des crochets de journalisation.

Cela signifie que vous pouvez tracer les requêtes de bout en bout, les corréler avec les journaux d’application et les métriques d’infrastructure, et obtenir une image réaliste de la façon dont l’IA générative est utilisée dans vos cycles de développement (SDLC) et vos systèmes de production.

6) Journalisation S3 pour la rétention à long terme

Pour les organisations qui ont besoin d’une conservation à long terme ou d’un stockage à froid économique des journaux de LLM, LiteLLM prend en charge la journalisation directe vers des compartiments S3 / GCS / cloud à l’aide de callbacks intégrés.

En activant le callback S3 dans litellm_settings et en configurant les paramètres du compartiment, la passerelle sérialisera les métadonnées de requête/réponse dans des fichiers JSON et les téléversera dans le compartiment, généralement partitionnées par date et par préfixes optionnels (comme l’équipe ou l’environnement).

Il existe des options pour séparer les journaux d’audit (pour la conformité) des journaux de requêtes généraux et les envoyer vers différents compartiments ou préfixes, ce qui est très utile pour les environnements réglementés.
Une fois les données stockées, votre équipe de données peut exécuter des analyses dans des outils comme Athena, BigQuery ou Spark sans impacter les systèmes de production.

7) API de traitement par lots (Batches API) pour les tâches à grande échelle

Certaines charges de travail (par exemple, l’évaluation de millions d’enregistrements ou l’exécution d’analyses nocturnes) sont plus faciles à gérer via un traitement par lots (batch processing) plutôt que par de multiples petits appels synchrones.
LiteLLM prend en charge une API de traitement par lots (Batches API) similaire à celle d’OpenAI, incluant des points de terminaison de type /v1/files et /v1/batches, où vous téléversez un fichier JSONL contenant de nombreuses requêtes et laissez le fournisseur les traiter de manière asynchrone.

Sous le capot, LiteLLM peut acheminer ces tâches par lots vers des fournisseurs comme vLLM et les API de traitement par lots d’Amazon Bedrock, tout en appliquant les mêmes règles de budgets, de limites de débit et de journalisation que pour les complétions de chat classiques.
C’est l’idéal pour les équipes internes de science des données qui souhaitent exécuter des tâches LLM hors ligne de grande envergure sans contourner les contrôles de gouvernance et de coûts.

8) Gestion des prompts pour une meilleure qualité et gouvernance

À mesure que l’utilisation des LLM se développe, les prompts deviennent des actifs qui doivent être versionnés, partagés et gouvernés, et pas seulement des chaînes de caractères codées en dur.
LiteLLM fournit des fonctionnalités de gestion des prompts (Prompt Management) qui vous permettent de stocker des modèles de prompts (templates), de les versionner et de les injecter de manière centralisée dans les requêtes, plutôt que de les coder en dur dans chaque microservice.

La passerelle peut s’intégrer aux outils de gestion de prompts existants via des callbacks, et elle expose également une interface de gestion des prompts (Prompt Management UI) où vous pouvez importer des fichiers de prompts (par exemple .prompt / .dotprompt) et accorder à des clés spécifiques l’accès aux modèles sélectionnés.
Cela permet de mettre en place des tests A/B sur les prompts, de déployer des mises à jour de prompts sans redéployer les applications, et d’imposer quelles équipes peuvent utiliser quels modèles de prompts officiels.

9) Points de terminaison pass-through : lorsque vous avez besoin des API natives

Bien que la plupart des applications puissent utiliser l’interface compatible OpenAI, certains cas nécessitent des points de terminaison natifs des fournisseurs – par exemple, les API spécifiques à Bedrock, les assistants OpenAI ou des outils propres aux fournisseurs.
Pour cela, LiteLLM propose des points de terminaison pass-through (Pass-Through Endpoints), qui transfèrent les requêtes directement vers les API natives du fournisseur tout en appliquant l’authentification, la journalisation et (le cas échéant) les budgets de LiteLLM.

Par exemple, les points de terminaison pass-through Bedrock vous permettent d’appeler Bedrock via son format natif tandis que LiteLLM gère les identifiants AWS et le routage.
De même, le point de terminaison pass-through OpenAI peut servir de proxy pour les nouvelles fonctionnalités d’OpenAI (telles que les Assistants, Threads, Vector Stores ou Responses) avant même qu’il n’existe une abstraction générique, sans perdre l’observabilité centralisée.

Comment nous (ALM Toolbox) pouvons vous aider à déployer LiteLLM

LiteLLM is puissant, mais comme toute passerelle centrale, il doit être conçu et déployé avec soin : haute disponibilité, sécurité, observabilité et intégration dans votre pipeline CI/CD et DevSecOps existant.
En tant que représentant et partenaire officiel, nous (ALM Toolbox) pouvons vous aider à planifier et à mettre en œuvre LiteLLM dans le cadre de votre architecture d’IA, de DevOps et de DevSecOps.

Nos services autour de LiteLLM incluent (entre autres) :

  • Architecture et conception de votre passerelle d’IA (AI Gateway) et de votre modèle de gouvernance des LLM.
  • Installation et configuration de LiteLLM dans des environnements sur site (on-prem), cloud privé ou étanches (air-gapped).
  • Intégration avec GitLab, GitHub, Bitbucket, Azure DevOps et vos pipelines CI/CD.
  • Intégration avec des outils d’IA générative comme Claude, Cursor, Open WebUI, Windsurf, Tabnine, et bien d’autres.
  • Définition de politiques de budgets, de limites de débit, de garde-fous et de gestion des prompts adaptées à votre organisation.
  • Connexion de LiteLLM aux outils de surveillance, de journalisation et de sécurité que vous utilisez déjà (Prometheus, Grafana, SIEM, etc.).
  • Support continu, mises à niveau et durcissement de la sécurité (hardening) à mesure que votre utilisation de l’IA générative se développe.

Si vous envisagez une passerelle LLM / IA pour votre organisation, LiteLLM est une solution flexible et ouverte qui s’intègre parfaitement aux pratiques modernes de DevOps et DevSecOps.

Nous serons ravis de discuter de vos cas d’usage, de vous présenter des démonstrations et de vous aider à évaluer et déployer LiteLLM afin de répondre à vos exigences de sécurité, de conformité et de budget.

Pour plus de détails, des démos, une licence d’essai Enterprise ou un devis pour LiteLLM, n’hésitez pas à nous contacter : litellm@almtoolbox.com ou par téléphone au +33 1 84 17 53 28 (États-Unis / Canada) ou au 866-503-1471 (États-Unis / Canada)