router/semantic: corpus format and v1 dataset (slice 12)
136 examples with provenance from ru_routing_v1.json, tagged fast_path_resolved vs residual. RouteExample carries source, source_id, split_group for traceability. Split-by-family prevents paraphrase leakage across train/eval.
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
package semantic
|
||||
|
||||
import (
|
||||
_ "embed"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"sort"
|
||||
)
|
||||
|
||||
//go:embed corpus_v1.json
|
||||
var corpusV1JSON []byte
|
||||
|
||||
// RouteExample — one labeled utterance in the coarse-route experiment corpus.
|
||||
// Every row carries provenance so no row can masquerade as independent when
|
||||
// related paraphrases exist.
|
||||
type RouteExample struct {
|
||||
Text string `json:"text"`
|
||||
Route SemanticRoute `json:"route"`
|
||||
Source string `json:"source"` // where this row came from
|
||||
SourceID string `json:"source_id"` // case ID in the source corpus
|
||||
SplitGroup string `json:"split_group"` // family/seed ID for split discipline
|
||||
Tags []string `json:"tags,omitempty"`
|
||||
// FastPathResolved is true when a stage-0 grammar already handles this
|
||||
// utterance. The learned router should not be measured on these unless
|
||||
// explicitly desired; they are tagged, not removed.
|
||||
FastPathResolved bool `json:"fast_path_resolved"`
|
||||
}
|
||||
|
||||
// CorpusEnvelope — the versioned JSON envelope.
|
||||
type CorpusEnvelope struct {
|
||||
SchemaVersion int `json:"schema_version"`
|
||||
Name string `json:"name"`
|
||||
Notes []string `json:"notes"`
|
||||
Examples []RouteExample `json:"examples"`
|
||||
}
|
||||
|
||||
// SchemaVersionV1 is the version this package understands.
|
||||
const SchemaVersionV1 = 1
|
||||
|
||||
// LoadCorpus returns the embedded corpus, rejecting unknown schema versions.
|
||||
func LoadCorpus() ([]RouteExample, error) {
|
||||
var env CorpusEnvelope
|
||||
if err := json.Unmarshal(corpusV1JSON, &env); err != nil {
|
||||
return nil, fmt.Errorf("semantic corpus: parse: %w", err)
|
||||
}
|
||||
if env.SchemaVersion != SchemaVersionV1 {
|
||||
return nil, fmt.Errorf("semantic corpus: schema_version %d, want %d",
|
||||
env.SchemaVersion, SchemaVersionV1)
|
||||
}
|
||||
return env.Examples, nil
|
||||
}
|
||||
|
||||
// ByRoute groups examples by their semantic route, for per-route inspection.
|
||||
func ByRoute(exs []RouteExample) map[SemanticRoute][]RouteExample {
|
||||
m := make(map[SemanticRoute][]RouteExample)
|
||||
for _, e := range exs {
|
||||
m[e.Route] = append(m[e.Route], e)
|
||||
}
|
||||
for k := range m {
|
||||
sort.Slice(m[k], func(i, j int) bool { return m[k][i].Text < m[k][j].Text })
|
||||
}
|
||||
return m
|
||||
}
|
||||
|
||||
// SplitCounts returns the number of fast-path-resolved vs
|
||||
// general-route-required examples.
|
||||
func SplitCounts(exs []RouteExample) (fastPath, residual int) {
|
||||
for _, e := range exs {
|
||||
if e.FastPathResolved {
|
||||
fastPath++
|
||||
} else {
|
||||
residual++
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
@@ -0,0 +1,161 @@
|
||||
{
|
||||
"schema_version": 1,
|
||||
"name": "semantic_coarse_route_v1",
|
||||
"notes": [
|
||||
"Coarse semantic route corpus for the learned-router experiment. Rows derive from trusted existing fixtures and deterministic contrastive transformations — no LLM-generated labels.",
|
||||
"Every row carries provenance (source + source_id) and a split_group that binds paraphrases to the same split.",
|
||||
"fast_path_resolved tags cases handled by stage-0 grammars. The learned router should not be measured on these unless explicitly desired.",
|
||||
"Contrastive pairs derive from action-route base seeds via deterministic transforms (negation, question, reported speech, quotation, hypothetical, capability question).",
|
||||
"Labels come from explicit mapping rules, not model output. uncertain is used when current semantics do not give a defensible coarse label."
|
||||
],
|
||||
"examples": [
|
||||
{"text": "сколько воды я выпил с утра", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-001", "split_group": "ru-query-001", "tags": ["aggregate"]},
|
||||
{"text": "я сегодня вообще пил воду", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-002", "split_group": "ru-query-002", "tags": ["hard", "fact-shaped"]},
|
||||
{"text": "во сколько я лёг вчера", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-003", "split_group": "ru-query-003", "tags": ["temporal"]},
|
||||
{"text": "давно я не тренировался", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-004", "split_group": "ru-query-004", "tags": ["hard", "no-question-word"]},
|
||||
{"text": "напоминания на завтра есть", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-005", "split_group": "ru-query-005", "tags": ["hard", "reminder-shaped"]},
|
||||
{"text": "что я записывал про кота", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-006", "split_group": "ru-query-006", "tags": ["recall"]},
|
||||
{"text": "сколько раз я ел вчера", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-007", "split_group": "ru-query-007", "tags": ["aggregate", "hard"]},
|
||||
{"text": "мой вес за последний месяц", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-008", "split_group": "ru-query-008", "tags": ["no-verb"]},
|
||||
{"text": "когда я в последний раз принимал витамины", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-009", "split_group": "ru-query-009", "tags": ["temporal"]},
|
||||
{"text": "есть новости по бэкапу базы", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-010", "split_group": "ru-query-010", "tags": ["homelab"]},
|
||||
{"text": "почему сервер тормозит", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-011", "split_group": "ru-query-011", "tags": ["homelab", "hard"]},
|
||||
{"text": "какие заметки я оставил про полив", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-012", "split_group": "ru-query-012", "tags": ["recall"]},
|
||||
{"text": "во сколько у меня встреча", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-013", "split_group": "ru-query-013", "tags": ["calendar"]},
|
||||
{"text": "что у меня стоит в календаре на послезавтра", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-019", "split_group": "ru-query-019", "tags": ["calendar", "hard"]},
|
||||
{"text": "какие планы на завтра?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-022", "split_group": "ru-query-022", "tags": ["calendar"]},
|
||||
{"text": "когда планёрка?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-023", "split_group": "ru-query-023", "tags": ["calendar", "hard"]},
|
||||
{"text": "что дальше?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-024", "split_group": "ru-query-024", "tags": ["calendar", "no-question-word"]},
|
||||
{"text": "расскажи про битву при Ватерлоо", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-025", "split_group": "ru-query-025", "tags": ["world", "no-question-word"]},
|
||||
{"text": "я успеваю до дедлайна", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-014", "split_group": "ru-query-014", "tags": ["hard", "no-question-word"]},
|
||||
{"text": "сколько я прошёл шагов", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-015", "split_group": "ru-query-015", "tags": ["aggregate"]},
|
||||
{"text": "покажи давление за неделю", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-016", "split_group": "ru-query-016", "tags": ["hard", "imperative"]},
|
||||
{"text": "чем я занимался в среду", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-017", "split_group": "ru-query-017", "tags": ["hard", "chat-shaped"]},
|
||||
{"text": "хватает ли места под новые бэкапы", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-018", "split_group": "ru-query-018", "tags": ["homelab"]},
|
||||
{"text": "что дальше?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-020", "split_group": "ru-query-020", "tags": ["agenda", "hard"]},
|
||||
{"text": "расскажи про битву при Ватерлоо", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-021", "split_group": "ru-query-021", "tags": ["world", "hard"]},
|
||||
{"text": "did I take my vitamins today", "route": "knowledge", "source": "ru_routing_v1", "source_id": "en-query-001", "split_group": "en-query-001", "tags": ["fact-shaped"]},
|
||||
{"text": "how long since the last backup finished", "route": "knowledge", "source": "ru_routing_v1", "source_id": "en-query-002", "split_group": "en-query-002", "tags": ["temporal"]},
|
||||
{"text": "show me this week's weight", "route": "knowledge", "source": "ru_routing_v1", "source_id": "en-query-003", "split_group": "en-query-003", "tags": ["imperative"]},
|
||||
{"text": "что такое TCP?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-026", "split_group": "ru-query-026", "tags": ["world", "regression"], "fast_path_resolved": true},
|
||||
{"text": "сколько будет 17 на 23?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-027", "split_group": "ru-query-027", "tags": ["world", "arithmetic", "regression"], "fast_path_resolved": true},
|
||||
{"text": "какой у меня любимый язык?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-028", "split_group": "ru-query-028", "tags": ["recall", "possessive", "regression"]},
|
||||
{"text": "кто такой Линус Торвальдс?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-029", "split_group": "ru-query-029", "tags": ["world", "person", "regression"]},
|
||||
{"text": "что там с бэкапами?", "route": "knowledge", "source": "ru_routing_v1", "source_id": "ru-query-030", "split_group": "ru-query-030", "tags": ["homelab", "regression"]},
|
||||
|
||||
{"text": "только что выпил кружку воды", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-001", "split_group": "ru-fact-001"},
|
||||
{"text": "воды попил наконец", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-002", "split_group": "ru-fact-002", "tags": ["inverted"]},
|
||||
{"text": "поужинал", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-003", "split_group": "ru-fact-003", "tags": ["single-word"]},
|
||||
{"text": "отметь что я позавтракал овсянкой", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-004", "split_group": "ru-fact-004"},
|
||||
{"text": "поспал часов пять", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-005", "split_group": "ru-fact-005"},
|
||||
{"text": "сходил в душ", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-006", "split_group": "ru-fact-006"},
|
||||
{"text": "отдохнул минут двадцать", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-007", "split_group": "ru-fact-007"},
|
||||
{"text": "запиши вес 74 килограмма", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-008", "split_group": "ru-fact-008", "tags": ["unparsed-key"]},
|
||||
{"text": "отметь что я выпил таблетки утром", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-009", "split_group": "ru-fact-009", "tags": ["unparsed-key"]},
|
||||
{"text": "сделал зарядку двадцать минут", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-fact-010", "split_group": "ru-fact-010", "tags": ["unparsed-key"]},
|
||||
{"text": "just drank a glass of water", "route": "memory_write", "source": "ru_routing_v1", "source_id": "en-fact-001", "split_group": "en-fact-001"},
|
||||
{"text": "slept about seven hours", "route": "memory_write", "source": "ru_routing_v1", "source_id": "en-fact-002", "split_group": "en-fact-002"},
|
||||
|
||||
{"text": "напомни через сорок минут выключить свет", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-001", "split_group": "ru-rem-001", "fast_path_resolved": true},
|
||||
{"text": "напомни завтра в 7 позвонить в клинику", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-002", "split_group": "ru-rem-002", "fast_path_resolved": true},
|
||||
{"text": "не забудь напомнить мне про счёт за свет", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-003", "split_group": "ru-rem-003", "tags": ["no-time"], "fast_path_resolved": true},
|
||||
{"text": "поставь напоминание через полчаса", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-004", "split_group": "ru-rem-004", "fast_path_resolved": true},
|
||||
{"text": "разбуди меня в 6:30", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-005", "split_group": "ru-rem-005", "tags": ["hard"], "fast_path_resolved": true},
|
||||
{"text": "напомни послезавтра в 12 забрать заказ", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-006", "split_group": "ru-rem-006", "fast_path_resolved": true},
|
||||
{"text": "через два часа напомни проверить бэкап", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-007", "split_group": "ru-rem-007", "tags": ["inverted"], "fast_path_resolved": true},
|
||||
{"text": "напомни в половине восьмого выпить таблетку", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-008", "split_group": "ru-rem-008", "tags": ["hard"], "fast_path_resolved": true},
|
||||
{"text": "разбуди меня полвосьмого", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-009", "split_group": "ru-rem-009", "tags": ["hard"], "fast_path_resolved": true},
|
||||
{"text": "напомни без четверти восемь выходить", "route": "action", "source": "ru_routing_v1", "source_id": "ru-rem-010", "split_group": "ru-rem-010", "tags": ["hard"], "fast_path_resolved": true},
|
||||
{"text": "remind me in 45 minutes to stretch", "route": "action", "source": "ru_routing_v1", "source_id": "en-rem-001", "split_group": "en-rem-001", "fast_path_resolved": true},
|
||||
{"text": "wake me at 6:15", "route": "action", "source": "ru_routing_v1", "source_id": "en-rem-002", "split_group": "en-rem-002", "tags": ["hard"], "fast_path_resolved": true},
|
||||
|
||||
{"text": "перезапусти докер", "route": "action", "source": "ru_routing_v1", "source_id": "ru-act-001", "split_group": "ru-act-001", "tags": ["homelab", "destructive"]},
|
||||
{"text": "выключи свет в спальне", "route": "action", "source": "ru_routing_v1", "source_id": "ru-act-002", "split_group": "ru-act-002"},
|
||||
{"text": "maven, останови бэкап", "route": "action", "source": "ru_routing_v1", "source_id": "ru-act-003", "split_group": "ru-act-003", "tags": ["wake-token"], "fast_path_resolved": true},
|
||||
{"text": "включи вытяжку", "route": "action", "source": "ru_routing_v1", "source_id": "ru-act-004", "split_group": "ru-act-004"},
|
||||
{"text": "запусти бэкап сейчас", "route": "action", "source": "ru_routing_v1", "source_id": "ru-act-005", "split_group": "ru-act-005"},
|
||||
{"text": "закрой жалюзи", "route": "action", "source": "ru_routing_v1", "source_id": "ru-act-006", "split_group": "ru-act-006"},
|
||||
{"text": "закрой задачу купить молоко", "route": "action", "source": "ru_routing_v1", "source_id": "ru-act-020", "split_group": "ru-act-020", "tags": ["task", "status"], "fast_path_resolved": true},
|
||||
{"text": "убери из задач оплатить интернет", "route": "action", "source": "ru_routing_v1", "source_id": "ru-act-021", "split_group": "ru-act-021", "tags": ["task", "status"], "fast_path_resolved": true},
|
||||
{"text": "maven, restart the media server", "route": "action", "source": "ru_routing_v1", "source_id": "en-act-001", "split_group": "en-act-001", "tags": ["wake-token"], "fast_path_resolved": true},
|
||||
{"text": "turn off the kitchen light", "route": "action", "source": "ru_routing_v1", "source_id": "en-act-002", "split_group": "en-act-002"},
|
||||
|
||||
{"text": "заметка: продлить домен в августе", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-note-001", "split_group": "ru-note-001"},
|
||||
{"text": "запиши что кран на кухне снова капает", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-note-002", "split_group": "ru-note-002"},
|
||||
{"text": "заметка про настройку vlan на свитче", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-note-003", "split_group": "ru-note-003", "tags": ["homelab"]},
|
||||
{"text": "запиши идею: гидропоника на балконе", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-note-004", "split_group": "ru-note-004"},
|
||||
{"text": "запиши что сосед просил номер электрика", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-note-005", "split_group": "ru-note-005"},
|
||||
{"text": "добавь в задачи купить молоко", "route": "memory_write", "source": "ru_routing_v1", "source_id": "ru-note-006", "split_group": "ru-note-006", "tags": ["capture"], "fast_path_resolved": true},
|
||||
{"text": "note: rotate the kuma api key", "route": "memory_write", "source": "ru_routing_v1", "source_id": "en-note-001", "split_group": "en-note-001", "tags": ["homelab"]},
|
||||
|
||||
{"text": "сколько сейчас времени в киеве", "route": "system", "source": "ru_routing_v1", "source_id": "ru-sys-001", "split_group": "ru-sys-001", "tags": ["time"], "fast_path_resolved": true},
|
||||
{"text": "какое число завтра", "route": "system", "source": "ru_routing_v1", "source_id": "ru-sys-002", "split_group": "ru-sys-002", "tags": ["date"], "fast_path_resolved": true},
|
||||
{"text": "переходи в тихий режим", "route": "system", "source": "ru_routing_v1", "source_id": "ru-sys-003", "split_group": "ru-sys-003", "tags": ["quiet"]},
|
||||
{"text": "хватит тихого режима", "route": "system", "source": "ru_routing_v1", "source_id": "ru-sys-004", "split_group": "ru-sys-004", "tags": ["quiet", "hard"]},
|
||||
{"text": "какой день недели послезавтра", "route": "system", "source": "ru_routing_v1", "source_id": "ru-sys-005", "split_group": "ru-sys-005", "tags": ["date"], "fast_path_resolved": true},
|
||||
{"text": "what time is it now", "route": "system", "source": "ru_routing_v1", "source_id": "en-sys-001", "split_group": "en-sys-001", "tags": ["time"], "fast_path_resolved": true},
|
||||
{"text": "turn quiet mode back on", "route": "system", "source": "ru_routing_v1", "source_id": "en-sys-002", "split_group": "en-sys-002", "tags": ["quiet"]},
|
||||
|
||||
{"text": "мне немного грустно сегодня", "route": "conversation", "source": "ru_routing_v1", "source_id": "ru-chat-001", "split_group": "ru-chat-001"},
|
||||
{"text": "что думаешь про переезд на другую квартиру", "route": "conversation", "source": "ru_routing_v1", "source_id": "ru-chat-002", "split_group": "ru-chat-002"},
|
||||
{"text": "расскажи анекдот про программистов", "route": "conversation", "source": "ru_routing_v1", "source_id": "ru-chat-003", "split_group": "ru-chat-003"},
|
||||
{"text": "доброе утро", "route": "conversation", "source": "ru_routing_v1", "source_id": "ru-chat-004", "split_group": "ru-chat-004", "tags": ["greeting"]},
|
||||
{"text": "спасибо тебе", "route": "conversation", "source": "ru_routing_v1", "source_id": "ru-chat-005", "split_group": "ru-chat-005"},
|
||||
{"text": "good morning", "route": "conversation", "source": "ru_routing_v1", "source_id": "en-chat-001", "split_group": "en-chat-001", "tags": ["greeting"]},
|
||||
{"text": "i had a rough day", "route": "conversation", "source": "ru_routing_v1", "source_id": "en-chat-002", "split_group": "en-chat-002"},
|
||||
|
||||
{"text": "вода", "route": "uncertain", "source": "ru_routing_v1", "source_id": "amb-001", "split_group": "amb-001", "tags": ["ambiguous"]},
|
||||
{"text": "бэкап", "route": "uncertain", "source": "ru_routing_v1", "source_id": "amb-002", "split_group": "amb-002", "tags": ["ambiguous"]},
|
||||
{"text": "ну это", "route": "uncertain", "source": "ru_routing_v1", "source_id": "amb-003", "split_group": "amb-003", "tags": ["ambiguous", "filler"]},
|
||||
{"text": "сделай это", "route": "uncertain", "source": "ru_routing_v1", "source_id": "amb-004", "split_group": "amb-004", "tags": ["ambiguous", "anaphora"]},
|
||||
{"text": "потом", "route": "uncertain", "source": "ru_routing_v1", "source_id": "amb-005", "split_group": "amb-005", "tags": ["ambiguous", "filler"]},
|
||||
{"text": "the thing from earlier", "route": "uncertain", "source": "ru_routing_v1", "source_id": "amb-006", "split_group": "amb-006", "tags": ["ambiguous", "anaphora"]},
|
||||
{"text": "напомни", "route": "uncertain", "source": "ru_routing_v1", "source_id": "amb-007", "split_group": "amb-007", "tags": ["ambiguous", "reminder"]},
|
||||
{"text": "ну напомни же", "route": "uncertain", "source": "ru_routing_v1", "source_id": "amb-008", "split_group": "amb-008", "tags": ["ambiguous", "reminder", "filler"]},
|
||||
|
||||
{"text": "не выключай свет в спальне", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["negation", "safety"]},
|
||||
{"text": "ни выключай свет в спальне", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["negation", "safety"]},
|
||||
{"text": "ты выключила свет в спальне?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["question", "safety"]},
|
||||
{"text": "ты выключила свет в спальне, верно?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["question", "safety"]},
|
||||
{"text": "он сказал: выключи свет в спальне", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["reported_speech", "safety"]},
|
||||
{"text": "она сказала: выключи свет в спальне", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["reported_speech", "safety"]},
|
||||
{"text": "он сказал «выключи свет в спальне»", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["reported_speech", "safety"]},
|
||||
{"text": "фраза «выключи свет в спальне»", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["quotation", "safety"]},
|
||||
{"text": "«выключи свет в спальне»", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["quotation", "safety"]},
|
||||
{"text": "цитата: \"выключи свет в спальне\"", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["quotation", "safety"]},
|
||||
{"text": "если выключить свет в спальне...", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["hypothetical", "safety"]},
|
||||
{"text": "когда выключить свет в спальне, будет проще", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["hypothetical", "safety"]},
|
||||
{"text": "если бы я сказал: выключи свет в спальне, что бы ты сделала?", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["hypothetical", "safety"]},
|
||||
{"text": "ты можешь выключить свет в спальне?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["capability_question", "safety"]},
|
||||
{"text": "умеешь ли выключить свет в спальне?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["capability_question", "safety"]},
|
||||
{"text": "способен ли ты выключить свет в спальне?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-002", "split_group": "ru-act-002", "tags": ["capability_question", "safety"]},
|
||||
|
||||
{"text": "не перезапусти докер", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-001", "split_group": "ru-act-001", "tags": ["negation", "safety"]},
|
||||
{"text": "ты перезапустила докер?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-001", "split_group": "ru-act-001", "tags": ["question", "safety"]},
|
||||
{"text": "он сказал перезапусти докер", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-001", "split_group": "ru-act-001", "tags": ["reported_speech", "safety"]},
|
||||
{"text": "фраза «перезапусти докер»", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-001", "split_group": "ru-act-001", "tags": ["quotation", "safety"]},
|
||||
{"text": "если перезапустить докер...", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-001", "split_group": "ru-act-001", "tags": ["hypothetical", "safety"]},
|
||||
{"text": "ты можешь перезапустить докер?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-001", "split_group": "ru-act-001", "tags": ["capability_question", "safety"]},
|
||||
|
||||
{"text": "не включи вытяжку", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-004", "split_group": "ru-act-004", "tags": ["negation", "safety"]},
|
||||
{"text": "ты включила вытяжку?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-004", "split_group": "ru-act-004", "tags": ["question", "safety"]},
|
||||
{"text": "он сказал включи вытяжку", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-004", "split_group": "ru-act-004", "tags": ["reported_speech", "safety"]},
|
||||
{"text": "фраза «включи вытяжку»", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-004", "split_group": "ru-act-004", "tags": ["quotation", "safety"]},
|
||||
{"text": "если включить вытяжку...", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-004", "split_group": "ru-act-004", "tags": ["hypothetical", "safety"]},
|
||||
{"text": "ты можешь включить вытяжку?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-004", "split_group": "ru-act-004", "tags": ["capability_question", "safety"]},
|
||||
|
||||
{"text": "не закрывай жалюзи", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-006", "split_group": "ru-act-006", "tags": ["negation", "safety"]},
|
||||
{"text": "ты закрыла жалюзи?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-006", "split_group": "ru-act-006", "tags": ["question", "safety"]},
|
||||
{"text": "он сказал закрой жалюзи", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-006", "split_group": "ru-act-006", "tags": ["reported_speech", "safety"]},
|
||||
{"text": "фраза «закрой жалюзи»", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-006", "split_group": "ru-act-006", "tags": ["quotation", "safety"]},
|
||||
{"text": "если закрыть жалюзи...", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-006", "split_group": "ru-act-006", "tags": ["hypothetical", "safety"]},
|
||||
{"text": "ты можешь закрыть жалюзи?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-006", "split_group": "ru-act-006", "tags": ["capability_question", "safety"]},
|
||||
|
||||
{"text": "не запускай бэкап сейчас", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-005", "split_group": "ru-act-005", "tags": ["negation", "safety"]},
|
||||
{"text": "ты запустила бэкап?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-005", "split_group": "ru-act-005", "tags": ["question", "safety"]},
|
||||
{"text": "он сказал запусти бэкап сейчас", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-005", "split_group": "ru-act-005", "tags": ["reported_speech", "safety"]},
|
||||
{"text": "фраза «запусти бэкап сейчас»", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-005", "split_group": "ru-act-005", "tags": ["quotation", "safety"]},
|
||||
{"text": "если запустить бэкап сейчас...", "route": "uncertain", "source": "contrastive", "source_id": "ru-act-005", "split_group": "ru-act-005", "tags": ["hypothetical", "safety"]},
|
||||
{"text": "ты можешь запустить бэкап сейчас?", "route": "knowledge", "source": "contrastive", "source_id": "ru-act-005", "split_group": "ru-act-005", "tags": ["capability_question", "safety"]}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user