Overview of how chatbot Skillsets and Skillset instructions work. Learn how to customize your chatbot's abilities and improve its performance.

Skillsets are instructions to your chatbot that are defined in natural language. They allow your chatbot to understand user intent and propose a suitable action based on the conversation. For example, if a user asks your chatbot to fetch the weather forecast for a specific location, the skillset instruction will tell the chatbot how to extract the location from the conversation and use it to search for the weather forecast.

To access a skillset, you must specify the skillset id when starting a conversation with a chatbot. There is only one skillset allowed per conversation. The number of skillset you can have is determined by your monthly membership or subscription plan. If you need more skillsets, you can upgrade your plan or contact customer service for more information.

Example Fetching Pages

The following Skillset instruction allows your chatbot to fetch and display web pages when requested by the user:

When the user asks the bot to read, fetch, or pull a web page, the bot must only output the URL of the root webpage as a markdown code block, with the language specified as "fetch". For example: ```fetch URL of the webpage, e.g https://... or HTTP request ``` If the user asks a question that is not related to fetching a web page or to the bot context, the bot must reply with "I don't know" or "I cannot do that", etc. Always reply in markdown format.

This Skillset instruction tells the chatbot to listen for user requests to fetch web pages. When the chatbot detects such a request, it will output the URL of the requested web page in a markdown code block, using the language specified as fetch. If the user asks a question that is not related to fetching a web page, the chatbot will reply with a message indicating that it is unable to fulfill the request.

Example Generating Images

The following Skillset instruction allows your chatbot to generate and describe detailed and photorealistic images:

When necessary, first reply to the user by stating what you are about to do, then output a detailed and photorealistic description of an image in a markdown code block with language dalle2, like this: ```dalle2 suggested description ```

This Skillset instruction tells the chatbot to first let the user know that it is about to generate and describe an image, and then output a detailed and photorealistic description of the image in a markdown code block using the language specified as dalle2.

Acting on Skillset Chat Responses

Once your chatbot has generated a response, you can use your custom chatbot user interface (UI) to perform the task described in the response. For example, if your chatbot generates a response with a URL for a web page, you can use your custom chatbot UI to navigate to that web page or fetch the content and insert it into the conversation. This simple mechanism is allowing for a lot of flexibility and the ability to support of many actions no matter your platform of choice.

Alternatively, you can use the parse parameter when calling the receive message route (/v1/conversation/{conversationId}/receive) to breakdown the original text produced by the bot into an array of actions. There are multiple platform actions current supported. For more information, please see the API documentation.

How to create a Skillset

Follow these instructions to create a new skillset.

  1. Got to "Skillsets" from the navigation bar.
  2. Click "Create Skillset" button.
  3. Name your skillset and provide description.
  4. Save the skillset by clicking on the "Create" button.

Now you have an empty skillset but you do not have any abilities. Creating abilities is also very easy.

  1. With your skillset selected, click on the "Create Ability" button.
  2. Specify the ability instruction, be aware of the total token count.
  3. Save the new skillset ability by clicking on the "Create" button.

Ability Size

The maximum instruction size can be 200 tokens. As you approach this limit you will see the token count turning from amber to red. It is advisable to keep individual abilities abilities small and contextual. We reserve the right to make changes to this limit in the future.

Summary

Overall, Skillsets are a powerful tool for customizing your chatbot's abilities and improving its performance. They allow you to define specific instructions for your chatbot in natural language, allowing it to better understand and respond to user requests. By creating and managing Skillsets, you can ensure that your chatbot is always ready to meet the needs of your users.