For the complete documentation index, see llms.txt. This page is also available as Markdown.

Популяризация знаний

Что такое токены?

Tokens — это базовая единица, с которой ИИ-модели обрабатывают текст; их можно понимать как наименьший элемент, с помощью которого модель «думает». Это не полностью совпадает с тем, что мы понимаем под символами или словами, а представляет собой особый способ разбиения текста самой моделью.

1. Разбиение китайского текста

  • Один китайский иероглиф обычно кодируется как 1–2 токена

  • Например:«你好» ≈ 2–4 токена

2. Разбиение английского текста

  • Обычные слова обычно являются 1 токеном

  • Более длинные или редкие слова разбиваются на несколько токенов

  • Например:

    • «hello» = 1 токен

    • «indescribable» = 4 токена

3. Специальные символы

  • Пробелы, знаки препинания и т. п. тоже занимают токены

  • Символ перевода строки обычно является 1 токеном

Токенизаторы у разных провайдеров отличаются, и даже у разных моделей одного провайдера токенизаторы могут различаться; эта информация нужна лишь для понимания концепции токена.


Что такое Tokenizer?

Tokenizer (токенизатор) — это инструмент, который преобразует текст в токены для ИИ-модели. Он определяет, как входной текст разбивается на наименьшие единицы, понятные модели.

Почему у разных моделей Tokenizer различается?

1. Разные обучающие данные

  • Разные корпуса текстов приводят к разным направлениям оптимизации

  • Различия в степени поддержки многоязычности

  • Специализированная оптимизация для конкретных областей (медицина, право и т. д.)

2. Разные алгоритмы токенизации

  • BPE (Byte Pair Encoding) — серия OpenAI GPT

  • WordPiece — Google BERT

  • SentencePiece — подходит для многоязычных сценариев

3. Разные цели оптимизации

  • У одних упор на эффективность сжатия

  • У других — на сохранение смысла

  • У третьих — на скорость обработки

Практическое влияние

Количество токенов для одного и того же текста в разных моделях может отличаться:


Что такое embedding model (модель встраивания)?

Основное понятие: Embedding-модель — это технология, которая преобразует высокоразмерные дискретные данные (текст, изображения и т. д.) в низкоразмерные непрерывные векторы; такое преобразование позволяет машинам лучше понимать и обрабатывать сложные данные. Представьте, будто сложный пазл упрощают до одной координатной точки, но эта точка всё ещё сохраняет ключевые признаки пазла. В экосистеме больших моделей она выступает как «переводчик», преобразуя понятную человеку информацию в числовую форму, с которой может работать ИИ.

Принцип работы: На примере обработки естественного языка embedding-модель может отображать слова в определённые позиции в векторном пространстве. В этом пространстве слова с близким смыслом автоматически группируются вместе. Например:

  • Векторы слов «король» и «королева» будут очень близки

  • Слова, обозначающие домашних животных, такие как «кот» и «собака», тоже будут находиться близко друг к другу

  • А слова с несвязанным смыслом, такие как «автомобиль» и «хлеб», будут находиться далеко друг от друга

Основные сценарии применения:

  • Анализ текста: классификация документов, анализ тональности

  • Рекомендательные системы: персонализированные рекомендации контента

  • Обработка изображений: поиск похожих изображений

  • Поисковые системы: оптимизация семантического поиска

Ключевые преимущества:

  1. Эффект снижения размерности: упрощает сложные данные до удобной для обработки векторной формы

  2. Сохранение семантики: сохраняет ключевую смысловую информацию исходных данных

  3. Вычислительная эффективность: значительно повышает эффективность обучения и инференса моделей машинного обучения

Технологическая ценность: Embedding-модели — это базовый компонент современных ИИ-систем, они обеспечивают высококачественное представление данных для задач машинного обучения и являются ключевой технологией, продвигающей развитие обработки естественного языка, компьютерного зрения и других областей.


Принцип работы Embedding-модели в поиске знаний

Базовый рабочий процесс:

  1. Этап предварительной обработки базы знаний

  • Разделение документов на подходящие по размеру chunk'и (текстовые блоки)

  • Преобразование каждого chunk'а в вектор с помощью embedding-модели

  • Сохранение векторов и исходного текста в векторной базе данных

  1. Этап обработки запроса

  • Преобразование вопроса пользователя в вектор

  • Поиск похожего контента в векторном хранилище

  • Передача найденного релевантного контента в качестве контекста для LLM


Что такое MCP (Model Context Protocol)?

MCP — это открытый протокол, предназначенный для стандартизированного предоставления контекстной информации большим языковым моделям (LLM).

  • Понимание по аналогии: MCP можно представить как «флешку» для сферы ИИ. Мы знаем, что на флешке можно хранить разные файлы, и после подключения к компьютеру ими можно сразу пользоваться. Аналогично на MCP Server можно «подключать» разные «плагины», предоставляющие контекст; LLM может по необходимости запрашивать эти плагины у MCP Server, тем самым получая более богатую контекстную информацию и усиливая свои возможности.

  • Сравнение с Function Tool: Традиционный Function Tool (инструмент-функция) тоже может предоставлять LLM внешние возможности, но MCP скорее является абстракцией более высокого уровня. Function Tool — это чаще инструмент под конкретную задачу, а MCP предоставляет более универсальный и модульный механизм получения контекста.

Ключевые преимущества MCP

  1. Стандартизация: MCP предоставляет единый интерфейс и формат данных, позволяя разным LLM и поставщикам контекста бесшовно взаимодействовать.

  2. Модульность: MCP позволяет разработчикам разделять контекстную информацию на отдельные модули (плагины), что упрощает управление и повторное использование.

  3. Гибкость: LLM может динамически выбирать нужные контекстные плагины в зависимости от своих потребностей, обеспечивая более умное и более персонализированное взаимодействие.

  4. Масштабируемость: Архитектура MCP поддерживает добавление в будущем новых типов контекстных плагинов, открывая безграничные возможности для расширения возможностей LLM.


Последнее обновление

Это было полезно?