Maison > Périphériques technologiques > IA > Tutoriel API CodeStral: Début avec l'API de Mistral

Tutoriel API CodeStral: Début avec l'API de Mistral

尊渡假赌尊渡假赌尊渡假赌
Libérer: 2025-03-06 10:10:11
original
649 Les gens l'ont consulté

CodeStral: un guide complet de l'API de génération de code

CodeStral, un modèle génératif de pointe, excelle dans les tâches de génération de code comme le remplissage de milieu (FIM) et l'achèvement du code. Formé sur plus de 80 langages de programmation, c'est un outil polyvalent pour les développeurs travaillant avec des langages communs et moins utilisés. Ce didacticiel détaille comment utiliser efficacement l'API Codestral. Pour un aperçu plus large de CodeStral, consultez mon article sur "What Is Mistral's Codestral".

Points de terminaison de l'API

CodeStral propose deux points de terminaison API principaux:

  • codestral.mistral.ai : Idéal pour les utilisateurs individuels et les projets à petite échelle. Actuellement gratuit (jusqu'au 1er août 2024), il passera à un modèle d'abonnement.
  • api.mistral.ai : Conçu pour les besoins commerciaux et l'utilisation à volume élevé, offrant des limites de taux accrues et un soutien robuste.

Mistral recommande codestral.mistral.ai pour les plugins IDE ou les outils orientés utilisateur, permettant aux utilisateurs de gérer leurs propres clés d'API. api.mistral.ai est préféré pour d'autres applications en raison de ses limites de taux et de son évolutivité plus élevées. Ce tutoriel se concentre sur codestral.mistral.ai.

Pour commencer

Obtention d'une clé API:

  1. Inscrivez-vous: Créez un compte Mistral AI.
  2. Obtenez votre clé API: pour api.mistral.ai, accédez à l'onglet Keys API et générez une nouvelle clé. Pour codestral.mistral.ai, accédez à l'onglet CodeStral (souvent marqué "nouveau"), complétez l'inscription (Remarque: un numéro de téléphone est généralement requis) et accédez à votre clé une fois approuvé.

Codestral API Tutorial: Getting Started With Mistral’s API

Codestral API Tutorial: Getting Started With Mistral’s API

Authentification (python):

Nous utiliserons la bibliothèque requests pour créer des fonctions d'authentification pour les deux points de terminaison:

import requests
import json

api_key = 'INSERT YOUR API KEY HERE'

def call_chat_endpoint(data, api_key=api_key):
    url = "https://codestral.mistral.ai/v1/chat/completions" #Corrected URL
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
        "Accept": "application/json"
    }
    response = requests.post(url, headers=headers, data=json.dumps(data))
    return response.json() if response.status_code == 200 else f"Error: {response.status_code}, {response.text}"

def call_fim_endpoint(data, api_key=api_key):
    url = "https://codestral.mistral.ai/v1/fim/completions" #Corrected URL
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
        "Accept": "application/json"
    }
    response = requests.post(url, headers=headers, data=json.dumps(data))
    return response.json() if response.status_code == 200 else f"Error: {response.status_code}, {response.text}"
Copier après la connexion
Copier après la connexion

Comprendre les points de terminaison

Ferm-in-the-middle (fim) Point de terminaison:

génère du code pour combler l'écart entre un prompt et un suffix.

facultatif.
  • URL: https://codestral.mistral.ai/v1/fim/completions
  • Paramètres: prompt, suffix (facultatif), stop (facultatif)

Exemple:

prompt = "def fibonacci(n: int):"
suffix = "n = int(input('Enter a number: '))\nprint(fibonacci(n))"
data = {"model": "codestral-latest", "prompt": prompt, "suffix": suffix, "temperature": 0}
response = call_fim_endpoint(data)
Copier après la connexion
Copier après la connexion

Codestral API Tutorial: Getting Started With Mistral’s API

instruire le point de terminaison:

utilise des instructions pour guider la génération de code.

  • URL: https://codestral.mistral.ai/v1/chat/completions
  • Paramètres: prompt, temperature (facultatif), max_tokens (facultatif)

Exemple:

import requests
import json

api_key = 'INSERT YOUR API KEY HERE'

def call_chat_endpoint(data, api_key=api_key):
    url = "https://codestral.mistral.ai/v1/chat/completions" #Corrected URL
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
        "Accept": "application/json"
    }
    response = requests.post(url, headers=headers, data=json.dumps(data))
    return response.json() if response.status_code == 200 else f"Error: {response.status_code}, {response.text}"

def call_fim_endpoint(data, api_key=api_key):
    url = "https://codestral.mistral.ai/v1/fim/completions" #Corrected URL
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
        "Accept": "application/json"
    }
    response = requests.post(url, headers=headers, data=json.dumps(data))
    return response.json() if response.status_code == 200 else f"Error: {response.status_code}, {response.text}"
Copier après la connexion
Copier après la connexion

Codestral API Tutorial: Getting Started With Mistral’s API

Utilisation avancée

  • Limites de taux: codestral.mistral.ai a des limites de 30 demandes par minute et 2000 par jour; api.mistral.ai a 200 demandes par seconde par espace de travail. Implémentez la logique de réessayer à l'aide de la bibliothèque time de Python pour gérer les limites de taux.
  • Gestion des erreurs: Gérer les erreurs courantes (401, 429, 500) en utilisant des codes d'erreur appropriés. La logique de réessayer est bénéfique pour les erreurs transitoires.
  • Personnalisation de sortie: Ajuster les paramètres comme prompt et temperature pour affiner le code généré.

Intégration

CodeStral s'intègre avec les IDE (VS Code, JetBrains) via des plugins comme Continuer.Dev. Vous pouvez également créer des scripts personnalisés. Voici un exemple pour générer des fonctions de test:

prompt = "def fibonacci(n: int):"
suffix = "n = int(input('Enter a number: '))\nprint(fibonacci(n))"
data = {"model": "codestral-latest", "prompt": prompt, "suffix": suffix, "temperature": 0}
response = call_fim_endpoint(data)
Copier après la connexion
Copier après la connexion

Codestral API Tutorial: Getting Started With Mistral’s API

meilleures pratiques

  • Invites claires: Utilisez des invites précises et sans ambiguïté pour des résultats optimaux.
  • Raffinement itératif: Expérimentez et affinez vos invites pour une meilleure génération de code.
  • Utilisation responsable: Utilisez l'API éthiquement et légalement, en évitant la génération de code malveillante.

Conclusion

Ce guide fournit une introduction pratique à l'API codestral. Expérimentez et intégrez-le dans votre flux de travail pour améliorer votre processus de développement. Pour en savoir plus sur Mistral, explorez le tutoriel Mistral 7B et le guide pour travailler avec le Mistral Large Model.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal