Premiers pas avec les API LLM

DEV - 02/01
Merci à Igor Ribeiro Lima pour avoir écrit cet article ! Cet article montre comment appeler...

Merci à Igor Ribeiro Lima pour avoir écrit cet article !

Cet article montre comment appeler différentes API LLM à l'aide d'un seul ensemble de fonctions communes.

Bien que chaque LLM ait sa propre configuration, voici un avantage intéressant à utilisertxtaipluslitellmtravaillant dans les coulisses. La grande victoire avectxtaiest que cela aide à standardiser les entrées et les sorties dans plusieurs LLM. Cela signifie que nous pouvons appeler de manière transparente n’importe quelle API LLM.

Dans cet article, nous utilisons un ensemble de fonctions communes pour appeler Gemini, VertexAI, Mistral, Cohere, AWS Bedrock, OpenAI, Claude by Anthropic, Groq et bien plus encore !

N'est-ce pas incroyable ? Une méthode pour de nombreuses API LLM différentes : c'est la beauté de ces bibliothèques !

Installer les dépendances

Cette session vous guide à travers toutes les dépendances essentielles dont vous aurez besoin pour exécuter le script Python pour diverses API LLM.

Vous pouvez choisir les dépendances en fonction de vos besoins spécifiques. Chaque dépendance est soigneusement commentée dans le code, vous saurez donc exactement quelle API elle prend en charge.

Les dépendances principales dont vous aurez généralement besoin sont :txtaiettxtai[pipeline].

# Le point principal ici est de suivre le modèle des autres articles. # Pour plus d'informations, veuillez vous référer à la note dans la puce juste en dessous. # pip install txtai==8.1.0 pip install txtai[pipeline] # pour utiliser Vertex AI # https://github.com/BerriAI/litellm/issues/5483 # pip install google-cloud-aiplatform==1.75.0 pip installez google-cloud-aiplatform # pour utiliser AWS Bedrock # https://docs.litellm.ai/docs/providers/bedrock # pip install boto3==1.35.88 pip installer boto3
Entrer en mode plein écran Quitter le mode plein écran
  • Un rappel amical : les choses peuvent changer de manière inattendue dans le monde du codage en constante évolution. Un jour, votre code fonctionne parfaitement ; le lendemain, cela pourrait piquer une crise sans raison apparente. C'est pourquoi il est essentiel de spécifier les versions des dépendances en utilisant les dernières versions disponibles lors de l'écriture du code.
    • Même en reconnaissant l'importance du contrôle de version, chaque version comporte une ligne au-dessus comme commentaire dans le code. Il sert de guide pour vous aider à suivre les dépendances et garantit que le code fonctionne correctement dans différents environnements, même si quelque chose ne va pas.
    • Bien qu'il existe un compromis à limiter le code à une version spécifique, noter la version actuelle sous forme de commentaire devrait vous aider à vous protéger contre les problèmes potentiels liés aux futures mises à jour.

Configuration de l'API LLM

Cette session est comme un dictionnaire Python spécial qui contient toutes les configurations intéressantes pour notre modèle LLM AI. Il comprend des détails tels que les variables d'environnement, le nom du modèle, les paramètres d'intégration de texte et d'autres paramètres sophistiqués.

Une clé importante ici estIS_ENABLED. Quand il est réglé surVrai, c'est comme donner le feu vert au modèle pour briller ! Mais si jamais vous avez envie de faire une pause ou si vous n'en avez pas besoin pendant un moment, vous pouvez facilement régler cette touche surFAUX, et le modèle se détendra.

importer le système d'exploitation, getpass depuis txtai import LLM, Embeddings # https://neuml.github.io/txtai/install/ # https://neuml.github.io/txtai/pipeline/text/llm/#example # https:/ /neuml.github.io/txtai/embeddings/configuration/vectors/#method # https://docs.litellm.ai/docs/embedding/supported_embedding LLM_MODEL_CONFIG = { 'GEMINI' : { 'IS_ENABLED' : Vrai, 'ENV_VAR' : ['GEMINI_API_KEY'], # https://docs.litellm.ai/docs/providers/gemini # https://ai.google.dev /gemini-api/docs/models/gemini 'LLM_MODEL_NAME' : 'gemini/gemini-pro', # https://github.com/BerriAI/litellm/tree/12c4e7e695edb07d403dd14fc768a736638bd3d1/litellm/llms/vertex_ai # https://github.com/BerriAI/litellm/blob/e19bb55e3b4c6a858b6e364302ebbf6633a51de5/model_prices_and_context_window.json#L2625 'TEXT_EMBEDDING_PATH' : 'gemini/te...
[Courte citation de 8% de l'article original]
Loading...