← Back to Cookbook
mistral mlflow tracing
Details
File: third_party/MLflow/mistral-mlflow-tracing.ipynb
Type: Jupyter Notebook
Use Cases: Evaluation, RAG
Integrations: Mlflow
Content
Notebook content (JSON format):
{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Observability with Mistral AI and MLflow\n", "\n", "This is an example for leveraging MLflow's auto tracing capabilities for Mistral AI.\n", "\n", "More information about MLflow Tracing is available [here](https://mlflow.org/docs/latest/llms/tracing/index.html).\n", "\n", "## Getting Started\n", "\n", "Install `mistralai` and `mlflow` (current versions as of 4-Feb-2025)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "!pip install mistralai==1.5.0\n", "!pip install mlflow==2.20.1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Code" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import os\n", "\n", "from mistralai import Mistral\n", "\n", "import mlflow\n", "\n", "# Turn on auto tracing for Mistral AI by calling mlflow.mistral.autolog()\n", "mlflow.mistral.autolog()\n", "\n", "# Configure your API key.\n", "client = Mistral(api_key=os.environ[\"MISTRAL_API_KEY\"])\n", "\n", "# Use the chat complete method to create new chat.\n", "chat_response = client.chat.complete(\n", " model=\"mistral-small-latest\",\n", " messages=[\n", " {\n", " \"role\": \"user\",\n", " \"content\": \"Who is the best French painter? Answer in one short sentence.\",\n", " },\n", " ],\n", ")\n", "print(chat_response.choices[0].message)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Tracing\n", "\n", "To see the MLflow tracing, open the MLflow UI in the same directory and the same virtualenv where you run this notebook. \n", "\n", "### Launch the UI\n", "\n", "Open a terminal and run this command:\n", "\n", "`mlflow ui`\n", "\n", "\n", "\n", "### View the traces in the browser\n", "\n", "Open your browser and connect to the MLflow UI port (default: http://localhost:5000)\n", "\n", "" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.6" } }, "nbformat": 4, "nbformat_minor": 2 }