Чтобы научиться моделировать естественный язык, а затем убедительно генерировать его, большие языковые модели нуждаются в огромном количестве примеров. Давайте рассмотрим, какая информация неявно требуется для выполнения такой задачи, как ответ на вопрос. Во-первых, модель должна иметь точное представление как о смысле самого вопроса, так и о контексте, в котором этот вопрос задают (потому что ответ зависит от контекста), а это, в свою очередь, означает, что у нее должно быть представление для каждого слова из вопроса, причем именно в данном контексте (аналогично пониманию значения слова). Модель также должна уметь анализировать синтаксис вопроса, чтобы определить, о чем в нем спрашивают, и затем уметь создавать ответ либо из контекста (случай с «открытой книгой»), либо из собственного внутреннего представления о предмете вопроса (случай с «закрытой книгой»). Поскольку LLM уже просматривали большой объем текстов из интернета, большинство из них смогут правильно ответить на вопрос вроде «Кто был первым президентом США?», опираясь только на свои внутренние знания. Если вопрос очень редко встречается, то это может привести к неправильному или выдуманному ответу, поскольку модель не сможет найти для него высоковероятный ответ в своих внутренних представлениях и выдаст ответ, не обладающий высокой вероятностью. Примечательно, что если мы спросим ChatGPT «Кто был первым президентом?», не уточняя, что мы интересуемся Соединенными Штатами, то модель ответит: «Первым президентом Соединенных Штатов был Джордж Вашингтон».
LLM используют данные из общедоступных веб-страниц, включая такие сайты, как Wikipedia и Reddit, а также блоги, агрегаторы новостей и форумы, не защищенные паролем. Почему ChatGPT думает, что мы спрашиваем о Соединенных Штатах? Справедливости ради можно допустить, что ответ мог оказаться иным, если бы запрос пришел с IP-адреса другой страны, но это предположение также противоречит неоспоримому факту об интернет-данных: большая их часть представлена на английском языке, а непропорционально большая часть приходится на Соединенные Штаты и Западную Европу. В главе 1 мы упоминали, что Wikipedia является одним из классических источников данных для больших языковых моделей. Несмотря на то, что географический охват энциклопедии продолжает расширяться, самое большое количество статей – 6,6 миллиона – насчитывается в английской Wikipedia, в следующей по размеру – французской – 2,5 миллиона статей. В результате LLM лучше понимают, генерируют и выполняют задания на английском языке. Они также лучше разбираются в темах, актуальных для Северной Америки и Западной Европы, и, следовательно, предоставляют лучший сервис аудиториям этих стран.
Чтобы получить представление о других текстовых наборах данных, мы можем обратиться к репозиториям открытых данных, например от ИИ-компании Hugging Face (см. https://huggingface.co/datasets). Открытые данные – это данные, которые любой человек может загрузить и использовать для своих проектов; хотя иногда этот тип допустимого использования ограничен лицензией, например, поставщик данных может указать, что его датасет должен использоваться только в учебных или исследовательских целях, но не в коммерческих. Один набор данных для языковых моделей состоит из миллионов постов на Reddit (причем только из постов на английском языке). Другие датасеты включают подборки новостных статей, обзоры с таких сайтов, как Amazon и Rotten Tomatoes [31], или вопросы и ответы с сайта Q&A-сообщества Stack Exchange. Common Crawl – это некоммерческая организация, которая поддерживает обширное хранилище данных веб-страниц и предоставляет их для публичного использования (см. https://commoncrawl.org/). В целом любое место в интернете, где люди пишут, является потенциальным источником данных.
Компании, которые разрабатывают LLM, могут использовать сразу несколько типов наборов данных: открытые, например с Hugging Face; купленные у сторонних поставщиков; собранные самостоятельно с веб-страниц; созданные своими силами, когда сотрудники сами пишут обучающие примеры для модели. Несмотря на то, что для первоначального обучения LLM может и не потребоваться никакого ручного вмешательства, для улучшения работы модели в определенных областях, таких как диалоги для чат-ботов, важны краудсорсинг и сбор диалоговых данных, и мы об этом еще будем говорить.