Several platforms

The following five intelligent semantic platforms were investigated:

  1. Ali cloud small honey (beebot) www.aliyun.com/product/beebot
  2. DuerOS dueros.baidu.com
  3. Tencent Wenzhi Chinese semantic platform (xiaowei) xiaowei.qcloud.com
  4. Microsoft Intelligent Natural Language Understanding Platform (LUIS) www.luis.ai

Platform overview


The robot contains scenes

beebot

Cloud Xiaomei is a conversational robot for developers that supports intelligent conversations based on natural language processing (NLP) on different message terminals. Includes the following common areas:

  1. The company procurement
  2. Office software system
  3. Guide to
  4. Reimbursement policy
  5. The career development
  6. Knowledge of the invoice
  7. Based on the administrative
  8. The company facilities

DuerOS

Baidu’s DuerOS is more like an operating system than just a simple robot, providing a variety of interfaces for software and hardware. There are three main categories:

  1. Custom skills: provides a platform to define skills, define intentions and dictionaries, identify the user’s input intentions, and then call the service corresponding to the intentions to achieve conversational skills. For example, if you input the language “help me check the nearby food”, the intention is “find the food”, and the corresponding service interface is “www.xxx.xxx/search”, the result will be returned to the user.
  2. Smart home skills, which are mainly the skills of smart device manufacturers, can be very convenient to connect with smart home. Transfer the user’s words or text input to the corresponding action.
  3. Content broadcasting skills are mainly customized for content producers, such as uploading the text of information to be broadcast, and then users can demand text news or voice news.

xiaowei

Application scenarios of small and micro customer robots: Users can import knowledge base information of business domain to establish the robot knowledge information foundation.

  1. Family scene, the family with screen device access to achieve dialogue interaction.
  2. Vehicle-mounted scene, the combination of voice and car, to control navigation, music playing and other language interaction.
  3. Sports scene, voice wake up headset and APP, realize interaction.

luis

  1. Taxi domain, taxi reservation or something like that.
  2. The site domain, which includes various site-related intents.
  3. Weather areas, including weather reporting and forecasting intentions.
  4. The reminder area, including the creation, modification, and query intent of the reminder function.
  5. Schedule areas, including program management intentions related to schedule topics.
  6. Smart home field, provide control lighting, appliances and other operating intentions.
  7. Note field, provides note creation, query, and modify operations intent.
  8. Web navigation domain, provides web navigation related functional intent.
  9. Translation field, providing translation language related intent.
  10. The area of equipment control, including the intent to control equipment.
  11. In the field of communications, the provision of intents relating to telephone calls, E-mail, etc.
  12. Music domain, providing intent related to music playback.
  13. Restaurant area, provide restaurant reservation intention.

How to use

beebot

  1. Register an Aliyun account and log in.
  2. Create a robot and configure basic robot information.
  3. Select areas that require built-in knowledge, including company procurement, office software systems, guidelines, reimbursement policies, basic administration, career development, invoicing, etc.
  4. Manage knowledge base, add new entries.
  5. Add an association question to display an association question when a user enters a question that matches an entry.
  6. Customize the intent, and enter the intent user can ask a variety of ways.
  7. To mark entities, the relevant entities in the user’s French sentences are marked.
  8. Configure whether the user reply will be text reply or configured to be processed on our own service interface and then returned to the user.
  9. Launch online.

DuerOS

  1. Register a Baidu account and log in.
  2. Go to the background to create your own intention, including the intention name, common expression statements (and which statements correspond to the intention), expression statement slot, skill reply (including custom reply and service configuration meet two categories, custom reply is to fill in the text answer. If the service configuration is satisfied, duer will forward the data identified by the intent to our server interface, and we will deal with it ourselves. In addition, multiple rounds of dialogue can be defined, but each round needs to be designed by us.
  3. Create your own dictionary, there are a lot of built-in dictionary can be used, including national, Chinese cities and provinces in China, the district/county/county/township, village, colors, animals, foreign cities, scenic spots, holidays, movies, music, celebrities, plants, TV series, variety show, bus, subway, idioms, the book of family names, brand and so on.
  4. In the beginning, DuerOS generated various phrases for us. For example, we defined “tell me about the telecom package”, and it generated dozens of similar phrases, “Tell me about the telecom package”, “Tell me about the telecom package”, and so on, but we had to do the labeling ourselves. Is to label the dozens of statements that generate similar problems.
  5. Configure service interface information.
  6. Test, release.

xiaowei

  1. Register Tencent Cloud and log in.
  2. Apply for micro robot.
  3. Create robots.
  4. Upload the knowledge base.
  5. Configure service interfaces.
  6. Create the intent and configure the slot.
  7. Training.
  8. Online.

luis

  1. Log in with Microsoft account.
  2. To create an APP, there will be culture selection, which includes many countries to choose and understand languages according to different national cultures.
  3. You can choose the field you want. The field contains many intentions, and each intention contains many questions.
  4. Create intents and define them according to your business needs.
  5. Create entities that can be used to sequentially annotate problems.
  6. Business questions are added one by one, which are common business consulting statements.
  7. The relevant entities in each business problem advisory statement are marked and used for entity extraction after subsequent training.
  8. Start training the model.
  9. Complete the training and start using the model to predict intention and entity extraction.
  10. Publish the model, accessed using the URL interface provided.

Integrated way

beebot

  1. HTTP API.
https://chatbot.cn-shanghai.aliyuncs.com/ ?Format=xml &Version=2017-10-11 &Signature=Pc5WB8gokVn0xfeu%2FZV%2BiNM1dgI%3D & SignatureMethod = HMAC - SHA1 & SignatureNonce = 15215528852396 & SignatureVersion = 1.0 & AccessKeyId = key - test &Timestamp=2017-10-11T12:00:00ZCopy the code
<? xml version="1.0" encoding="UTF-8"? > <! -- The root of the result --> < interface name +Response> <! -- return request tag --> <RequestId>4C467B38-3910-447D-87BC-AC049166F216</RequestId> <! -- Return result data --> </ interface name +Response>Copy the code

DuerOS

  1. HTTP interface.
  2. The server SDK supports PHP.
  3. The android SDK.
{
  "event": {
    "header": {
      "namespace": "ai.dueros.device_interface.text_input"."name": "TextInput"."messageId": "f894055e-a81e-4b4d-a97e-72c4d3a9ada4"."dialogRequestId": "720cc607-cff9-411e-83f4-03daca331ef3"
    },
    "payload": {
      "query": "Tell me about the telecom package."}},"clientContext": [{"header": {
        "namespace": "ai.dueros.device_interface.location"."name": "GpsState"
      },
      "payload": {
        "longitude": null,
        "latitude": null,
        "geoCoordinateSystem": "BD09LL"}}]."debug": {
    "bot": {
      "id": "ec773bfc-f907-bfae-160b-b6ec2250fd5d"
    },
    "simulator": true}}Copy the code
{
  "directive": {
    "header": {
      "namespace": "ai.dueros.device_interface.screen"."name": "RenderCard"."dialogRequestId": "720cc607-cff9-411e-83f4-03daca331ef3"."messageId": "NWE3MTNmMmU1ZWJiZTE0NTE="
    },
    "payload": {
      "type": "TextCard"."content": "What is the package number, please?"."token": "eyJib3RfaWQiOiJ1cyIsInJlc3VsdF90b2tlbiI6IjBhYTU3MGM0LWNhODQtNGEzYS05NmM2LTBkOTAwM2Y3YjcyNSIsImJvdF90b2tlbiI6Im51bGwifQ= ="}}}Copy the code

xiaowei

  1. Rest API
https://yun.tim.qq.com/v3/prophet/$command? appid=$appid&sdkappid=$sdkappid&identifier=$identifier&usersig=$usersig&random=999999&contenttype=json
Copy the code
{
    "botid": "third party account"."auth": ""."from_user_name": "Xiao Ming"."question": "Failed to send message"."max_answer_num"10} :Copy the code

luis

Only URL interfaces are provided, and all applications can access them through HTTP. For example, in the following access, the system returns a string of JSON-formatted messages with probability scores for various intents, as well as extracted entities.

Westus.api.cognitive.microsoft.com/luis/v2.0/a…

{
  "query": "Do you have a monthly data plan?"."topScoringIntent": {
    "intent": "Telecommunications Consulting"."score": 0.9712404},"intents": [{"intent": "Telecommunications Consulting"."score": 0.9712404}, {"intent": "None"."score": 0.2136391}, {"intent": "Find a restaurant"."score"] : 0.0577361658},"entities": [{"entity": "Monthly package"."type": "Package"."startIndex": 5,
      "endIndex": 8,
      "score": 0.832137644}]}Copy the code

conclusion

  • With regard to the amount of data, it is necessary to add and define a large number of business problems.
  • In terms of training, Luis had to train the added business problems himself before using the model, and should have performed the training in a browser, saving them server resources.
  • About the effect, there will be the following effect, “there is no data package monthly package” and “there is no flow package monthly set” effect is the same.
  • In terms of the platform approach, both provide a similar background for users to add their own business problems, thereby isolating themselves.
  • As for multi-round dialogues, the two platforms only provide the form of q&A, not multi-round dialogues.
  • In terms of diversity of conversation, both platforms need to add multiple responses to a question themselves to achieve diversity, but this approach is also somewhat blunt.
  • As for the semantic platform of BAT, they basically provide a platform for intention recognition and service connection, allowing developers to configure various intentions and expressions by themselves, helping users to understand their expressions and forward them to the direct service interface. It also involves a lot of business data addition and annotation work, but it integrates some general modules internally, and generates more similar statements according to the expression input by the developer, which can contain more types of questions, but the generated statements still need to be annotated by ourselves.

Focus on artificial Intelligence, reading and feeling, talk about mathematics, computer Science, distributed, machine learning, deep learning, natural language processing, Algorithms and Data Structures, Java depth, Tomcat kernel, etc.