[
  {
    "id": "15-clean",
    "backend": "gigaam_large_ctc",
    "enabled": true,
    "profile": "weather",
    "requested_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969"
    },
    "started": "2026-11-09T12:52:26.579Z",
    "finished": "2026-11-09T12:52:28.750Z",
    "applied_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969",
      "applied": true,
      "raw_text": "подготовь прогноз для побережья баренцева моря на вечер сравни исим даблюэфи джиэфэс проверь где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением по данным гриб построй профил температуры над муманском выдели инверсию отметь высоту нулевою изотермо и объясни когда дождь может перейти в мокрый снег на подходах к городу",
      "normalized_text": "подготовь прогноз для побережья баренцева моря на вечер сравни исим даблюэфи джиэфэс проверь где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением по данным гриб построй профил температуры над муманском выдели инверсию отметь высоту нулевою изотермо и объясни когда дождь может перейти в мокрый снег на подходах к городу",
      "offsets": "NFC Unicode code points",
      "replacements": [],
      "postprocess_ms": 0.03965012729167938
    },
    "diagnostic": {
      "text": "подготовь прогноз для побережья баренцева моря на вечер сравни исим даблюэфи джиэфэс проверь где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением по данным гриб построй профил температуры над муманском выдели инверсию отметь высоту нулевою изотермо и объясни когда дождь может перейти в мокрый снег на подходах к городу",
      "decode_ms": 206.8268395960331,
      "queue_ms": 0,
      "backend": "gigaam_large_ctc",
      "model": "GigaAM-Multilingual-Large-CTC",
      "model_revision": "3905cd51c3ed4e88c8edf33f3302969ba480a327",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "language": "multilingual",
        "decoder": "ctc_greedy",
        "punctuation": false,
        "text_normalization": false,
        "vad_filter": false,
        "word_timestamps": false,
        "confidence_available": false,
        "input_format": "float32le",
        "sample_rate": 16000
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.8733216673135757,
        "model_load_ms": 0,
        "model_exchange_ms": 295.80546100623906,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-572763279747d0",
    "session_id": "id-2f67a10c84d465",
    "stream_id": "id-227068ff4d229f",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 190.8999999910593,
        "encoding_reused": false,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 115.40000000596046,
        "bytes": 2001
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 98.5,
        "bytes": 206
      },
      {
        "stage": "ready",
        "setup_ms": 598.7000000029802
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 106.09999999403954,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-572763279747d0"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 302.5,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-572763279747d0"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 665.5999999940395,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 7.699999958276749
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 319.40000000596046,
        "bytes": 268
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 7.250442402437329,
        "lock_wait_ms": 2.548751886934042,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 158.47208676859736,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 109.20000000298023,
        "bytes": 32701
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 97,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 716.3000000119209
      }
    ],
    "model": "gigaam_large_ctc",
    "type": "final",
    "text": "подготовь прогноз для побережья баренцева моря на вечер сравни исим даблюэфи джиэфэс проверь где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением по данным гриб построй профил температуры над муманском выдели инверсию отметь высоту нулевою изотермо и объясни когда дождь может перейти в мокрый снег на подходах к городу",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 206.8268395960331,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "gigaam_large_ctc",
      "worker_queue_ms": 0.8890070021152496,
      "worker_decode_ms": 206.8268395960331,
      "decode_count": 1,
      "prepare_ms": 66.75743614323437,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 8.497646078467369,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.8733216673135757,
      "model_load_ms": 0,
      "model_exchange_ms": 295.80546100623906,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 190.8999999910593,
      "encoding_reused": false,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 9,
    "ref_words": 52,
    "char_edits": 27,
    "ref_chars": 284,
    "wer_pct": 17.307692307692307,
    "cer_pct": 9.507042253521126,
    "model_label": "GigaAM Large CTC",
    "raw_text": "подготовь прогноз для побережья баренцева моря на вечер сравни исим даблюэфи джиэфэс проверь где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением по данным гриб построй профил температуры над муманском выдели инверсию отметь высоту нулевою изотермо и объясни когда дождь может перейти в мокрый снег на подходах к городу",
    "raw_wer_pct": 17.307692307692307,
    "raw_cer_pct": 9.507042253521126,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 3,
    "terms_missing": 6,
    "terms_inserted": 0,
    "postprocess_ms": 0.03965012729167938
  },
  {
    "id": "15-clean",
    "backend": "gigaam_large_ctc",
    "enabled": false,
    "profile": "weather",
    "requested_terms": null,
    "started": "2026-11-09T12:52:28.750Z",
    "finished": "2026-11-09T12:52:30.501Z",
    "applied_terms": {
      "mode": "off",
      "applied": false
    },
    "diagnostic": {
      "text": "подготовь прогноз для побережья баренцева моря на вечер сравни исим даблюэфи джиэфэс проверь где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением по данным гриб построй профил температуры над муманском выдели инверсию отметь высоту нулевою изотермо и объясни когда дождь может перейти в мокрый снег на подходах к городу",
      "decode_ms": 41.76468588411808,
      "queue_ms": 0,
      "backend": "gigaam_large_ctc",
      "model": "GigaAM-Multilingual-Large-CTC",
      "model_revision": "3905cd51c3ed4e88c8edf33f3302969ba480a327",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "language": "multilingual",
        "decoder": "ctc_greedy",
        "punctuation": false,
        "text_normalization": false,
        "vad_filter": false,
        "word_timestamps": false,
        "confidence_available": false,
        "input_format": "float32le",
        "sample_rate": 16000
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.1502707600593567,
        "model_load_ms": 0,
        "model_exchange_ms": 130.45497611165047,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-41f3db5ff0caf4",
    "session_id": "id-193a13e7e97c07",
    "stream_id": "id-9c4da949ceee6d",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 105.09999999403954,
        "bytes": 1854
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 100.79999999701977,
        "bytes": 206
      },
      {
        "stage": "ready",
        "setup_ms": 600.0999999940395
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 103.1000000089407,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-41f3db5ff0caf4"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 238.20000000298023,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-41f3db5ff0caf4"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 599.4000000059605,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 7.799999937415123
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 148.90000000596046,
        "bytes": 269
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.329552503302693,
        "lock_wait_ms": 2.1534140687435865,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 134.49357403442264,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 103.80000001192093,
        "bytes": 29627
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 102.20000000298023,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 551.7000000029802
      }
    ],
    "model": "gigaam_large_ctc",
    "type": "final",
    "text": "подготовь прогноз для побережья баренцева моря на вечер сравни исим даблюэфи джиэфэс проверь где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением по данным гриб построй профил температуры над муманском выдели инверсию отметь высоту нулевою изотермо и объясни когда дождь может перейти в мокрый снег на подходах к городу",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 41.76468588411808,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "gigaam_large_ctc",
      "worker_queue_ms": 0.5830449517816305,
      "worker_decode_ms": 41.76468588411808,
      "decode_count": 1,
      "prepare_ms": 52.34635714441538,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 7.639338029548526,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.1502707600593567,
      "model_load_ms": 0,
      "model_exchange_ms": 130.45497611165047,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 9,
    "ref_words": 52,
    "char_edits": 27,
    "ref_chars": 284,
    "wer_pct": 17.307692307692307,
    "cer_pct": 9.507042253521126,
    "model_label": "GigaAM Large CTC",
    "raw_text": "подготовь прогноз для побережья баренцева моря на вечер сравни исим даблюэфи джиэфэс проверь где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением по данным гриб построй профил температуры над муманском выдели инверсию отметь высоту нулевою изотермо и объясни когда дождь может перейти в мокрый снег на подходах к городу",
    "raw_wer_pct": 17.307692307692307,
    "raw_cer_pct": 9.507042253521126,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 3,
    "terms_missing": 6,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "linto_streaming",
    "enabled": true,
    "profile": "weather",
    "requested_terms": {
      "mode": "hotwords",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969"
    },
    "started": "2026-11-09T12:52:30.602Z",
    "finished": "2026-11-09T12:52:32.926Z",
    "applied_terms": {
      "mode": "hotwords",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969",
      "applied": true,
      "hotwords": "ECMWF, CAPE, Казанью, GFS, ICON, Внуково, изобары, окклюзии, замерзающего дождя, Нижним Новгородом, отражаемость, dBZ, GRIB, градом, Баренцева моря, обледенением, Мурманском, инверсию, нулевой изотермы, Самарой, Саратовом, сдвиг ветра, града, шквала"
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ECMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "backend": "linto_streaming",
      "model": null,
      "model_revision": null,
      "source": {
        "sample_rate": 16000,
        "samples": 420573,
        "channels": 1,
        "format": "pcm16le",
        "wav_sha256": "74814e620c82de6729cf573fccaff4f5a9b6f7bd64cfb7658509a6abcd715025"
      },
      "transport": {
        "file_lock_ms": 4.88937390036881,
        "http_exchange_ms": 719.7956370655447
      },
      "model_input": null,
      "transformations": [
        "linto_internal_preparation_not_observed"
      ],
      "elapsed_ms": 724.7061310335994,
      "parameters": {
        "beam_size": 1,
        "best_of": 1,
        "temperature": 0,
        "condition_on_previous_text": false,
        "no_speech_threshold": null,
        "compression_ratio_threshold": null,
        "hotwords": "ECMWF, CAPE, Казанью, GFS, ICON, Внуково, изобары, окклюзии, замерзающего дождя, Нижним Новгородом, отражаемость, dBZ, GRIB, градом, Баренцева моря, обледенением, Мурманском, инверсию, нулевой изотермы, Самарой, Саратовом, сдвиг ветра, града, шквала",
        "log_prob_threshold": null,
        "vad_filter": false,
        "language": "ru",
        "word_timestamps": false,
        "clip_timestamps": "0",
        "max_initial_timestamp": 10000
      },
      "scores": {
        "avg_logprob": -0.0336372574040694,
        "no_speech_prob": 0,
        "compression_ratio": 1.7723342939481268
      },
      "accepted": null,
      "decode_ms": 314.5777937024832,
      "decode_count": 1,
      "raw_response": {
        "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ECMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
        "language": "ru",
        "confidence-score": 0.97,
        "words": [],
        "recognition_ms": 314.5777937024832,
        "decode_count": 1,
        "evaluation": {
          "avg_logprob": -0.0336372574040694,
          "no_speech_prob": 0,
          "compression_ratio": 1.7723342939481268
        },
        "asr_parameters": {
          "beam_size": 1,
          "best_of": 1,
          "temperature": 0,
          "condition_on_previous_text": false,
          "no_speech_threshold": null,
          "compression_ratio_threshold": null,
          "hotwords": "ECMWF, CAPE, Казанью, GFS, ICON, Внуково, изобары, окклюзии, замерзающего дождя, Нижним Новгородом, отражаемость, dBZ, GRIB, градом, Баренцева моря, обледенением, Мурманском, инверсию, нулевой изотермы, Самарой, Саратовом, сдвиг ветра, града, шквала",
          "log_prob_threshold": null,
          "vad_filter": false,
          "language": "ru",
          "word_timestamps": false,
          "clip_timestamps": "0",
          "max_initial_timestamp": 10000
        }
      }
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-233b95fc2167ba",
    "session_id": "id-40b0ceb90aba92",
    "stream_id": "id-94e86cfc5b4844",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 104.6000000089407,
        "bytes": 1996
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 101.19999998807907,
        "bytes": 205
      },
      {
        "stage": "ready",
        "setup_ms": 594.2999999970198
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 107.29999999701977,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-233b95fc2167ba"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 229.90000000596046,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-233b95fc2167ba"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 591.2999999970198,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 7.599999889731407
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 749.9000000059605,
        "bytes": 267
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.339492276310921,
        "lock_wait_ms": 2.150912070646882,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 139.4135553855449,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 103.20000000298023,
        "bytes": 27618
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 96.09999999403954,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 1138.7999999970198
      }
    ],
    "model": "linto_streaming",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ECMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "decode_ms": 314.5777937024832,
    "decode_count": 1,
    "timings": {
      "backend": "linto_streaming",
      "worker_queue_ms": 0.5202949978411198,
      "worker_decode_ms": 314.5777937024832,
      "decode_count": 1,
      "prepare_ms": 50.64043286256492,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 6.911141099408269,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "file_lock_ms": 4.88937390036881,
      "http_exchange_ms": 719.7956370655447
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 1,
    "ref_words": 52,
    "char_edits": 1,
    "ref_chars": 284,
    "wer_pct": 1.9230769230769231,
    "cer_pct": 0.352112676056338,
    "model_label": "LinTO Whisper",
    "raw_text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ECMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 1.9230769230769231,
    "raw_cer_pct": 0.352112676056338,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 9,
    "terms_missing": 0,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "linto_streaming",
    "enabled": false,
    "profile": "weather",
    "requested_terms": null,
    "started": "2026-11-09T12:52:32.926Z",
    "finished": "2026-11-09T12:52:35.393Z",
    "applied_terms": {
      "mode": "off",
      "applied": false
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ИСМ, WF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотерма и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "backend": "linto_streaming",
      "model": null,
      "model_revision": null,
      "source": {
        "sample_rate": 16000,
        "samples": 420573,
        "channels": 1,
        "format": "pcm16le",
        "wav_sha256": "74814e620c82de6729cf573fccaff4f5a9b6f7bd64cfb7658509a6abcd715025"
      },
      "transport": {
        "file_lock_ms": 7.030972978100181,
        "http_exchange_ms": 674.4505020324141
      },
      "model_input": null,
      "transformations": [
        "linto_internal_preparation_not_observed"
      ],
      "elapsed_ms": 681.515394942835,
      "parameters": {
        "beam_size": 1,
        "best_of": 1,
        "temperature": 0,
        "condition_on_previous_text": false,
        "no_speech_threshold": null,
        "compression_ratio_threshold": null,
        "log_prob_threshold": null,
        "vad_filter": false,
        "language": "ru",
        "word_timestamps": false,
        "clip_timestamps": "0",
        "max_initial_timestamp": 10000
      },
      "scores": {
        "avg_logprob": -0.09874432794239422,
        "no_speech_prob": 0,
        "compression_ratio": 1.7873563218390804
      },
      "accepted": null,
      "decode_ms": 330.52854239940643,
      "decode_count": 1,
      "raw_response": {
        "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ИСМ, WF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотерма и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
        "language": "ru",
        "confidence-score": 0.91,
        "words": [],
        "recognition_ms": 330.52854239940643,
        "decode_count": 1,
        "evaluation": {
          "avg_logprob": -0.09874432794239422,
          "no_speech_prob": 0,
          "compression_ratio": 1.7873563218390804
        },
        "asr_parameters": {
          "beam_size": 1,
          "best_of": 1,
          "temperature": 0,
          "condition_on_previous_text": false,
          "no_speech_threshold": null,
          "compression_ratio_threshold": null,
          "log_prob_threshold": null,
          "vad_filter": false,
          "language": "ru",
          "word_timestamps": false,
          "clip_timestamps": "0",
          "max_initial_timestamp": 10000
        }
      }
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-f333b6cbba7448",
    "session_id": "id-bc4093b2fb64b5",
    "stream_id": "id-135a4385e3b010",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 103.40000000596046,
        "bytes": 1853
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 101.1000000089407,
        "bytes": 205
      },
      {
        "stage": "ready",
        "setup_ms": 711
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 107,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-f333b6cbba7448"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 281,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-f333b6cbba7448"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 642.9000000059605,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 6.0999999940395355
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 712.8999999910593,
        "bytes": 268
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 7.258083205670118,
        "lock_wait_ms": 2.405442763119936,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 146.10778377391398,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 106.59999999403954,
        "bytes": 23461
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 103.70000000298023,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 1112.7000000029802
      }
    ],
    "model": "linto_streaming",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ИСМ, WF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотерма и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "decode_ms": 330.52854239940643,
    "decode_count": 1,
    "timings": {
      "backend": "linto_streaming",
      "worker_queue_ms": 1.0796498972922564,
      "worker_decode_ms": 330.52854239940643,
      "decode_count": 1,
      "prepare_ms": 63.387227011844516,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 9.35227400623262,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "file_lock_ms": 7.030972978100181,
      "http_exchange_ms": 674.4505020324141
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 6,
    "ref_words": 52,
    "char_edits": 10,
    "ref_chars": 284,
    "wer_pct": 11.538461538461538,
    "cer_pct": 3.5211267605633805,
    "model_label": "LinTO Whisper",
    "raw_text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ИСМ, WF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотерма и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 11.538461538461538,
    "raw_cer_pct": 3.5211267605633805,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 5,
    "terms_missing": 4,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "nemotron_asr_06b",
    "enabled": true,
    "profile": "weather",
    "requested_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969"
    },
    "started": "2026-11-09T12:52:35.492Z",
    "finished": "2026-11-09T12:52:37.568Z",
    "applied_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969",
      "applied": true,
      "raw_text": "Подготовь прогноз для побережья Баринцева моря на вечер. Сравни и СМВФ и ГФС проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп построй профиль температуры над Муманском, выделея инверсию отметь высоту нулевой из-за термо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "normalized_text": "Подготовь прогноз для побережья Баринцева моря на вечер. Сравни и СМВФ и ГФС проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп построй профиль температуры над Муманском, выделея инверсию отметь высоту нулевой из-за термо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "offsets": "NFC Unicode code points",
      "replacements": [],
      "postprocess_ms": 0.04681013524532318
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баринцева моря на вечер. Сравни и СМВФ и ГФС проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп построй профиль температуры над Муманском, выделея инверсию отметь высоту нулевой из-за термо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 302.9060959815979,
      "queue_ms": 0,
      "backend": "nemotron_asr_06b",
      "model": "Nemotron 3.5 ASR 0.6B",
      "model_revision": "ea30d66debe3740a08b573244286791d423d6b3e",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "precision": "float16",
        "mel_precision": "float32",
        "sample_rate": 16000,
        "language": "ru-RU",
        "confidence_available": false,
        "model_revision": "ea30d66debe3740a08b573244286791d423d6b3e",
        "nemo_revision": "16b0ff2584c6355c53cbd6c28f0f431a76b24956",
        "decoding": "rnnt_greedy_batch",
        "attention_context": [
          56,
          13
        ],
        "strip_lang_tags": true
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.27838535606861115,
        "model_load_ms": 0,
        "model_exchange_ms": 403.6236028186977,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-0210d966ccf96a",
    "session_id": "id-7ecedcd793188f",
    "stream_id": "id-af4ccb14fd70cd",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 118.70000000298023,
        "bytes": 2001
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 100.3999999910593,
        "bytes": 206
      },
      {
        "stage": "ready",
        "setup_ms": 610.2999999970198
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 103.20000000298023,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-0210d966ccf96a"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 283.5,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-0210d966ccf96a"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 645.4000000059605,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 5.699999913573265
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 422.70000000298023,
        "bytes": 269
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 7.767099654302001,
        "lock_wait_ms": 2.4333044420927763,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 160.50688549876213,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 110.8999999910593,
        "bytes": 34513
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 97.20000000298023,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 820
      }
    ],
    "model": "nemotron_asr_06b",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баринцева моря на вечер. Сравни и СМВФ и ГФС проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп построй профиль температуры над Муманском, выделея инверсию отметь высоту нулевой из-за термо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 302.9060959815979,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "nemotron_asr_06b",
      "worker_queue_ms": 0.5320559721440077,
      "worker_decode_ms": 302.9060959815979,
      "decode_count": 1,
      "prepare_ms": 59.7819141112268,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 6.720908917486668,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.27838535606861115,
      "model_load_ms": 0,
      "model_exchange_ms": 403.6236028186977,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 11,
    "ref_words": 52,
    "char_edits": 21,
    "ref_chars": 284,
    "wer_pct": 21.153846153846153,
    "cer_pct": 7.394366197183099,
    "model_label": "Nemotron 3.5 ASR 0.6B",
    "raw_text": "Подготовь прогноз для побережья Баринцева моря на вечер. Сравни и СМВФ и ГФС проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп построй профиль температуры над Муманском, выделея инверсию отметь высоту нулевой из-за термо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 21.153846153846153,
    "raw_cer_pct": 7.394366197183099,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 2,
    "terms_missing": 7,
    "terms_inserted": 0,
    "postprocess_ms": 0.04681013524532318
  },
  {
    "id": "15-clean",
    "backend": "nemotron_asr_06b",
    "enabled": false,
    "profile": "weather",
    "requested_terms": null,
    "started": "2026-11-09T12:52:37.568Z",
    "finished": "2026-11-09T12:52:39.466Z",
    "applied_terms": {
      "mode": "off",
      "applied": false
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баринцева моря на вечер. Сравни и СМВФ и ГФС проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп построй профиль температуры над Муманском, выделея инверсию отметь высоту нулевой из-за термо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 147.2404059022665,
      "queue_ms": 0,
      "backend": "nemotron_asr_06b",
      "model": "Nemotron 3.5 ASR 0.6B",
      "model_revision": "ea30d66debe3740a08b573244286791d423d6b3e",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "precision": "float16",
        "mel_precision": "float32",
        "sample_rate": 16000,
        "language": "ru-RU",
        "confidence_available": false,
        "model_revision": "ea30d66debe3740a08b573244286791d423d6b3e",
        "nemo_revision": "16b0ff2584c6355c53cbd6c28f0f431a76b24956",
        "decoding": "rnnt_greedy_batch",
        "attention_context": [
          56,
          13
        ],
        "strip_lang_tags": true
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.54892897605896,
        "model_load_ms": 0,
        "model_exchange_ms": 236.7968549951911,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-1e813b91ba0905",
    "session_id": "id-d34888ff5acb36",
    "stream_id": "id-b1305293a6bea8",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 106.70000000298023,
        "bytes": 1854
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 101,
        "bytes": 206
      },
      {
        "stage": "ready",
        "setup_ms": 610.1000000089407
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 110.29999999701977,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-1e813b91ba0905"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 258.20000000298023,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-1e813b91ba0905"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 620.5,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 5.600000023841858
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 259.79999999701977,
        "bytes": 268
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.612894358113408,
        "lock_wait_ms": 2.287538256496191,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 141.16283599287271,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 109.90000000596046,
        "bytes": 31432
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 100.79999999701977,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 666.7999999970198
      }
    ],
    "model": "nemotron_asr_06b",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баринцева моря на вечер. Сравни и СМВФ и ГФС проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп построй профиль температуры над Муманском, выделея инверсию отметь высоту нулевой из-за термо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 147.2404059022665,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "nemotron_asr_06b",
      "worker_queue_ms": 0.5053339991718531,
      "worker_decode_ms": 147.2404059022665,
      "decode_count": 1,
      "prepare_ms": 63.18216398358345,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 9.266173001378775,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.54892897605896,
      "model_load_ms": 0,
      "model_exchange_ms": 236.7968549951911,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 11,
    "ref_words": 52,
    "char_edits": 21,
    "ref_chars": 284,
    "wer_pct": 21.153846153846153,
    "cer_pct": 7.394366197183099,
    "model_label": "Nemotron 3.5 ASR 0.6B",
    "raw_text": "Подготовь прогноз для побережья Баринцева моря на вечер. Сравни и СМВФ и ГФС проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп построй профиль температуры над Муманском, выделея инверсию отметь высоту нулевой из-за термо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 21.153846153846153,
    "raw_cer_pct": 7.394366197183099,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 2,
    "terms_missing": 7,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "nemotron_transcribe_lite",
    "enabled": true,
    "profile": "weather",
    "requested_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969"
    },
    "started": "2026-11-09T12:52:39.566Z",
    "finished": "2026-11-09T12:52:41.485Z",
    "applied_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969",
      "applied": true,
      "raw_text": "Подготовь прогноз для побереже Баренцева моря на вечер. Сравнее и семMWUF и GФС проверь, где проходит фд оклюзии и отметь участки с порывами ветра и облединением. По данном грип, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой иззо терму и объяссни, когда дождь может перейти в моры снег на подходах к городу.",
      "normalized_text": "Подготовь прогноз для побереже Баренцева моря на вечер. Сравнее и семMWUF и GФС проверь, где проходит фд оклюзии и отметь участки с порывами ветра и облединением. По данном грип, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой иззо терму и объяссни, когда дождь может перейти в моры снег на подходах к городу.",
      "offsets": "NFC Unicode code points",
      "replacements": [],
      "postprocess_ms": 0.04628906026482582
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побереже Баренцева моря на вечер. Сравнее и семMWUF и GФС проверь, где проходит фд оклюзии и отметь участки с порывами ветра и облединением. По данном грип, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой иззо терму и объяссни, когда дождь может перейти в моры снег на подходах к городу.",
      "decode_ms": 118.93335916101933,
      "queue_ms": 0,
      "backend": "nemotron_transcribe_lite",
      "model": "Nemotron 3.5 Transcribe Lite",
      "model_revision": "c17667641642c4265ff2b7037dd101b7d4567634",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "precision": "float16",
        "mel_precision": "float32",
        "sample_rate": 16000,
        "language": "multilingual-ctc",
        "confidence_available": false,
        "model_revision": "c17667641642c4265ff2b7037dd101b7d4567634",
        "nemo_revision": "16b0ff2584c6355c53cbd6c28f0f431a76b24956",
        "decoding": "ctc_greedy",
        "experimental": true,
        "recipe_revision": "31ecb73ab8a541001c0952802b478384cf9f0691",
        "encoder_chunk_seconds": 30,
        "attention": "eager_flex"
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.4398450255393982,
        "model_load_ms": 0,
        "model_exchange_ms": 213.08355289511383,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-b9668131f570c7",
    "session_id": "id-0f4d7ea6ac7232",
    "stream_id": "id-a73eb738c91d20",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 118.20000000298023,
        "bytes": 2009
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 98.70000000298023,
        "bytes": 214
      },
      {
        "stage": "ready",
        "setup_ms": 662.5
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 105.90000000596046,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-b9668131f570c7"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 252.5,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-b9668131f570c7"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 613.5999999940395,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 6.300000071525574
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 232.70000000298023,
        "bytes": 268
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.1778174713253975,
        "lock_wait_ms": 2.16412590816617,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 134.68628493137658,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 114.59999999403954,
        "bytes": 35039
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 98.29999999701977,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 642.5
      }
    ],
    "model": "nemotron_transcribe_lite",
    "type": "final",
    "text": "Подготовь прогноз для побереже Баренцева моря на вечер. Сравнее и семMWUF и GФС проверь, где проходит фд оклюзии и отметь участки с порывами ветра и облединением. По данном грип, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой иззо терму и объяссни, когда дождь может перейти в моры снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 118.93335916101933,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "nemotron_transcribe_lite",
      "worker_queue_ms": 0.9032080415636301,
      "worker_decode_ms": 118.93335916101933,
      "decode_count": 1,
      "prepare_ms": 53.27420495450497,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 9.83234797604382,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.4398450255393982,
      "model_load_ms": 0,
      "model_exchange_ms": 213.08355289511383,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 16,
    "ref_words": 52,
    "char_edits": 28,
    "ref_chars": 284,
    "wer_pct": 30.76923076923077,
    "cer_pct": 9.859154929577464,
    "model_label": "Nemotron Transcribe Lite",
    "raw_text": "Подготовь прогноз для побереже Баренцева моря на вечер. Сравнее и семMWUF и GФС проверь, где проходит фд оклюзии и отметь участки с порывами ветра и облединением. По данном грип, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой иззо терму и объяссни, когда дождь может перейти в моры снег на подходах к городу.",
    "raw_wer_pct": 30.76923076923077,
    "raw_cer_pct": 9.859154929577464,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 2,
    "terms_missing": 7,
    "terms_inserted": 0,
    "postprocess_ms": 0.04628906026482582
  },
  {
    "id": "15-clean",
    "backend": "nemotron_transcribe_lite",
    "enabled": false,
    "profile": "weather",
    "requested_terms": null,
    "started": "2026-11-09T12:52:41.485Z",
    "finished": "2026-11-09T12:52:43.318Z",
    "applied_terms": {
      "mode": "off",
      "applied": false
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побереже Баренцева моря на вечер. Сравнее и семMWUF и GФС проверь, где проходит фд оклюзии и отметь участки с порывами ветра и облединением. По данном грип, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой иззо терму и объяссни, когда дождь может перейти в моры снег на подходах к городу.",
      "decode_ms": 102.4580355733633,
      "queue_ms": 0,
      "backend": "nemotron_transcribe_lite",
      "model": "Nemotron 3.5 Transcribe Lite",
      "model_revision": "c17667641642c4265ff2b7037dd101b7d4567634",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "precision": "float16",
        "mel_precision": "float32",
        "sample_rate": 16000,
        "language": "multilingual-ctc",
        "confidence_available": false,
        "model_revision": "c17667641642c4265ff2b7037dd101b7d4567634",
        "nemo_revision": "16b0ff2584c6355c53cbd6c28f0f431a76b24956",
        "decoding": "ctc_greedy",
        "experimental": true,
        "recipe_revision": "31ecb73ab8a541001c0952802b478384cf9f0691",
        "encoder_chunk_seconds": 30,
        "attention": "eager_flex"
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.31165406107902527,
        "model_load_ms": 0,
        "model_exchange_ms": 192.9351119324565,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-76bd72f0eaf839",
    "session_id": "id-5bc09884a0dcf4",
    "stream_id": "id-71fc3ac74e3f12",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 103.5,
        "bytes": 1862
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 100.20000000298023,
        "bytes": 214
      },
      {
        "stage": "ready",
        "setup_ms": 623.7000000029802
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 101.20000000298023,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-76bd72f0eaf839"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 233,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-76bd72f0eaf839"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 595.6000000089407,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 7.299999952316284
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 213,
        "bytes": 267
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 5.920426687225699,
        "lock_wait_ms": 2.004532143473625,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 128.2991438638419,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 110.20000000298023,
        "bytes": 32023
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 100.09999999403954,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 613.6999999880791
      }
    ],
    "model": "nemotron_transcribe_lite",
    "type": "final",
    "text": "Подготовь прогноз для побереже Баренцева моря на вечер. Сравнее и семMWUF и GФС проверь, где проходит фд оклюзии и отметь участки с порывами ветра и облединением. По данном грип, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой иззо терму и объяссни, когда дождь может перейти в моры снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 102.4580355733633,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "nemotron_transcribe_lite",
      "worker_queue_ms": 0.7325271144509315,
      "worker_decode_ms": 102.4580355733633,
      "decode_count": 1,
      "prepare_ms": 56.30289297550917,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 8.551497012376785,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.31165406107902527,
      "model_load_ms": 0,
      "model_exchange_ms": 192.9351119324565,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 16,
    "ref_words": 52,
    "char_edits": 28,
    "ref_chars": 284,
    "wer_pct": 30.76923076923077,
    "cer_pct": 9.859154929577464,
    "model_label": "Nemotron Transcribe Lite",
    "raw_text": "Подготовь прогноз для побереже Баренцева моря на вечер. Сравнее и семMWUF и GФС проверь, где проходит фд оклюзии и отметь участки с порывами ветра и облединением. По данном грип, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой иззо терму и объяссни, когда дождь может перейти в моры снег на подходах к городу.",
    "raw_wer_pct": 30.76923076923077,
    "raw_cer_pct": 9.859154929577464,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 2,
    "terms_missing": 7,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "nemotron_unified_06b",
    "enabled": true,
    "profile": "weather",
    "requested_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969"
    },
    "started": "2026-11-09T12:52:43.419Z",
    "finished": "2026-11-09T12:52:45.508Z",
    "applied_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969",
      "applied": true,
      "raw_text": "Подготовь прогноз для побережья Баренсва море на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп, построй профил температуры над Муманском, выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "normalized_text": "Подготовь прогноз для побережья Баренсва море на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп, построй профил температуры над Муманском, выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "offsets": "NFC Unicode code points",
      "replacements": [],
      "postprocess_ms": 0.07616984657943249
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренсва море на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп, построй профил температуры над Муманском, выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 256.1224829405546,
      "queue_ms": 0,
      "backend": "nemotron_unified_06b",
      "model": "Nemotron Labs Unified ASR 0.6B",
      "model_revision": "023ce907267a09a308a5cb69239447cb3d0c1597",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "precision": "float16",
        "mel_precision": "float32",
        "sample_rate": 16000,
        "language": "ru",
        "confidence_available": false,
        "model_revision": "023ce907267a09a308a5cb69239447cb3d0c1597",
        "nemo_revision": "16b0ff2584c6355c53cbd6c28f0f431a76b24956",
        "decoding": "rnnt_greedy_batch",
        "attention_context": [
          -1,
          -1,
          -1
        ],
        "strip_lang_tags": true
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.31229667365550995,
        "model_load_ms": 0,
        "model_exchange_ms": 343.6139980331063,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-f21de49bad8929",
    "session_id": "id-73c894905d8655",
    "stream_id": "id-8fb19e88b2b11d",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 122.29999999701977,
        "bytes": 2005
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 101.20000000298023,
        "bytes": 210
      },
      {
        "stage": "ready",
        "setup_ms": 638.7999999970198
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 115.29999999701977,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-f21de49bad8929"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 285.90000000596046,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-f21de49bad8929"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 649,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 5.699999958276749
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 360.30000001192093,
        "bytes": 268
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 5.921402480453253,
        "lock_wait_ms": 1.9189855083823204,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 129.0429038926959,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 119.09999999403954,
        "bytes": 34457
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 118.6000000089407,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 801.5
      }
    ],
    "model": "nemotron_unified_06b",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренсва море на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп, построй профил температуры над Муманском, выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 256.1224829405546,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "nemotron_unified_06b",
      "worker_queue_ms": 0.6323351990431547,
      "worker_decode_ms": 256.1224829405546,
      "decode_count": 1,
      "prepare_ms": 58.70266491547227,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 6.778989918529987,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.31229667365550995,
      "model_load_ms": 0,
      "model_exchange_ms": 343.6139980331063,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 8,
    "ref_words": 52,
    "char_edits": 12,
    "ref_chars": 284,
    "wer_pct": 15.384615384615385,
    "cer_pct": 4.225352112676056,
    "model_label": "Nemotron Labs Unified",
    "raw_text": "Подготовь прогноз для побережья Баренсва море на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп, построй профил температуры над Муманском, выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 15.384615384615385,
    "raw_cer_pct": 4.225352112676056,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 4,
    "terms_missing": 5,
    "terms_inserted": 0,
    "postprocess_ms": 0.07616984657943249
  },
  {
    "id": "15-clean",
    "backend": "nemotron_unified_06b",
    "enabled": false,
    "profile": "weather",
    "requested_terms": null,
    "started": "2026-11-09T12:52:45.508Z",
    "finished": "2026-11-09T12:52:47.350Z",
    "applied_terms": {
      "mode": "off",
      "applied": false
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренсва море на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп, построй профил температуры над Муманском, выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 124.14767779409885,
      "queue_ms": 0,
      "backend": "nemotron_unified_06b",
      "model": "Nemotron Labs Unified ASR 0.6B",
      "model_revision": "023ce907267a09a308a5cb69239447cb3d0c1597",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "precision": "float16",
        "mel_precision": "float32",
        "sample_rate": 16000,
        "language": "ru",
        "confidence_available": false,
        "model_revision": "023ce907267a09a308a5cb69239447cb3d0c1597",
        "nemo_revision": "16b0ff2584c6355c53cbd6c28f0f431a76b24956",
        "decoding": "rnnt_greedy_batch",
        "attention_context": [
          -1,
          -1,
          -1
        ],
        "strip_lang_tags": true
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.3208480775356293,
        "model_load_ms": 0,
        "model_exchange_ms": 206.44347299821675,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-6a58ed08d33bd7",
    "session_id": "id-faafb7f647872a",
    "stream_id": "id-dbf175f7027ed4",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 105.59999999403954,
        "bytes": 1858
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 96.59999999403954,
        "bytes": 210
      },
      {
        "stage": "ready",
        "setup_ms": 593.0999999940395
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 103.40000000596046,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-6a58ed08d33bd7"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 260.09999999403954,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-6a58ed08d33bd7"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 622.2999999970198,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 7.199999898672104
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 224.6000000089407,
        "bytes": 269
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.963446969166398,
        "lock_wait_ms": 2.1829302422702312,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 145.41051094420254,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 112.70000000298023,
        "bytes": 31455
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 100.3999999910593,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 626.6000000089407
      }
    ],
    "model": "nemotron_unified_06b",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренсва море на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп, построй профил температуры над Муманском, выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 124.14767779409885,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "nemotron_unified_06b",
      "worker_queue_ms": 0.7103360258042812,
      "worker_decode_ms": 124.14767779409885,
      "decode_count": 1,
      "prepare_ms": 58.96379612386227,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 7.582508958876133,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.3208480775356293,
      "model_load_ms": 0,
      "model_exchange_ms": 206.44347299821675,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 8,
    "ref_words": 52,
    "char_edits": 12,
    "ref_chars": 284,
    "wer_pct": 15.384615384615385,
    "cer_pct": 4.225352112676056,
    "model_label": "Nemotron Labs Unified",
    "raw_text": "Подготовь прогноз для побережья Баренсва море на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт оклюзии и отметь участки с порывами ветра и обледенением. По данным грипп, построй профил температуры над Муманском, выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 15.384615384615385,
    "raw_cer_pct": 4.225352112676056,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 4,
    "terms_missing": 5,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "streaming_worker",
    "enabled": true,
    "profile": "weather",
    "requested_terms": {
      "mode": "hotwords",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969"
    },
    "started": "2026-11-09T12:52:47.449Z",
    "finished": "2026-11-09T12:52:49.442Z",
    "applied_terms": {
      "mode": "hotwords",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969",
      "applied": true,
      "hotwords": "ECMWF, CAPE, Казанью, GFS, ICON, Внуково, изобары, окклюзии, замерзающего дождя, Нижним Новгородом, отражаемость, dBZ, GRIB, градом, Баренцева моря, обледенением, Мурманском, инверсию, нулевой изотермы, Самарой, Саратовом, сдвиг ветра, града, шквала"
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ECMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 290.06013087928295,
      "queue_ms": 0,
      "backend": "streaming_worker",
      "model": "large-v3-turbo",
      "model_revision": null,
      "scores": {
        "avg_logprob": -0.03299045924152901,
        "no_speech_prob": 0,
        "compression_ratio": 1.7723342939481268
      },
      "parameters": {
        "language": "ru",
        "beam_size": 1,
        "best_of": 1,
        "temperature": 0,
        "condition_on_previous_text": false,
        "word_timestamps": false,
        "vad_filter": false,
        "no_speech_threshold": null,
        "log_prob_threshold": null,
        "compression_ratio_threshold": null,
        "hotwords": "ECMWF, CAPE, Казанью, GFS, ICON, Внуково, изобары, окклюзии, замерзающего дождя, Нижним Новгородом, отражаемость, dBZ, GRIB, градом, Баренцева моря, обледенением, Мурманском, инверсию, нулевой изотермы, Самарой, Саратовом, сдвиг ветра, града, шквала",
        "hotwords_tokens": 117
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.27273595333099365,
        "model_load_ms": 0,
        "model_exchange_ms": 365.55640306323767,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-239ec13645350b",
    "session_id": "id-3023fcc79abc48",
    "stream_id": "id-23d3b15d129645",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 119.70000000298023,
        "bytes": 1997
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 98.90000000596046,
        "bytes": 206
      },
      {
        "stage": "ready",
        "setup_ms": 610.5
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 101.29999999701977,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-239ec13645350b"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 230.79999999701977,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-239ec13645350b"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 593.2999999970198,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 5.60000005364418
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 386.40000000596046,
        "bytes": 266
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 5.932998843491077,
        "lock_wait_ms": 2.111664041876793,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 129.201783798635,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 111.29999999701977,
        "bytes": 33487
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 102.5,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 789.4000000059605
      }
    ],
    "model": "streaming_worker",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ECMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 290.06013087928295,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "streaming_worker",
      "worker_queue_ms": 0.5783250089734793,
      "worker_decode_ms": 290.06013087928295,
      "decode_count": 1,
      "prepare_ms": 55.92246796004474,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 7.408256875351071,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.27273595333099365,
      "model_load_ms": 0,
      "model_exchange_ms": 365.55640306323767,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 1,
    "ref_words": 52,
    "char_edits": 1,
    "ref_chars": 284,
    "wer_pct": 1.9230769230769231,
    "cer_pct": 0.352112676056338,
    "model_label": "Whisper Turbo",
    "raw_text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ECMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 1.9230769230769231,
    "raw_cer_pct": 0.352112676056338,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 9,
    "terms_missing": 0,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "streaming_worker",
    "enabled": false,
    "profile": "weather",
    "requested_terms": null,
    "started": "2026-11-09T12:52:49.442Z",
    "finished": "2026-11-09T12:52:51.456Z",
    "applied_terms": {
      "mode": "off",
      "applied": false
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ИСИМ, WF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотерма и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 307.16979689896107,
      "queue_ms": 0,
      "backend": "streaming_worker",
      "model": "large-v3-turbo",
      "model_revision": null,
      "scores": {
        "avg_logprob": -0.09881270327130143,
        "no_speech_prob": 0,
        "compression_ratio": 1.7879656160458453
      },
      "parameters": {
        "language": "ru",
        "beam_size": 1,
        "best_of": 1,
        "temperature": 0,
        "condition_on_previous_text": false,
        "word_timestamps": false,
        "vad_filter": false,
        "no_speech_threshold": null,
        "log_prob_threshold": null,
        "compression_ratio_threshold": null
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.32784976065158844,
        "model_load_ms": 0,
        "model_exchange_ms": 386.0091860406101,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-28f8a9af113d1d",
    "session_id": "id-bfa9168bcf7790",
    "stream_id": "id-5037d957f7dd77",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 114.30000001192093,
        "bytes": 1854
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 105.1000000089407,
        "bytes": 206
      },
      {
        "stage": "ready",
        "setup_ms": 611.7000000029802
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 101.59999999403954,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-28f8a9af113d1d"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 237.1000000089407,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-28f8a9af113d1d"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 601.1000000089407,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 7.799999967217445
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 406.69999998807907,
        "bytes": 268
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.103143561631441,
        "lock_wait_ms": 2.0172297954559326,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 131.5101736690849,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 104.09999999403954,
        "bytes": 29611
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 98.19999998807907,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 801.2999999970198
      }
    ],
    "model": "streaming_worker",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ИСИМ, WF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотерма и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 307.16979689896107,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "streaming_worker",
      "worker_queue_ms": 0.6333838682621717,
      "worker_decode_ms": 307.16979689896107,
      "decode_count": 1,
      "prepare_ms": 57.90998809970915,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 8.285164134576917,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.32784976065158844,
      "model_load_ms": 0,
      "model_exchange_ms": 386.0091860406101,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 6,
    "ref_words": 52,
    "char_edits": 11,
    "ref_chars": 284,
    "wer_pct": 11.538461538461538,
    "cer_pct": 3.8732394366197185,
    "model_label": "Whisper Turbo",
    "raw_text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни ИСИМ, WF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотерма и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 11.538461538461538,
    "raw_cer_pct": 3.8732394366197185,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 5,
    "terms_missing": 4,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "streaming_worker_russian",
    "enabled": true,
    "profile": "weather",
    "requested_terms": {
      "mode": "hotwords",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969"
    },
    "started": "2026-11-09T12:52:51.555Z",
    "finished": "2026-11-09T12:52:54.364Z",
    "applied_terms": {
      "mode": "hotwords",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969",
      "applied": true,
      "hotwords": "ECMWF, CAPE, Казанью, GFS, ICON, Внуково, изобары, окклюзии, замерзающего дождя, Нижним Новгородом, отражаемость, dBZ, GRIB, градом, Баренцева моря, обледенением, Мурманском, инверсию, нулевой изотермы, Самарой, Саратовом, сдвиг ветра, града, шквала"
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профиль температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 1086.9107116013765,
      "queue_ms": 0,
      "backend": "streaming_worker_russian",
      "model": "large-v3-russian",
      "model_revision": null,
      "scores": {
        "avg_logprob": -0.06641150542667934,
        "no_speech_prob": 0.0004878044128417969,
        "compression_ratio": 1.7838616714697406
      },
      "parameters": {
        "language": "ru",
        "beam_size": 1,
        "best_of": 1,
        "temperature": 0,
        "condition_on_previous_text": false,
        "word_timestamps": false,
        "vad_filter": false,
        "no_speech_threshold": null,
        "log_prob_threshold": null,
        "compression_ratio_threshold": null,
        "hotwords": "ECMWF, CAPE, Казанью, GFS, ICON, Внуково, изобары, окклюзии, замерзающего дождя, Нижним Новгородом, отражаемость, dBZ, GRIB, градом, Баренцева моря, обледенением, Мурманском, инверсию, нулевой изотермы, Самарой, Саратовом, сдвиг ветра, града, шквала",
        "hotwords_tokens": 117
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.33514946699142456,
        "model_load_ms": 0,
        "model_exchange_ms": 1171.5549598447978,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-d700532ad0b432",
    "session_id": "id-424fc4543914b2",
    "stream_id": "id-ec2e629b5aab1e",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 124.79999999701977,
        "bytes": 2005
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 98.69999998807907,
        "bytes": 214
      },
      {
        "stage": "ready",
        "setup_ms": 611.8999999910593
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 102.29999999701977,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-d700532ad0b432"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 241,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-d700532ad0b432"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 603.8000000119209,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 7.600000023841858
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 1192.199999988079,
        "bytes": 266
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.19392772205174,
        "lock_wait_ms": 2.183042699471116,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 134.3571823090315,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 110.29999999701977,
        "bytes": 33707
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 101.09999999403954,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 1593.2999999970198
      }
    ],
    "model": "streaming_worker_russian",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профиль температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 1086.9107116013765,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "streaming_worker_russian",
      "worker_queue_ms": 0.5453461781144142,
      "worker_decode_ms": 1086.9107116013765,
      "decode_count": 1,
      "prepare_ms": 51.656680880114436,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 8.48424481227994,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.33514946699142456,
      "model_load_ms": 0,
      "model_exchange_ms": 1171.5549598447978,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 2,
    "ref_words": 52,
    "char_edits": 1,
    "ref_chars": 284,
    "wer_pct": 3.8461538461538463,
    "cer_pct": 0.352112676056338,
    "model_label": "Whisper Russian",
    "raw_text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни и CMWF и GFS, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным GRIB, построй профиль температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 3.8461538461538463,
    "raw_cer_pct": 0.352112676056338,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 8,
    "terms_missing": 1,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "streaming_worker_russian",
    "enabled": false,
    "profile": "weather",
    "requested_terms": null,
    "started": "2026-11-09T12:52:54.364Z",
    "finished": "2026-11-09T12:52:57.219Z",
    "applied_terms": {
      "mode": "off",
      "applied": false
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни и СМВФ и ГФС, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 1107.081901282072,
      "queue_ms": 0,
      "backend": "streaming_worker_russian",
      "model": "large-v3-russian",
      "model_revision": null,
      "scores": {
        "avg_logprob": -0.1031392894837321,
        "no_speech_prob": 2.753734588623047e-05,
        "compression_ratio": 1.8304093567251463
      },
      "parameters": {
        "language": "ru",
        "beam_size": 1,
        "best_of": 1,
        "temperature": 0,
        "condition_on_previous_text": false,
        "word_timestamps": false,
        "vad_filter": false,
        "no_speech_threshold": null,
        "log_prob_threshold": null,
        "compression_ratio_threshold": null
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.314248725771904,
        "model_load_ms": 0,
        "model_exchange_ms": 1183.4737779572606,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-200c5492f24e1b",
    "session_id": "id-e2d0194bcfbcfe",
    "stream_id": "id-65391febd4fbb6",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 107.29999999701977,
        "bytes": 1862
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 107.29999999701977,
        "bytes": 214
      },
      {
        "stage": "ready",
        "setup_ms": 645.2000000029802
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 106,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-200c5492f24e1b"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 244.90000000596046,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-200c5492f24e1b"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 608.4000000059605,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 7.100000098347664
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 1205,
        "bytes": 270
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 7.0222471840679646,
        "lock_wait_ms": 2.2650244645774364,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 136.87825645320117,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 104.8999999910593,
        "bytes": 29796
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 101.40000000596046,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 1601.2999999970198
      }
    ],
    "model": "streaming_worker_russian",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни и СМВФ и ГФС, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 1107.081901282072,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "streaming_worker_russian",
      "worker_queue_ms": 0.7630570326000452,
      "worker_decode_ms": 1107.081901282072,
      "decode_count": 1,
      "prepare_ms": 55.824587820097804,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 6.50266814045608,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.314248725771904,
      "model_load_ms": 0,
      "model_exchange_ms": 1183.4737779572606,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 6,
    "ref_words": 52,
    "char_edits": 14,
    "ref_chars": 284,
    "wer_pct": 11.538461538461538,
    "cer_pct": 4.929577464788732,
    "model_label": "Whisper Russian",
    "raw_text": "Подготовь прогноз для побережья Баренцева моря на вечер. Сравни и СМВФ и ГФС, проверь, где проходит фронт окклюзии, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Муманском. Выдели инверсию, отметь высоту нулевой изотермы и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 11.538461538461538,
    "raw_cer_pct": 4.929577464788732,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 5,
    "terms_missing": 4,
    "terms_inserted": 0,
    "postprocess_ms": null
  },
  {
    "id": "15-clean",
    "backend": "gigaam_v3",
    "enabled": true,
    "profile": "weather",
    "requested_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969"
    },
    "started": "2026-11-09T12:52:57.325Z",
    "finished": "2026-11-09T12:52:59.382Z",
    "applied_terms": {
      "mode": "replacements",
      "profile": "weather",
      "version": "technical-v1",
      "sha256": "2a8385d7427e41a6dea672fe5e31329ec8a0e70958b5a35a55bb999b28ba1969",
      "applied": true,
      "raw_text": "Подготовь прогноз для побережья Баренцево моря на вечер. Сравни I SMWF и GFS, проверь, где проходит фронт оклюзи, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "normalized_text": "Подготовь прогноз для побережья Баренцево моря на вечер. Сравни I SMWF и GFS, проверь, где проходит фронт оклюзи, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "offsets": "NFC Unicode code points",
      "replacements": [],
      "postprocess_ms": 0.040479935705661774
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренцево моря на вечер. Сравни I SMWF и GFS, проверь, где проходит фронт оклюзи, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 300.0915627926588,
      "queue_ms": 0,
      "backend": "gigaam_v3",
      "model": "GigaAM-v3-e2e-rnnt",
      "model_revision": "7655ad717f8122257385bb4b2f373db3697e8680",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "language": "ru",
        "decoder": "rnnt_greedy",
        "punctuation": true,
        "text_normalization": true,
        "vad_filter": false,
        "word_timestamps": false,
        "confidence_available": false,
        "input_format": "float32le",
        "sample_rate": 16000,
        "max_symbols_per_step": 10
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.3374330699443817,
        "model_load_ms": 0,
        "model_exchange_ms": 374.0607099607587,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-c96f949583d217",
    "session_id": "id-f544af08433280",
    "stream_id": "id-9a374be0532d49",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 126,
        "bytes": 1994
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 101.5,
        "bytes": 199
      },
      {
        "stage": "ready",
        "setup_ms": 620.4000000059605
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 106.3999999910593,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-c96f949583d217"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 279.40000000596046,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-c96f949583d217"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 640.7999999970198,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 5.300000041723251
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 392.79999999701977,
        "bytes": 268
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.868154741823673,
        "lock_wait_ms": 2.349101472645998,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 148.22801854461432,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 112.09999999403954,
        "bytes": 32519
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 98.30000001192093,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 796.7000000029802
      }
    ],
    "model": "gigaam_v3",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренцево моря на вечер. Сравни I SMWF и GFS, проверь, где проходит фронт оклюзи, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 300.0915627926588,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "gigaam_v3",
      "worker_queue_ms": 1.0788398794829845,
      "worker_decode_ms": 300.0915627926588,
      "decode_count": 1,
      "prepare_ms": 60.73697307147086,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 10.525434045121074,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.3374330699443817,
      "model_load_ms": 0,
      "model_exchange_ms": 374.0607099607587,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 7,
    "ref_words": 52,
    "char_edits": 11,
    "ref_chars": 284,
    "wer_pct": 13.461538461538462,
    "cer_pct": 3.8732394366197185,
    "model_label": "GigaAM v3 RNNT",
    "raw_text": "Подготовь прогноз для побережья Баренцево моря на вечер. Сравни I SMWF и GFS, проверь, где проходит фронт оклюзи, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 13.461538461538462,
    "raw_cer_pct": 3.8732394366197185,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 4,
    "terms_missing": 5,
    "terms_inserted": 0,
    "postprocess_ms": 0.040479935705661774
  },
  {
    "id": "15-clean",
    "backend": "gigaam_v3",
    "enabled": false,
    "profile": "weather",
    "requested_terms": null,
    "started": "2026-11-09T12:52:59.382Z",
    "finished": "2026-11-09T12:53:01.291Z",
    "applied_terms": {
      "mode": "off",
      "applied": false
    },
    "diagnostic": {
      "text": "Подготовь прогноз для побережья Баренцево моря на вечер. Сравни I SMWF и GFS, проверь, где проходит фронт оклюзи, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
      "decode_ms": 134.6920132637024,
      "queue_ms": 0,
      "backend": "gigaam_v3",
      "model": "GigaAM-v3-e2e-rnnt",
      "model_revision": "7655ad717f8122257385bb4b2f373db3697e8680",
      "scores": {
        "avg_logprob": null,
        "no_speech_prob": null,
        "compression_ratio": null
      },
      "parameters": {
        "language": "ru",
        "decoder": "rnnt_greedy",
        "punctuation": true,
        "text_normalization": true,
        "vad_filter": false,
        "word_timestamps": false,
        "confidence_available": false,
        "input_format": "float32le",
        "sample_rate": 16000,
        "max_symbols_per_step": 10
      },
      "score_filtering": false,
      "decode_count": 1,
      "model_input": {
        "sample_rate": 16000,
        "format": "float32le",
        "samples": 420573,
        "sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389"
      },
      "transport": {
        "worker_preparation_ms": 0.31813420355319977,
        "model_load_ms": 0,
        "model_exchange_ms": 286.5854890551418,
        "upload_rpc_count": 1,
        "upload_packets": 9,
        "upload_pcm_bytes": 841146
      },
      "words": []
    },
    "source": {
      "start_sample": 0,
      "end_sample": 1261719,
      "last_speech_sample": 1261719,
      "reason": "selection",
      "sample_rate": 48000,
      "format": "pcm16le",
      "channels": 1,
      "pcm_sha256": "c0a54dc0633880478aba01c14507a95c6ebdc68cfdd959c9937aafb8dd8590ed",
      "samples": 1261719
    },
    "phrase_id": "id-cac5a1f5a30f62",
    "session_id": "id-48132b1f831b4e",
    "stream_id": "id-eabbbc7f989f7f",
    "transport": [
      {
        "stage": "segmented",
        "segmentation_reused": false
      },
      {
        "stage": "encoded",
        "codec": "opus",
        "encoding_ms": 0,
        "encoding_reused": true,
        "pcm_bytes": 841146,
        "wire_bytes": 122346,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 108.70000000298023,
        "bytes": 1847
      },
      {
        "stage": "control_reply",
        "command": "start",
        "elapsed_ms": 100.8999999910593,
        "bytes": 199
      },
      {
        "stage": "ready",
        "setup_ms": 588.5
      },
      {
        "stage": "feed_started"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 106.6000000089407,
        "bytes": 132
      },
      {
        "stage": "phrase_submitted",
        "phrase_id": "id-cac5a1f5a30f62"
      },
      {
        "stage": "control_reply",
        "command": "phrase",
        "elapsed_ms": 245.5,
        "bytes": 135
      },
      {
        "stage": "phrase_acknowledged",
        "phrase_id": "id-cac5a1f5a30f62"
      },
      {
        "stage": "pcm_sent",
        "feed_ms": 609,
        "samples": 420573,
        "sample_rate": 16000,
        "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
        "wire_bytes": 122346,
        "codec": "opus",
        "packets": 1315,
        "packet_publish_ms": 6.700000122189522
      },
      {
        "stage": "control_reply",
        "command": "end",
        "elapsed_ms": 315,
        "bytes": 268
      },
      {
        "stage": "ingress_summary",
        "feed_resample_ms": 6.485626334324479,
        "lock_wait_ms": 2.181901363655925,
        "pcm_bytes": 2523438,
        "wire_bytes": 122346,
        "opus_decode_ms": 141.03456237353384,
        "packets": 1315
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 104.8999999910593,
        "bytes": 29514
      },
      {
        "stage": "control_reply",
        "command": "audio_replay",
        "elapsed_ms": 101.20000000298023,
        "bytes": 37
      },
      {
        "stage": "released",
        "end_ms": 710.7000000029802
      }
    ],
    "model": "gigaam_v3",
    "type": "final",
    "text": "Подготовь прогноз для побережья Баренцево моря на вечер. Сравни I SMWF и GFS, проверь, где проходит фронт оклюзи, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "code": null,
    "pcm_sha256": "e611e3b101e21d7e4ff6b0ffde40ee7a7e6a2ffc932a76cfc03c9fe268d85938",
    "input_sha256": "afad61a8c709865448692c7dc8fb5e0fa91208a20f0aaf0811f853c7613fe389",
    "decode_ms": 134.6920132637024,
    "model_load_ms": 0,
    "decode_count": 1,
    "timings": {
      "backend": "gigaam_v3",
      "worker_queue_ms": 1.1887401342391968,
      "worker_decode_ms": 134.6920132637024,
      "decode_count": 1,
      "prepare_ms": 59.73389302380383,
      "processed_audio_seconds": 26.2858125,
      "source_upload_ms": 11.8412459269166,
      "collection_ms": null,
      "silence_ms": null,
      "vad_ms": null,
      "worker_preparation_ms": 0.31813420355319977,
      "model_load_ms": 0,
      "model_exchange_ms": 286.5854890551418,
      "upload_rpc_count": 1,
      "upload_packets": 9,
      "upload_pcm_bytes": 841146
    },
    "encoded": {
      "type": "compare_client",
      "stage": "encoded",
      "codec": "opus",
      "encoding_ms": 0,
      "encoding_reused": true,
      "pcm_bytes": 841146,
      "wire_bytes": 122346,
      "packets": 1315
    },
    "attempt": 1,
    "word_edits": 7,
    "ref_words": 52,
    "char_edits": 11,
    "ref_chars": 284,
    "wer_pct": 13.461538461538462,
    "cer_pct": 3.8732394366197185,
    "model_label": "GigaAM v3 RNNT",
    "raw_text": "Подготовь прогноз для побережья Баренцево моря на вечер. Сравни I SMWF и GFS, проверь, где проходит фронт оклюзи, и отметь участки с порывами ветра и обледенением. По данным ГРИП, построй профил температуры над Мурманском. Выдели инверсию, отметь высоту нулевой изотермо и объясни, когда дождь может перейти в мокрый снег на подходах к городу.",
    "raw_wer_pct": 13.461538461538462,
    "raw_cer_pct": 3.8732394366197185,
    "length": "long",
    "noise": "clean",
    "seconds": 26.2858125,
    "domain": "weather",
    "terms_total": 9,
    "terms_hit": 4,
    "terms_missing": 5,
    "terms_inserted": 0,
    "postprocess_ms": null
  }
]
