Пока я разбирался с одним обновлением, вышло три следующих. Наверное, это и есть главное ощущение от работы с AI-инструментами прямо сейчас — ты физически не успеваешь за темпом. Поэтому собрал в одном месте всё, что считаю реально значимым за последние дни. Не пересказ пресс-релизов — то, что я сам щупал руками и что, на мой взгляд, что-то меняет в повседневной работе.
LangChain 0.3: наконец-то навели порядок
Несколько месяцев назад я жаловался, что в LangChain можно импортировать один и тот же класс из пяти разных мест — и всё равно гадать, какой из них правильный. После 0.3 это ощущение заметно поутихло.
Главное изменение — окончательный переход на Pydantic v2. Звучит скучно, но дело в том, что валидация данных в цепочках стала предсказуемее, а старые предупреждения про устаревшие классы перестали засорять логи. Я обновил один из своих старых проектов — миграция заняла примерно час, в основном из-за нескольких кастомных коллбэков, написанных под v1. После — заработало чище.
Кучу deprecated-методов, которые висели с версии 0.1, убрали. Если у тебя старый код на LangChain — прогони линтер, прежде чем обновляться вслепую.
Anthropic открыл tool use в Claude через API
Это то, чего я ждал дольше всего. Function calling — или, как Anthropic это называет, tool use — теперь доступен в API без waitlist. Провозился с ним пару вечеров. Реализация приятная.
Ключевое отличие от OpenAI: Claude заметно аккуратнее в том, когда вызвать инструмент, а когда просто ответить текстом. У меня была конкретная задача — агент, который ищет по базе, но на простые вопросы отвечает напрямую. С GPT-4 приходилось явно прописывать в промпте "не используй поиск, если знаешь ответ". Claude как-то сам это чувствует — по крайней мере, на моих тестах галлюцинаций инструмента было меньше.
Ограничения есть: вложенные вызовы работают нестабильно, параллельный tool use в одном запросе — пока в бете. Но для большинства задач уже хватает.
Mistral выпустил Mistral Large через Le Plateforme
Честно: я не ждал от этого ничего особенного. Mistral мне всегда казался крепким середнячком — хорош для локального запуска, но не тем, с чем идёшь на сложные задачи. После Large немного пересмотрел это мнение.
Я гонял его на рефакторинге Python-скриптов с запутанной логикой. Качество сопоставимо с GPT-4-turbo, а цена через API ниже. Контекстное окно — 32k токенов, для большинства задач хватает. Отдельно понравилось, что модель работает на европейской инфраструктуре — для проектов с требованиями к юрисдикции данных это не абстрактный плюс, а вполне практический.
API совместим с OpenAI-форматом. Перейти из существующего проекта — буквально замена одной строки с URL и ключом.
LlamaIndex v0.10: разделили ядро и интеграции
LlamaIndex сделал то, что давно напрашивалось — разбил монолитный пакет на llama-index-core и отдельные пакеты для каждой интеграции. Раньше при установке тащился весь зоопарк зависимостей, даже если нужен был один коннектор. Теперь ставишь только то, что используешь.
Мне это актуально по конкретной причине: я держу несколько небольших сервисов на лямбдах, где вес зависимостей критичен. С новой структурой образ похудел примерно на 40% по зависимостям. Не революция, но приятно.
На практике ещё переработали pipeline API — он стал ближе к тому, как работает LangChain Expression Language. Если переключаешься между двумя фреймворками, это снижает трение. Я переключаюсь, так что оценил.
OpenAI тихо обновил embeddings
На фоне остального это почти прошло незамеченным — и зря. OpenAI выпустил text-embedding-3-small и text-embedding-3-large: новое поколение эмбеддингов с заметно лучшим качеством на multilingual-задачах и вдвое дешевле старой ada-002.
Я переиндексировал один RAG-проект на новой модели. Качество поиска по русскоязычным текстам выросло ощутимо — не "чуть лучше", а прямо заметно. Похоже, ada-002 на русском работала хуже, чем я привык считать.
Единственный нюанс: если у тебя уже есть векторная база на старых эмбеддингах, придётся переиндексировать полностью. Векторы от разных моделей несовместимы. Я потратил на это несколько часов — результат того стоил.
Что из этого брать в работу прямо сейчас
Embeddings-3 от OpenAI — апгрейд без раздумий, если у тебя есть хоть один RAG-проект. Tool use в Claude — стоит попробовать, если текущий function calling работает нестабильно. LangChain 0.3 — обновляй, но не в пятницу вечером.
С Mistral Large и LlamaIndex 0.10 сложнее — зависит от задачи. Mistral интересен как более дешёвая альтернатива GPT-4, особенно если важна европейская юрисдикция. LlamaIndex — только если тебя уже раздражал размер зависимостей.
Следующая неделя обещает быть не тише. В очереди — разбор нового Gemini API и первые эксперименты с Cohere Command R. Расскажу, что получилось.
