ИИ без LLM: казахская модель с нуля Урок 7 из 20
Урок 7. Делим короткий вопрос на слова
Библиотекарь сначала раскладывает книги по отдельным карточкам, а потом ищет каждую. Так и модель: прежде чем узнавать основу, она должна отделить слова в вопросе. Токен здесь — одно полученное слово; разбиение — получение таких частей из строки.
Текст переведён с помощью ИИ.
Зачем это нужно
Библиотекарь сначала раскладывает книги по отдельным карточкам, а потом ищет каждую. Так и модель: прежде чем узнавать основу, она должна отделить слова в вопросе. Токен здесь — одно полученное слово; разбиение — получение таких частей из строки.
Целая программа
В папке ai-course создайте words.py в UTF-8. Запускайте его так же, как letters.py из урока 6.
text = input("Сұрақ: ")
clean = text.lower().replace("?", "").replace(",", "")
words = clean.split()
print(words)
Готовый файл этого шага доступен в папке учебного проекта; сначала прочитайте объяснение кода в этом уроке.
Введите Үйлерде, мектептерде?. Результат: ['үйлерде', 'мектептерде']. Квадратные скобки обозначают список, то есть несколько значений в одном порядке; запятая разделяет элементы, а кавычки показывают, что каждый элемент — строка. Эти знаки печатает Python, вводить их не надо.
Разбор без чёрных дыр
text.lower() создаёт копию строки с маленькими буквами. Точка означает: «применить действие к строке слева». replace("?", "") заменяет каждый вопросительный знак на пустую строку; "" — текст из нуля букв. Следующий replace так же убирает запятые. Каждое действие возвращает новую строку; мы сохраняем итог в clean. split() делит её по пробелам и другим пробельным промежуткам. Скобки без текста означают: для этого действия дополнительное указание не нужно. Проверить поведение можно в справке Python.
Это узкий учебный разбор. Он не очищает точку, восклицательный знак или кавычки; запятая внутри слова тоже просто исчезнет. Не называйте результат полноценным разбором любого текста. Если ввести пустую строку, получится пустой список []: слов не найдено.
Опорная карта
Вопрос → маленькие буквы → убрать ? и , → разделить по пробелам → список слов. На каждом шаге спросите: что ещё могло остаться?
Проверка памяти и задание
Закройте код и объясните каждую точку и пару скобок в строке clean = .... Затем введите Мектептерде үйлер бар ма?. Подсказка: сначала мысленно уберите только ?, затем разделите по пробелам. Эталон: ['мектептерде', 'үйлер', 'бар', 'ма']. Слово бар пока только отдельный токен; его значение программа не знает. Частая ошибка: если забыть lower(), первая буква М останется большой и не совпадёт с будущим словарём маленьких основ.
Если вы нашли ошибку или опечатку в тексте статьи, то сообщите нам об этом
Комментарии (0)
Войдите, чтобы оставить комментарий →
Пока нет комментариев. Будьте первым.