Tutoriel

Accédez à tous les modèles LLM avec UNE API unifiée compatible OpenAI

Vous avez assez de jongler avec les différentes API LLM ? Ce didacticiel explique comment créer un backend FastAPI à l'aide du point de terminaison unifié d'Eden AI, en prenant en charge les modèles de texte et d'image des principaux fournisseurs tels qu'OpenAI et Google, le tout via une seule API compatible avec OpenAI.

Accédez à tous les modèles LLM avec UNE API unifiée compatible OpenAI
TABLE DES MATIÈRES

Les développeurs et les organisations sont confrontés à un défi de plus en plus complexe : comment intégrer une variété croissante de grands modèles de langage (LLM) sans compromettre la vitesse, la fiabilité ou l'expérience utilisateur.

Chaque fournisseur (OpenAI, Anthropic, Google, Mistral et bien d'autres) propose de puissantes fonctionnalités, mais également des API, des formats de requête et des exigences d'intégration différentes.

Au-delà de cela, l'IA ne se limite plus au texte ; de nombreux fournisseurs proposent désormais multimodaux models qui combinent du texte, des images et d'autres types de données, chacun nécessitant souvent sa propre gestion.

Pour les développeurs, cela implique non seulement de changer constamment de fournisseur, mais aussi d'adapter les flux de travail aux différents types d'entrées et de sorties, un processus qui fait perdre du temps, augmente la complexité et détourne l'attention de la création de produits de qualité.

Nous pensions qu'il devait y avoir une meilleure solution.
Nous l'avons donc construit.

Débloquez tous les modèles LLM à l'aide d'une seule API. Entièrement compatible avec OpenAI !

Aujourd'hui, nous sommes ravis de vous présenter notre nouveau point de terminaison LLM unifié: une solution conçue dès le départ pour permettre de travailler avec les meilleurs modèles d'IA sans effort, de manière évolutive et pérenne.

Au cœur de ce nouveau système se trouve une idée simple mais puissante : une interface unique compatible avec OpenAI qui fournit un accès direct et transparent à tous les principaux fournisseurs de LLM. This terminal is not only for text generation, but also for text generation interaction multimodale complète, prenant en charge à la fois le traitement du texte et des images via un appel d'API unique et cohérent.

Les développeurs peuvent désormais passer facilement d'un modèle à l'autre, voire d'une modalité à l'autre, sans perturber leurs flux de travail existants, tout en utilisant la structure familière de l'API OpenAI.

Il ne s'agit pas d'un simple agrégateur ou d'un autre wrapper. Il s'agit d'une API entièrement professionnelle, prête pour la production, qui vous permet de vous connecter à l'avenir de l'IA avec les mêmes outils et flux de travail que vous utilisez déjà aujourd'hui. Pas de drame, pas de réécriture, pas de flux de travail fragmentés.

Dans ce didacticiel, vous verrez notre nouveau terminal en action et apprendrez à créer une puissante API Web avec FastAPI qui s'intègre parfaitement à Eden AI, fournissant un accès unifié à une gamme de services d'IA, de la génération de texte à l'analyse d'images, via un point de discussion multimodal unique compatible avec OpenAI.

Pour une description détaillée de ce didacticiel, n'oubliez pas de regarder notre vidéo sur Chaîne YouTube d'Eden AI.

Que vous soyez débutant ou que vous commenciez tout juste à utiliser les API et l'intégration de l'IA, ce guide vous expliquera étape par étape, de la configuration de l'environnement à l'écriture du code et à la compréhension du fonctionnement de chaque ligne.

Qu'est-ce qu'il y a de AI et pourquoi devriez-vous l'utiliser ?

Eden AI est une passerelle API unifiée pour les services d'intelligence artificielle. Au lieu de s'intégrer séparément à des fournisseurs tels qu'OpenAI, Cohere ou Stability AI, Eden AI fait office de passerelle en fournissant un format d'API unique pour interagir avec plusieurs fournisseurs et modèles.

Cela simplifie considérablement l'expérience des développeurs :

  • Pas besoin d'apprendre le format d'API de chaque fournisseur
  • Basculement facile entre les modèles (comme GPT-4o, Claude ou Mistral)
  • Facturation et gestion centralisée

Des avantages concrets

Pour les développeurs et les entreprises, cela signifie que vous pouvez :

  • Changez de modèle avec un minimum de modifications de code
  • Testez différents fournisseurs d'IA pour comparer les coûts et les performances
  • Créez et testez rapidement des fonctionnalités basées sur l'IA

Outils et technologies utilisés

Tool Purpose
Python 3.10+ Programming language
FastAPI Web API framework
Uvicorn ASGI server to run FastAPI apps
Pydantic Data validation and typing
requests Makes HTTP requests to Eden AI
python-dotenv Loads .env config file
Eden AI Provides AI services
CORS Cross-origin access for frontend

💡 Conseil d'installation : Installez les dépendances avec :

pip install fastapi uvicorn pydantic python-dotenv requests

Tutoriel détaillé

Etape 1 : Configuration du projet

Créez un nouveau dossier pour votre projet et à l'intérieur de celui-ci, créez :

  • main.py — la principale application FastAPI

  • .env — pour stocker votre clé d'API Eden AI

Dans .env, ajoutez :

EDEN_AI_API_KEY=your_eden_api_key_here

Ne confiez jamais votre clé API au contrôle de version comme GitHub !

Étape 2 : Initialisation de l'application FastAPI

from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware

FastAPI () initialise l'application

CorsMiddleware permet l'accès depuis d'autres origines (comme votre interface)

app = FastAPI(
    title="Eden AI API Integration",
    description="Simplified FastAPI application for Eden AI text and image analysis"
)

# Allow all origins for testing
app.add_middleware(
    CORSMiddleware,
    allow_origins=["*"],
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],
)

Étape 3 : Charger les variables d'environnement

from dotenv import load_dotenv
import os

load_dotenv()
EDEN_AI_API_KEY = os.getenv("EDEN_AI_API_KEY")

dotenv charge votre fichier .env

os.getenv récupère la clé

Si la clé n'est pas trouvée, un avertissement est enregistré

Étape 4 : définir des modèles de demande à l'aide de Pydantic

Les modèles Pydantic sont une caractéristique essentielle de FastAPI. Ils définissent les structure, types, et défauts pour les demandes entrantes :

from pydantic import BaseModel
from typing import Optional

class TextRequest(BaseModel):
    text: str
    model: str = "openai/gpt-4o"
    temperature: Optional[float] = 0.7
    max_tokens: Optional[int] = None

  • text : user guest

  • model : quel LLM utiliser (par défaut GPT-4o)

  • température : aléatoire (plus élevée = plus créative)

  • max_tokens : response length limit

De même, pour les demandes d'images :

class ImageUrlRequest(BaseModel):
    image_url: str
    prompt: str
    model: str = "openai/gpt-4o"
    temperature: Optional[float] = 0.7
    max_tokens: Optional[int] = None

Etape 5 : Api Eden AI en tête

Avant d'appeler l'API Eden, nous définissons une fonction utilitaire pour générer des en-têtes :

def get_headers():
    return {"Authorization": f"Bearer {EDEN_AI_API_KEY}"}

Cela garantit que chaque demande inclut l'en-tête Autorisation, qui identifie votre compte auprès d'Eden AI.

Etape 6 : Création du point de terminaison de génération de texte

from fastapi import HTTPException, Body
from fastapi.responses import JSONResponse
import requests

Il s'agit de l'itinéraire qui gère les demandes des utilisateurs et renvoie les réponses générées :

@app.post("/api/text", response_class=JSONResponse)
async def text_completion(request: TextRequest):

Il accepte un objet TextRequest et envoie une requête POST au point de terminaison /v2/llm/chat d'Eden AI avec la structure requise :

Ce format imite une interaction de chat typique où l'utilisateur fournit des informations et l'IA répond.

payload = {
    "model": request.model,
    "messages": [
        {
            "role": "user",
            "content": [
                {"type": "text", "text": request.text}
            ]
        }
    ]
}

Ajoutez éventuellement temperature et max_tokens :

if request.temperature is not None:
    payload["temperature"] = request.temperature
if request.max_tokens is not None:
    payload["max_tokens"] = request.max_tokens

Envoie la requête POST :

response = requests.post("https://api.edenai.run/v2/llm/chat", json=payload, headers=get_headers())

La gestion des erreurs est effectuée à l'aide de l'exception HttpException de FastAPI, qui renvoie clairement les codes d'état et les messages d'erreur :

if response.status_code != 200:
    raise HTTPException(status_code=response.status_code, detail=f"Eden AI API Error: {response.text}")
return response.json()

Etape 7 : Création du point de terminaison d'analyse d'image

Cela fonctionne de la même manière que l'itinéraire textuel mais inclut une URL d'image :

@app.post("/api/image", response_class=JSONResponse)
async def analyze_image(request: ImageUrlRequest):

La charge utile de la requête est légèrement différente ici, car elle inclut à la fois les types text et image_url dans le tableau de contenu :

Utile load example :

payload = {
    "model": request.model,
    "messages": [
        {
            "role": "user",
            "content": [
                {"type": "text", "text": request.prompt},
                {"type": "image_url", "image_url": {"url": request.image_url}}
            ]
        }
    ]
}

Tout le reste (en-têtes, requête, gestion des erreurs) reste le même.

Cela vous permet de poser des questions telles que :

  • « Quels sont les objets sur cette photo ? »
  • « Est-il sécuritaire de marcher dans cette rue la nuit ? »

Et obtenez des réponses intelligentes en fonction du contenu de l'image.

Étape 8 : Ajouter un itinéraire de contrôle de santé

Une route ping simple pour vérifier si l'API est en cours d'exécution :

@app.get("/health")
async def health_check():
    return {"status": "ok"}

Utilisez-le pour une surveillance automatisée ou pour vérifier les déploiements.

Étape 9 : Exécutez votre application

Pour démarrer votre application FastAPI, utilisez Uvicorn :

uvicorn main:app --reload

Open then your navigateur and visit :

Docs: http://localhost:8000/docs

Bild of health: http://localhost:8000/health

Exemples de cas d'utilisation

1. Text Generation

Vous pouvez envoyer des messages tels que :

  • « Ecrivez un poème de 5 lignes sur l'été »
  • « Resumé de paragraphe... »

Et obtenez des réponses générées par l'IA à partir de GPT-4o.

2. Image analysis

Utilisez-le pour analyser l'URL des images avec des instructions telles que :

  • « Décrivez cette scène »
  • « Quels objets sont visibles ? »

Conclusion

Vous avez maintenant créé un puissant backend FastAPI qui communique avec Eden AI, gère à la fois le texte et les images, et est structuré de manière extensible et conviviale pour la production.

Il s'agit d'une solution propre, sécurisée et évolutive qui, surtout, démystifie le fonctionnement des API basées sur l'IA.

Ce projet est un excellent point de départ. Voici quelques idées pour aller plus loin :

  • Connectez-le à un frontend (React, Vue ou Svelte)
  • Add a authentication with OAuth or API key
  • Enregistrez et stockez les demandes et les réponses des utilisateurs
  • Autoriser le passage d'un fournisseur d'IA à l'autre à l'aide d'une liste déroulante
  • Supporte le téléchargement d'images (pas seulement les URL)

Prêt à plonger plus profondément ? Nous avons tout ce dont vous avez besoin pour commencer.

Que vous souhaitiez migrer depuis un autre fournisseur LLM ou créer votre première application basée sur l'IA, nous avons facilité son exploration, sa mise en œuvre et son lancement en toute confiance :

Documentation complète
Obtient un aperçu complet du fonctionnement de l'API LLM unifiée, notamment des points de terminaison, des paramètres et des formats de réponse :
https://docs.edenai.co/reference/llm_root_create

Migration Guide
Vous utilisez déjà OpenAI ou un autre fournisseur ? Ce guide vous explique comment passer au point de terminaison unifié d'Eden AI, sans modifier votre configuration existante :
https://docs.edenai.co/docs/%EF%B8%8F-migration-tutorial-to-v2llmchat

Example de code
Vous voulez le voir en action ? Découvrez notre implémentation complète de FastAPI fonctionnelle avec de vrais exemples de code :
https://github.com/edenai/cookbook/blob/master/Generative/llm_chat_multimodal.py

Commencez votre aventure avec l’IA dès aujourd’hui

  • Accédez à plus de 100 API d’IA sur une seule plateforme.
  • Comparez et déployez des modèles d’IA en toute simplicité.
  • Paiement à l’usage, sans frais initiaux.
Commencez à créer GRATUITEMENT

Articles connexes

Essayez Eden AI gratuitement.

Vous pouvez commencer à créer dès maintenant. Si vous avez des questions, n'hésitez pas à discuter avec nous !

CommencezContactez le service commercial
X

Commencez votre parcours IA dès aujourd'hui!

Inscrivez-vous dès maintenant avec des crédits gratuits pour explorer plus de 100 API d'IA.
Commencer