Проблема: Из-за ограничений контекстного окна я не могу передать полную схему (600 столбцов) в модель 7B. Даже когда я предоставляю обобщенную схему, в модели возникают проблемы с связыванием схем. Он правильно определяет значение, которое запрашивают пользователи, но сопоставляет его с неправильным столбцом.
Минимальный пример: Допустим, у меня есть такая упрощенная структура схемы:
- (например, Стэнфорд, Массачусетский технологический институт)
Код: Выделить всё
university_name(например, информатика, биология)Код: Выделить всё
program_name - (например, Бостон, Калифорния)
Код: Выделить всё
city - Вопрос пользователя: «В каком университете лучший факультет компьютерных наук?»
- Ожидаемый SQL:
SQLКод: Выделить всё
SELECT * FROM view_one WHERE program_name ILIKE '%Computer Science%' - Фактический сгенерированный SQL (ошибка):
SQLКод: Выделить всё
SELECT * FROM view_one WHERE university_name ILIKE '%Computer Science%'
1.RAG Контекст: я получаю соответствующие значения с помощью векторной базы данных (ChromaDB), что улучшает распознавание объектов, но сопоставление этих объектов с правильным столбцом SQL остается проблемой.
- Описания столбцов: я добавил описания в системную подсказку для
ключевых столбцов. - Группировка схемы: я пробовал разбить схему на логические группы
(например, «Основная информация», «Статистика»), но динамический выбор с помощью модели 7B
оказался непоследовательным. - Нечеткое сопоставление: я реализовал нечеткое сопоставление для обработки опечаток, что
помогает при поиске значений, но не решает проблему выбора столбца
логика.
Подробнее здесь: https://stackoverflow.com/questions/798 ... kdb-qwen-2
Мобильная версия