Үлкен тілдік үлгісіз ЖИ: өз үлгімізді жасаймыз 21-сабақ (барлығы 30)
21-сабақ. Сұрақтарды қолмен белгілейміз
Мұғалім оқушыны тексермей тұрып, тапсырмалардың дұрыс жауаптарын белгілейді. Үлгі үшін де әр карточкада сұрақ пен оның дұрыс оқу белгісі болуы керек. Белгіленген мысалдар болмаса, үлгі үйрене алмайды, біз де қатесін тексере алмаймыз.
Мәтін ИИ көмегімен аударылды.
Бұл не үшін керек?
Мұғалім оқушыны тексермей тұрып, тапсырмалардың дұрыс жауаптарын белгілейді. Үлгі үшін де әр карточкада сұрақ пен оның дұрыс оқу белгісі болуы керек. Белгіленген мысалдар болмаса, үлгі үйрене алмайды, біз де қатесін тексере алмаймыз.
Бағдарламаға дейін
examples.json файлында ойдан алынған 13 сұрақ бар. Әр карточкадағы text — сұрақ, label — белгі: уақыт (уақыт туралы), орын (орын туралы), белгісіз (басқа тақырып немесе бірден екі сұрау). Белгі — адамның оқу тапсырмасына берген шешімі, үйірме кестесі туралы жауап емес. Белгілеуден бұрын «Адам қандай мәлімет сұрап тұр?» деп ойлаңыз. Екі түрдің ешбірі сәйкес келмесе, белгі ойлап шығармаңыз. JSON файлын labels.py қасына UTF-8 жазылымымен сақтаңыз.
[
{
"text": "Шахмат қашан?",
"label": "уақыт"
},
{
"text": "Сурет қашан?",
"label": "уақыт"
},
{
"text": "Шахмат уақыты?",
"label": "уақыт"
},
{
"text": "Сурет уақыты?",
"label": "уақыт"
},
{
"text": "Шахмат қайда?",
"label": "орын"
},
{
"text": "Сурет қайда?",
"label": "орын"
},
{
"text": "Шахмат орны?",
"label": "орын"
},
{
"text": "Сурет орны?",
"label": "орын"
},
{
"text": "Шахмат қашан өтеді?",
"label": "уақыт"
},
{
"text": "Сурет қайда өтеді?",
"label": "орын"
},
{
"text": "Шахмат нешеде?",
"label": "уақыт"
},
{
"text": "Шахмат неге?",
"label": "белгісіз"
},
{
"text": "Шахмат қашан және қайда өтеді? Уақыты қандай?",
"label": "белгісіз"
}
]
Жоба түбірінен қадам қалтасына өтіп, бағдарламаны іске қосыңыз:
cd course/kazakh-ai/step-21
python3 labels.py
Windows жүйесінде соңғы пәрменнің орнына py labels.py деп жазыңыз.
import json
with open("examples.json", encoding="utf-8") as file:
rows = json.load(file)
counts = {"уақыт": 0, "орын": 0, "белгісіз": 0}
for row in rows:
label = row["label"]
if label in counts:
counts[label] += 1
else:
print("Қате белгі:", label)
print("Уақыт:", counts["уақыт"])
print("Орын:", counts["орын"])
print("Белгісіз:", counts["белгісіз"])
Код қалай жұмыс істейді?
counts үш санақты сақтайды. for row in rows карточкаларды бір-бірлеп қарайды, row["label"] адам қойған белгіні алады. label in counts оның рұқсат етілген белгілердің бірі екенін тексереді; += 1 бұрынғы санға бірді қосады. Түсініксіз белгі қате ретінде көрсетіледі де, саналмайды. Әзірше үлгіні үйретпейміз: бастапқы белгілерді тексереміз.
Тірек сызба
Сұрақ → адам қойған белгі → JSON тізімі → белгі жарамдылығын тексеру → 6 / 5 / 2 саны.
Еске түсіріп, тексеріңіз
Кодты жауып, үш белгіні еске түсіріңіз. Сурет нешеде? сұрағын уақыт белгісімен қосыңыз. Көмек: жаңа карточканың алдына үтір қойылады. Үлгі нәтиже: Уақыт: 7, Орын: 5, Белгісіз: 2. Содан кейін уақ деп жазып, Қате белгі: уақ хабарын табыңыз. Жиі қате: белгісіз белгісін деректер тізімінде жауап жоқ дегенмен шатастыру; мұнда сұрақтың түрін белгілейміз, нақты деректі бөлек тексереміз.
Пікірлер (0)
Пікір қалдыру үшін кіріңіз →
Әзірге пікір жоқ. Бірінші болыңыз.