Docs » Conceptual overview
Conceptual overview 概念概述
翻译自对话系统Deep Learning lab
Our goal is to enable AI-application developers and researchers with:
我们的目标是使 ai 应用程序开发人员和研究人员能够:
-
set of pre-trained NLP models, pre-defined dialog system components (ML/DL/Rule-based) and pipeline templates;
-
设置预先训练的 NLP 模型集、预先定义的对话系统组件(ml / dl / rule-based)和管道模板;
-
a framework for implementing and testing their own dialog models;
-
实现和测试自己的对话模型的框架;
-
tools for application integration with adjacent infrastructure (messengers, helpdesk software etc.);
-
与邻近的基础设施(信使、求助台软件等)整合应用的工具;
-
benchmarking environment for conversational models and uniform access to relevant datasets.
-
会话模型的基准测试环境和相关数据集的统一访问。
Key Concepts 关键概念
-
Agent is a conversational agent communicating with users in natural language (text).
-
Agent 是用自然语言(文本)与用户进行通信的会话代理。
-
Skill fulfills user’s goal in some domain. Typically, this is accomplished by presenting information or completing transaction (e.g. answer question by FAQ, booking tickets etc.). However, for some tasks a success of interaction is defined as continuous engagement (e.g. chit-chat).
-
技能完成用户在某些领域的目标。 通常,这是通过展示信息或完成交易来实现的(例如通过回答常见问题,预订票等)。然而,对于某些任务来说,一次成功的交互被定义为持续的参与(例如闲聊)。
-
Model is any NLP model that doesn’t necessarily communicates with user in natural language.
-
模型是任何的自然语言处理模型,不一定用自然语言与用户通信。
-
Component is a reusable functional part of Model or Skill.
-
组件是模型或技能中可重用的功能部分。
-
Rule-based Models cannot be trained.
-
基于规则的模型是不能训练的。
-
Machine Learning Models can be trained only stand alone.
-
机器学习模型只能单独训练。
-
Deep Learning Models can be trained independently and in an end-to-end mode being joined in a chain.
-
深度学习模型可以独立地训练,并以端到端的方式加入到一个链中。
-
Skill Manager performs selection of the Skill to generate response.
-
技能管理执行技能的选择来生成响应。
-
Chainer builds an agent/model pipeline from heterogeneous components (Rule-based/ML/DL). It allows to train and infer models in a pipeline as a whole.
-
Chainer深度学习框架从异构组件构建一个代理/模型管道(基于规则的/ML机器学习/DL深度学习)。它允许对整个管道中的模型进行训练和推断。
The smallest building block of the library is Component. Component stands for any kind of function in an NLP pipeline. It can be implemented as a neural network, a non-neural ML model or a rule-based system.
库中最小的构建块是 Component-组件。 Component代表 NLP 管道中的任何类型的函数。 它可以实现为一个神经网络、一个非神经网络的机器学习模型或一个基于规则的系统。
Components can be joined into a Model or a Skill. Model solves a larger NLP task compared to Component. However, in terms of implementation Modelss are not different from Components. The difference of a Skill from a Model is that its input and output should both be strings. Therefore, Skills are usually associated with dialogue tasks.
组件Component可以连接到模型Model或技能Skill中。 与组件相比,模型解决了更大的 NLP任务。 但是,就实现而言,模型与组件没有什么不同。 Skill 和 Model 的区别在于,它的输入和输出都应该是字符串。 因此,技能通常与对话任务有关。
Agent is supposed to be a multi-purpose dialogue system that comprises several Skills and can switch between them. It can be a dialogue system that contains a goal-oriented and chatbot skills and chooses which one to use for generating the answer depending on user input.
Agent 被认为是一个多用途的对话系统,它由多个技能组成,可以在它们之间进行切换。 它可以是一个包含目标导向和聊天机器人技能的对话系统,并根据用户输入选择使用哪一个来生成答案。
DeepPavlov is built on top of machine learning frameworks TensorFlow and Keras. Other external libraries can be used to build basic components.
Deeppavlov 构建在机器学习框架 TensorFlow 和 Keras 之上。 其他外部库可用于构建基本组件。