Codestral анализирует датасет и запускает код

Урок 91 из 148 курса «Mistral AI Cookbook»: официальный курс Mistral AI Cookbook (Мистраль) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

О чём урок

Этот AI-ассистент работает на базе открытого Code Interpreter SDK от E2B. SDK быстро создает безопасную облачную sandbox-среду, работающую на базе Firecracker. Внутри этой sandbox-среды запущен Jupyter server, который может использовать LLM. Подробнее о новой модели Codestral от Mistral можно прочитать здесь. Начнем с установки E2B code interpreter SDK и Python SDK от Mistral. Определим наши переменные с API-ключами для Mistral и E2B, а также ID модели и prompt. Мы не будем определять никаких tools, поскольку этот пример разработан для универсальной работы, включая модели Mistral, которые еще не полностью поддерживают использование tools (function calling). Чтобы узнать больше о function calling с LLM от Mistral, см. эту страницу документации. Мы инструктируем модель возвращать сообщения в Markdown, а затем парсим и извлекаем блок Python кода. Вот основная функция, которая использует E2B code interpreter SDK. Мы будем вызывать эту функцию чуть дальше в коде, когда будем парсить ответ Codestral с tool calls. Теперь мы определим и реализуем метод chat. В этом методе мы вызовем Codestral LLM, спарсим вывод, чтобы извлечь любой блок Python кода, и вызовем наш метод code_interpret, который мы определили выше. Файл загружается в E2B sandbox-среду, где запущен наш code interpreter. Мы получаем удаленный путь к файлу в переменной remote_path. На этом последнем шаге мы собираем все части воедино. Мы создаем новый экземпляр code interpreter-а, используя а затем вызываем метод chat с нашим сообщением пользователя и экземпляром code_interpreter.

План урока

  1. Шаг 1: Установка зависимостей
  2. Шаг 2: Определение API-ключей и prompt-а
  3. Шаг 3: Реализация метода для интерпретации кода
  4. Шаг 4: Реализация метода для вызова Codestral и парсинга его ответа
  5. Шаг 5: Реализация метода для загрузки набора данных в sandbox-среду code interpreter-а
  6. Шаг 6: Собираем все воедино

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Полезные гиды