SmartCopilotAdapter

Wisej.AI.Adapters.SmartCopilotAdapter

Namespace: Wisej.AI.Adapters

Assembly: Wisej.AI (3.5.0.0)

Turns the ChatBox control into a AI-powered assistant. It can control and navigate an application, click menu items, navigation bar items, buttons, etc. It can also invoke methods in your applications as needed (see SmartTool).

public class SmartCopilotAdapter : SmartAdapter

Works with:

  • AzureAI/OpenAI gpt-4

  • AzureAI/OpenAI gpt-4o

  • AzureAI/OpenAI gpt-3.5

  • AzureAI/Anthropic Claude

  • Google Gemini

  • Llama3:8b and 70b

When the user instructions contain extra information (i.e. "add Microsoft as a new client"), the additional parameters are extracted, processed and are available in the Parameters property delivered with the ExecuteAction event arguments. You are not limited to the predefined actions in the application. When you add a method decorated with the ToolAttribute the AI can invoke it when necessary. This is a simple example that sends an email when prompted by the user:


      [SmartTool.Tool]
      [Description("Sends an email message.")]
      public void SendEmailMessage(
        [Description("Email address of the recipient.")]
        string destinationEmail,
        
        [Description("Subject line.")]
        string subject,

        [Description("Message text.")]
        string message) {
        
        // code to send an email, or open a dialog box.
      }

Constructors

SmartCopilotAdapter()

Initializes a new instance of the SmartCopilotAdapter class.

Properties

BotAvatar

String: Gets or sets the icon of the AI bot. (Default: "resource.wx/Wisej.AI/Icons/wisej-avatar.svg")

BotName

String: Gets or sets the name of the AI bot. (Default: "Wisej.AI")

ChatBox

ChatBox: Gets the ChatBox control associated with this adapter.

User

User: Gets the User associated with the AI bot.

The User is created using BotName and BotAvatar.

Methods

OnControlCreated(control)

Parameter
Type
Description

control

OnControlDisposed(control)

Parameter
Type
Description

control

OnExecuteAction(e)

Raises the ExecuteAction event.

Parameter
Type
Description

e

The ExecuteActionEventArgs instance containing the event data.

RunAsyncCore(control)

Executes the core logic asynchronously.

Parameter
Type
Description

control

The control associated with the operation.

Returns: Task<Message>. A task representing the asynchronous operation.

Events

ExecuteAction

ExecuteActionEventHandler Occurs when an action is executed.

Implements

Name
Description

Represents a provider that supplies tools.

Last updated