360 Secure SkillHub
360 安全技能中心

Dialogflow Cx Nlu

核心功能为通过REST API或配套Python CLI脚本,管理Google Dialogflow CX的意图(分类用户语句、提取参数)和实体类型(定义结构化数据提取模式),支持创建、列表查询等操作。适用于开发者构建/维护NLU组件,需先配置Google Cloud项目及认证,输入为curl命令或CLI指令,输出为JSON格式结果。

yash-kavaiya
yash-kavaiya
热度 81.03
最近更新 2026-05-11 17:27:54
分类:开发依赖:代码执行 / 第三方 API应用场景:API 集成 / 自动化脚本

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add dialogflow-cx-nlu
Metadata
name
dialogflow-cx-nlu
description
Manage intents and entity types in Google Dialogflow CX via REST API. Use for creating, updating, and managing natural language understanding components. Supports v3beta1 API.

Dialogflow CX NLU

Manage intents and entity types in Google Dialogflow CX via REST API for natural language understanding.

Prerequisites

  • Google Cloud project with Dialogflow CX API enabled
  • Service account or OAuth credentials with Dialogflow API access
  • gcloud CLI authenticated OR bearer token

Authentication

Option 1: gcloud CLI (recommended)

gcloud auth application-default login
TOKEN=$(gcloud auth print-access-token)

Option 2: Service Account

export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"
TOKEN=$(gcloud auth application-default print-access-token)

API Base URL

https://dialogflow.googleapis.com/v3beta1

Regional endpoints available:

  • https://{region}-dialogflow.googleapis.com (e.g., us-central1, europe-west1)

Common Operations

List Intents

curl -X GET \
  "https://dialogflow.googleapis.com/v3beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/${AGENT_ID}/intents" \
  -H "Authorization: Bearer ${TOKEN}"

Create Intent

curl -X POST \
  "https://dialogflow.googleapis.com/v3beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/${AGENT_ID}/intents" \
  -H "Authorization: Bearer ${TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "displayName": "Book Flight",
    "trainingPhrases": [
      {
        "parts": [{"text": "I want to book a flight"}],
        "repeatCount": 1
      }
    ]
  }'

List Entity Types

curl -X GET \
  "https://dialogflow.googleapis.com/v3beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/${AGENT_ID}/entityTypes" \
  -H "Authorization: Bearer ${TOKEN}"

Create Entity Type

curl -X POST \
  "https://dialogflow.googleapis.com/v3beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/${AGENT_ID}/entityTypes" \
  -H "Authorization: Bearer ${TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "displayName": "Cities",
    "kind": "KIND_LIST",
    "entities": [
      {"value": "New York"},
      {"value": "Los Angeles"}
    ]
  }'

Key Resources

Resource Description
Intents Classify user utterances and extract parameters
Entity Types Define structured data extraction patterns

Quick Reference

For detailed API reference:

Scripts

  • scripts/nlu.py — CLI wrapper for intents and entity types operations

Usage

python scripts/nlu.py list-intents --agent AGENT_NAME
python scripts/nlu.py create-intent --agent AGENT_NAME --intent "Book Flight" --phrases "book a flight,I want to fly"
python scripts/nlu.py list-entities --agent AGENT_NAME
python scripts/nlu.py create-entity --agent AGENT_NAME --name "Cities" --values "New York,Los Angeles"

Tips

  • Use training phrases that cover various ways users might express the intent
  • Entity types can be system (built-in) or custom
  • Use KIND_MAP for entities with synonyms, KIND_LIST for simple lists