Mistral

MistralEmbeddingClient génère des incorporations de texte avec des modèles Mistral AI. Utilisez-le pour l’indexation vectorielle, la recherche sémantique, le clustering ou d’autres applications qui ont besoin d’un client d’incorporation Agent Framework.

Ce fournisseur fournit actuellement des incorporations uniquement ; il ne fournit pas de client de conversation Agent Framework.

Installer le package

pip install agent-framework-mistral --pre

Configuration

MISTRAL_API_KEY="<api-key>"
MISTRAL_EMBEDDING_MODEL="mistral-embed"
# Optional compatible endpoint:
MISTRAL_SERVER_URL="<server-url>"

Générer des embeddings

Créez le client et appelez get_embeddings().

async def basic_embedding_example() -> None:
    """Generate embeddings for a list of texts."""
    print("=== Basic Embedding Generation ===")

    # 1. Create the embedding client using environment-based configuration.
    client = MistralEmbeddingClient()

    # 2. Generate embeddings for multiple texts.
    texts = ["Hello, world!", "How are you?", "Agent Framework with Mistral AI"]
    try:
        result = await client.get_embeddings(texts)

        # 3. Print the generated vectors and usage metadata.
        print(f"Generated {len(result)} embeddings")
        for i, embedding in enumerate(result):
            print(f"  Text {i + 1}: dimensions={embedding.dimensions}, vector={embedding.vector[:5]}...")

        if result.usage:
            print(
                f"  Usage: {result.usage['input_token_count']} input tokens, "
                f"{result.usage['total_token_count']} total tokens"
            )
    finally:
        await client.close()


async def embedding_with_options_example() -> None:
    """Generate embeddings with custom dimensions."""
    print("\n=== Embedding with Custom Dimensions ===")

    from agent_framework.mistral import MistralEmbeddingOptions

    # Only some models support a custom output dimension (e.g. codestral-embed; mistral-embed does not).
    client = MistralEmbeddingClient(model="codestral-embed")

    options: MistralEmbeddingOptions = {"dimensions": 256}

Permet MistralEmbeddingOptions de demander une dimension de sortie prise en charge. Vous pouvez également définir MISTRAL_SERVER_URL lorsque l’application utilise un point de terminaison compatible personnalisé.

Important

Mistral AI est un système tiers. Passez en revue ses conditions de service, la gestion des données, les limites régionales, les licences de modèle et les coûts d’utilisation avant d’envoyer des données d’application.

Tools

Les outils ne s’appliquent pas, car ce package fournit actuellement un client d’incorporation, et non un client de conversation Agent Framework.

Étapes suivantes

RAG