tgoop.com/machinelearning_ru/2645
Last Update:
Традиционные модели для поиска информации часто проваливаются в задачах, где нужны глубокие рассуждения: короткие фактологические запросы и простые документы из обучающих данных не учат их работать с многошаговыми вопросами.
ReasonIR был создан, чтобы решить эту проблему через синтетическую генерацию данных. Авторы создали ReasonIR-Synthesizer — пайплайн, который генерирует сложные запросы и «ложные» документы, похожие на полезные, но бесполезные на деле. Это заставляет модель учиться отличать настоящие паттерны, а не хвататься за поверхностные совпадения.
Для обучения тестовой модели ReasonIR-8B использовали контрастивное обучение с «хард негативами» (документами, которые кажутся релевантными, но таковыми не являются). Под капотом — доработанная LLama3.1-8B с двунаправленной маской внимания, обученная на смеси публичных данных (1,3 млн. примеров) и синтетики (около 345 тыс.).
На бенчмарке BRIGHT, (задачи из биологии, экономики и программирования), ReasonIR-8B показала 29.9 nDCG@10 без реранкера и 36.9 — с ним. Для сравнения: BM25, классический алгоритм, дает всего 14.8.
В RAG-сценариях модель подняла точность на MMLU на 6.4%, а на GPQA — на 22.6%, обогнав даже поисковик you.com. Причем чем детальнее переписывался запрос (например, добавлением контекста через GPT-4), тем лучше работала модель — другие ретриверы на длинных запросах «задыхались».
Авторы также оптимизировали вычисления: модель обходит LLM-реранкеры в 200 раз по эффективности, экономя ресурсы без потерь в качестве.
from transformers import AutoModel, AutoTokenizer
model = AutoModel.from_pretrained("reasonir/ReasonIR-8B", torch_dtype="auto", trust_remote_code=True)
query = "The quick brown fox jumps over the lazy dog."
document = "The quick brown fox jumps over the lazy dog."
query_instruction = ""
doc_instruction = ""
model = model.to("cuda")
model.eval()
query_emb = model.encode(query, instruction=query_instruction)
doc_emb = model.encode(document, instruction=doc_instruction)
sim = query_emb @ doc_emb.T
@ai_machinelearning_big_data
#AI #ML #LLM #ReasonIR