多语言
这里的多语言指的是对话中用户所说的语言,即 用户语言。在启动对话树时将 “{_用户语言_}” 系统信息项及其值作为 “启动对话” 接口的 infoitem_params 参数内容传入(参见 “API”),用来指定对话中用户所说的语言(没有传入的话则缺省是 zh-CN 简体中文)。这里 “{_用户语言_}” 系统信息项的值可以是(即用户语言代码):
- "zh-CN" # 大陆简体中文
- "zh-HK" # 香港繁体中文
- "zh-TW" # 台湾繁体中文
- "en-US" # 美式英语
- "en-GB" # 英式英语
- "pt-PT" # 葡萄牙本土葡语
- "pt-BR" # 巴西葡语
- "es-ES" # 西班牙本土西语
- "es-MX" # 墨西哥西语
- "ja-JP" # 日本日语
- "ru-RU" # 俄罗斯俄语
- "ru-BY" # 白俄罗斯俄语
- "ru-KZ" # 哈萨克斯坦俄语
- "de-DE" # 德国德语
- "de-AT" # 奥地利德语
- "de-CH" # 瑞士德语
- "fr-FR" # 法国法语
- "fr-CA" # 加拿大魁北克法语
- "fr-CH" # 瑞士法语
- "fr-BE" # 比利时法语
- "id-ID" # 印尼语
- "vi-VN" # 越南语
- "th-TH" # 泰语
- "ar-SA" # 阿拉伯语-沙特
- "ar-AE" # 阿拉伯语-阿联酋
- "it-IT" # 意大利语
- "nl-NL" # 荷兰语
- "ko-KR" # 韩语
- "hi-IN" # 印度印地语
- "bn-BD" # 孟加拉国孟加拉语
- "bn-IN" # 印度孟加拉语
- "ur-PK" # 巴基斯坦乌尔都语
- "tr-TR" # 土耳其语
- "pl-PL" # 波兰语
- "ms-MY" # 马来语
- "fil-PH" # 菲律宾语
- "uk-UA" # 乌克兰语
- "fa-IR" # 波斯语
- "he-IL" # 希伯来语
- "ro-RO" # 罗马尼亚语
- "cs-CZ" # 捷克语
- "hu-HU" # 匈牙利语
- "sv-SE" # 瑞典语
- "da-DK" # 丹麦语
- "fi-FI" # 芬兰语
- "nb-NO" # 挪威书面语
在对话树的脚本或代码中,可以使用 ctx.user_lang() 来获取当前的用户语言
对话树
-
在开发对话树时,开发语言是 zh-CN 简体中文(参见 “快速开始”),即系统的错误信息、日志信息,对话树的节点类型、属性名称,对话树的属性内容(如信息项名称、意图描述、提示内容、系统问题、背景信息、信息项选项等)都应是 zh-CN 简体中文,即 zh-CN 简体中文定义的对话树天然就支持多用户语言
-
但也有 例外:在 “文本输出” 中提到了 5 种输出给用户的内容,这些内容如果采用 “直接输出” 表达形式时,系统会将这些用 zh-CN 简体中文描述的内容自动翻译成上面指定的用户语言,但有时翻译的效果没法达到要求,此时可以使用轮询输出的定义方式,同时提供多个语言版本,并在每个语言版本前加上前后都有百分号的上述用户语言的代码
- 比如在 Python 对话树中,原本是:
此时不管是什么用户语言,系统都会自动将 “请问您需要什么帮助?” 翻译过去
welcome_node = chattree.create_node( "#单次交互#", {
...
"系统问题" : "请问您需要什么帮助?",
...
)} - 现在改为:
这样系统就会根据具体的用户语言,选择对应的语言原文进行输出,而非翻译了。这种情况下如果输出内容中含有信息项名称(实际输出时出现信息项名称的地方会被替换为信息项的值,参见 “信息项” 的 “信息项的赋值和使用” 一节),则该信息项名称还应是 zh-CN 简体中文
welcome_node = chattree.create_node( "#单次交互#", {
...
"系统问题" : ["%zh-CN%请问您需要什么帮助?", "%en-US%What help do you need?", "%ru-RU%Какая помощь вам нужна?", "%es-ES%¿Qué ayuda necesitas?"],
...
)} - 上述 5 种输出给用户的内容,如果采用 “提示词” 表达形式(即 “<...>”),则不会出现相关问题,仍然全部使用 zh-CN 简体中文表达即可
- 比如在 Python 对话树中,原本是:
知识库
- 在构建知识库时,缺省也是 zh-CN 简体中文,如:
# 术语概念
## 人工智能
### 定义
人工智能(Artificial Intelligence,AI)是指由计算机系统执行的通常需要人类智能的任务。它包括机器学习、自然语言处理、计算机视觉等多个领域。
### 同义词/近义词
AI、智能计算
### 与相关概念的区别
人工智能不同于传统的软件编程,后者是基于明确的规则和逻辑,而人工智能则通过数据驱动的方式进行学习和决策。
## 机器学习
### 定义
机器学习(Machine Learning)是人工智能的一个子领域,专注于开发算法,使计算机能够从数据中学习和改进性能,而无需明确编程。
### 同义词/近义词
ML、自适应系统
### 与相关概念的区别
机器学习是实现人工智能的一种方法,但并非所有的人工智能系统都依赖于机器学习。 - 但要支持其它用户语言,则需要 在知识库中对每一行都标注出相关的用户语言,即在每行开头加上前后都有百分号的相应用户语言的代码,如(同时支持 zh-CN 简体中文、en-US 美式英语、ru-RU 俄语的知识库):
%zh-CN% # 术语概念
%en-US% # Terminology Concept
%ru-RU% # Термины и понятия
%zh-CN% ## 人工智能
%en-US% ## AI
%ru-RU% ## Искусственный интеллект
%zh-CN% ### 定义
%en-US% ### Definition
%ru-RU% ### Определение
%zh-CN% 人工智能(Artificial Intelligence,AI)是指由计算机系统执行的通常需要人类智能的任务。它包括机器学习、自然语言处理、计算机视觉等多个领域。
%en-US% Artificial Intelligence (AI) refers to tasks performed by computer systems that usually require human intelligence. It includes machine learning, natural language processing, computer vision and other fields.
%ru-RU% Искусственный интеллект(Artificial Intelligence,AI)— это задачи, выполняемые компьютерными системами, которые обычно требуют человеческого интеллекта. Он включает такие области, как машинное обучение, обработка естественного языка, компьютерное зрение и другие направления.
%zh-CN% ### 同义词/近义词
%en-US% ### Synonyms
%ru-RU% ### Синонимы / близкие по значению термины
%zh-CN% AI、智能计算
%en-US% intelligent computing
%ru-RU% AI, интеллектуальные вычисления
%zh-CN% ### 与相关概念的区别
%en-US% ### Differences from Related Concepts
%ru-RU% ### Отличия от связанных понятий
%zh-CN% 人工智能不同于传统的软件编程,后者是基于明确的规则和逻辑,而人工智能则通过数据驱动的方式进行学习和决策。
%en-US% Artificial intelligence is different from traditional software programming, which is based on clear rules and logic, while artificial intelligence learns and makes decisions in a data-driven manner.
%ru-RU% Искусственный интеллект отличается от традиционного программирования: традиционное программирование основано на явно заданных правилах и логике, тогда как искусственный интеллект обучается и принимает решения на основе данных.
%zh-CN% ## 机器学习
%en-US% ## Machine Learning
%ru-RU% ## Машинное обучение
%zh-CN% ### 定义
%en-US% ### Definition
%ru-RU% ### Определение
%zh-CN% 机器学习(Machine Learning)是人工智能的一个子领域,专注于开发算法,使计算机能够从数据中学习和改进性能,而无需明确编程。
%en-US% Machine Learning is a subfield of artificial intelligence that focuses on developing algorithms that enable computers to learn from data and improve performance without having to be explicitly programmed.
%ru-RU% Машинное обучение(Machine Learning)— это подраздел искусственного интеллекта, который сосредоточен на разработке алгоритмов, позволяющих компьютерам обучаться на данных и улучшать свою производительность без явного программирования.
%zh-CN% ### 同义词/近义词
%en-US% ### Synonyms
%ru-RU% ### Синонимы / близкие по значению термины
%zh-CN% ML、自适应系统
%en-US% adaptive systems
%ru-RU% ML, адаптивные системы
%zh-CN% ### 与相关概念的区别
%en-US% ### Differences from Related Concepts
%ru-RU% ### Отличия от связанных понятий
%zh-CN% 机器学习是实现人工智能的一种方法,但并非所有的人工智能系统都依赖于机器学习。
%en-US% Machine learning is a method for achieving artificial intelligence, but not all artificial intelligence systems rely on machine learning.
%ru-RU% Машинное обучение является одним из методов реализации искусственного интеллекта, но не все системы искусственного интеллекта зависят от машинного обучения.
信息项的值
- 信息项的名称是 zh-CN 简体中文,信息项的值则多数情况下会是相应的用户语言
- 但也有例外:
- 如果一个定义 “用户输入” 信息项的节点是 “#单次交互#” 节点,且该节点后继是若干 “#用户意图#” 节点,则该信息项的值就是这些 “#用户意图#” 节点中某一个的 “意图” 属性的值,是 zh-CN 简体中文
- 如果一个 “用户输入” 信息项(“#单次交互#” 或 “#多轮交互#” 节点定义的)具有 “信息项选项”,则该信息项的值(可能)就是这些选项的内容,是 zh-CN 简体中文
- 如果一个 “用户输入” 信息项(“#单次交互#” 或 “#多轮交互#” 节点定义的)具有 “信息项约束” 且该约束中限定了信息项的可选值(是 zh-CN 简体中文),则该信息项的值也是 zh-CN 简体中文