GPT plugins in Microsoft Copilot for Security
GPT skill settings
Setting Name | Type | Description | Required |
---|---|---|---|
ModelName |
string | Selects which GPT model to use. Must be one of the available model names. | Yes |
Template |
string | GPT prompt template. Supports upto 80,000 chars. | Yes, if TemplateUrl isn't specified. |
TemplateUrl |
string | Public URL to download the GPT prompt template (upto 80,000 chars) from. | Yes. Specify either TemplateUrl or Template but not both. |
PackageUrl |
string | Public URL for the zip file with the GPT prompt template in it. Note: this is specified at SkillGroup level example. | Yes, if Template or TemplateUrl aren't specified. |
TemplateFile |
string | Relative path to the GPT prompt template (upto 80,000 chars) within PackageUrl zip file. | Yes, if PackageUrl is specified. |
Available model names
Model Name | Model Family | Max Tokens |
---|---|---|
gpt-4o |
GPT 4o | 128k |
GPT plugin manifest
Descriptor:
Name: SampleGPT
DisplayName: My Sample GPT Skillset
Description: Skills for defanging URLs
SkillGroups:
- Format: GPT
Skills:
- Name: DefangUrls
DisplayName: Defang URLs
Description: Defangs URLs in the given text
Inputs:
- Name: text
Description: The text containing URLs to be defanged
Settings:
ModelName: gpt-4o
Template: |-
To 'defang' a URL means to change the scheme to either hxxp or hxxps and replace '.' with '[.]' in the domain so that the URL is still easily readable by a human but doesn't automatically render as a hyperlink if rendered in a rich client such as Outlook. This is often done when sharing potentially malicious links to prevent the reader accidentally clicking on them and visiting a malicious website.
Some examples of defanging URLs:
1. https://example.com --> hxxps://example[.]com
2. http://subdomain.example.com/path.with.dots/ --> hxxp://subdomain[.]example[.]com/path.with.dots/
Defang any URLs in the following text and return the new text:
{{text}}
Tip
For production plugins the preferred implementation is to put the GPT template in a separate file and point to it using the TemplateUrl
or PackageUrl
setting.
TemplateURL
Descriptor:
Name: SampleGPTTemplate
DisplayName: My Sample GPT Skillset With Template
Description: Skills for defanging URLs
SkillGroups:
- Format: GPT
Skills:
- Name: DefangUrls
DisplayName: Defang URLs
Description: Defangs URLs in the given text
Inputs:
- Name: text
Description: The text containing URLs to be defanged
Settings:
ModelName: gpt-4o
TemplateUrl: https://[domain]/template.txt
PackageUrl
Descriptor:
Name: SampleGPTTemplateWithPackageUrl
DisplayName: My Sample GPT Skillset With PackageUrl
Description: Skills for defanging URLs
SkillGroups:
- Format: GPT
Settings:
PackageUrl: https://[domain]/GPTTemplates.zip
Skills:
- Name: DefangUrls
DisplayName: Defang URLs
Description: Defangs URLs in the given text
Inputs:
- Name: text
Description: The text containing URLs to be defanged
Settings:
ModelName: gpt-4o
TemplateFile: GPTTemplates/SampleGPTTemplate.txt