界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
数据与研究 · SKILL.md

snips-nlu

snips-nlu

【数据与研究】Use Snips NLU for intent parsing, slot filling, dataset/resource preparation, engine API workflows, CLI training/parsing, and troubleshooting.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: snips-nlu description: "Use Snips NLU for intent parsing, slot filling, dataset/resource preparation, engine API workflows, CLI training/parsing, and troubleshooting." disable-model-invocation: true metadata: disco-role: operating license: Apache 2.0

Snips NLU

Use this repo skill when a task involves Snips NLU (snips-nlu / snips_nlu) for classical natural-language understanding: intent classification, slot filling, YAML/JSON dataset authoring, language resources, Python engine APIs, CLI training/parsing, metrics, or persisted NLU engine artifacts.

This skill targets Snips NLU 0.20.2 and model format 0.20.0.

Quick setup and health checks

Install the public package in a compatible Python environment:

pip install snips-nlu
python -m snips_nlu --help
python -m snips_nlu version
python -m snips_nlu model-version

For this old release, prefer Python 3.8 when modern Python versions cannot resolve pinned compiled dependencies. Read references/installation-and-resources.md for install/resource details and references/troubleshooting.md for cross-cutting failures.

Run the bundled read-only environment check when diagnosing setup:

python scripts/check_snips_nlu_environment.py --json

If the workflow needs language resources, download or link them explicitly; helpers in this skill do not perform network downloads silently:

python -m snips_nlu download en
python scripts/check_snips_nlu_environment.py --resource en --json

Route by task

TaskRead
Create or validate a Snips NLU YAML/JSON dataset, inspect entity schemas, convert YAML to JSON, or reason about supported languages/resources.sub-skills/dataset-and-resources/SKILL.md
Use Python APIs such as SnipsNLUEngine, fit, parse, get_intents, get_slots, persist, from_path, configs, random seeds, or result schemas.sub-skills/engine-api/SKILL.md
Build or troubleshoot snips-nlu / python -m snips_nlu commands for generate-dataset, train, parse, download, link, versions, or metrics.sub-skills/cli-workflows/SKILL.md
Decide whether this generated skill is current for a checkout/version.references/repo-provenance.md

Common workflow map

  1. Author data: use dataset-and-resources to write YAML intent/entity files or JSON datasets.
  2. Validate/convert: use bundled dataset scripts before training.
  3. Prepare resources: use CLI download/link commands only when network/resource setup is approved.
  4. Train and parse: use either the Python engine API (engine-api) or CLI command recipes (cli-workflows).
  5. Persist and reload: use engine-api for artifact layout, model-version compatibility, and safe persistence checks.
  6. Evaluate: use cli-workflows for metrics commands and optional snips-nlu-metrics dependency notes.

Important API and CLI anchors

Verified public API signatures include:

  • SnipsNLUEngine(config=None, **shared)
  • SnipsNLUEngine.fit(dataset, force_retrain=True)
  • SnipsNLUEngine.parse(text, intents=None, top_n=None)
  • SnipsNLUEngine.get_intents(text) and get_slots(text, intent)
  • SnipsNLUEngine.persist(path) and SnipsNLUEngine.from_path(path, **shared)
  • Dataset.from_yaml_files(language, filenames)
  • validate_and_format_dataset(dataset)
  • load_resources(name, required_resources=None)

Verified CLI commands include generate-dataset, train, parse, download, download-all-languages, download-entity, download-language-entities, link, cross-val-metrics, train-test-metrics, version, and model-version.

Boundaries and safety

  • Do not treat this as a modern LLM or neural sequence-model training skill; Snips NLU is a classical NLU package for intent/slot extraction.
  • Do not assume package install success on Python 3.11+ for Snips NLU 0.20.x; use compatibility troubleshooting first.
  • Do not run network resource downloads, long metrics sweeps, or training against user data unless the user requested those side effects.
  • Do not rely on original repository docs, tests, or sample files at runtime; this skill bundles the needed references and helper scripts.
我的收藏