Microsoft.Teams.AI 1.0.0-preview

Prefix Reserved
This is a prerelease version of Microsoft.Teams.AI.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Microsoft.Teams.AI --version 1.0.0-preview                
NuGet\Install-Package Microsoft.Teams.AI -Version 1.0.0-preview                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Microsoft.Teams.AI" Version="1.0.0-preview" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Microsoft.Teams.AI --version 1.0.0-preview                
#r "nuget: Microsoft.Teams.AI, 1.0.0-preview"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Microsoft.Teams.AI as a Cake Addin
#addin nuget:?package=Microsoft.Teams.AI&version=1.0.0-preview&prerelease

// Install Microsoft.Teams.AI as a Cake Tool
#tool nuget:?package=Microsoft.Teams.AI&version=1.0.0-preview&prerelease                

<image src="https://github.com/microsoft/teams-ai/assets/14900841/972a9a1b-679a-4725-bfc0-a1e76151a78a" height="10%" width="10%" /> Teams AI Library

Build Status

Welcome to the Teams AI Library! This SDK is specifically designed to assist you in creating bots capable of interacting with Teams and Microsoft 365 applications. It is constructed using the Bot Framework SDK as its foundation, simplifying the process of developing bots that interact with Teams' artificial intelligence capabilities.

<p> <figure> <img src="https://github.com/microsoft/teams-ai/assets/14900841/154353ff-bafe-4423-abcd-6dc5a8680fe9" /> <figcaption>This is a diagram of the Teams-AI flow. Teams AI SDK hooks into the Teams SDK and Azure OpenAI SDK to provide a seamless experience for developers.</figcaption> </figure> </p> The SDK is currently available for JavaScript/TypeScript applications in the <a href="./js" ><code>js</code></a> folder and via the <a href="https://www.npmjs.com/package/@microsoft/teams-ai">teams-ai package on NPM</a>. We are actively developing parity for .NET, which will be available soon.

Getting Started

πŸ–‡οΈ Jump right in❗️ πŸ“Ž

If you want to jump immediately into AI, try out the 04.ai.a.teamsChefbot sample. This sample is a simple bot that uses the OpenAI GPT model to build a Teams app. Just load it up in Visual Code and hit F5! πŸŽ‰

Start with our getting started guides

This SDK is under private preview and is subject to change. We welcome your feedback and contributions!

To get started, head over to the Getting Started Guide.

Capabilities

Teams-centric component scaffolding

For examples of the below, browse through the JS folders. Simple scaffolding for any conversational app component, including:

  • Chat bots
  • Message Extensions
  • Link unfurling
  • Adaptive Cards

Natural Language Modelling

The SDK is built to leverage OpenAI Large Language Models so you don't have to create your own. This saves you the complexity of processing natural language, and allows your users to talk to your app with their own words.

Prompt Engineering

With a simple text file written in human language, you can describe the functionality of your app to cue OpenAI to focus on the right user intentions and provide relevant responses.

Moderation

A configurable API call to filter inappropriate content for input content, output content, or both. (See OpenAIModerator.ts)

Predictive Engine to Map Intents to Actions

Leveraging provided prompts and topic filters, it's simple to create a predictive engine that detects user intents and map them to relevant app actions, where you can focus your business logic. These actions are even possible to chain together to make building complex workflows easy.

Conversational Session History

The state of your user's session is not lost, allowing conversations to flow freely and arrive quickly at right outcome.

Localization

Because OpenAI's models are trained on the open internet, they're tuned to any language, saving you the cost of localization.

LLM modularity

While the SDK handles OpenAI's GPT models out of the box, you can choose to swap to the LLM of your choice without touching any of your conversational app code.

License

This SDK is licensed under the MIT License. This SDK includes tools to use APIs provided by third parties. These APIs are provided under their own separate terms.

  • OpenAI API. Use of the OpenAI API requires an API key, which can be obtained from OpenAI. By using this SDK, you agree to abide by the OpenAI API Terms of Use and Privacy Policy. You can find them at OpenAI Terms of Use
  • Azure OpenAI Service. Use of the Azure OpenAI API requires an API key. By using this SDK, you agree to abide by the Azure OpenAI API terms. You can find them at Azure OPENAI TOS, and associated documentation at Azure Cognitive Services.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

For more details, see ./CONTRIBUTING.md.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

Accessing daily builds

Please see Daily Builds for instructions on how to access daily builds.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Microsoft.Teams.AI:

Repository Stars
microsoft/teams-ai
SDK focused on building AI based applications and extensions for Microsoft Teams and other Bot Framework channels
Version Downloads Last updated
1.8.1 160 11/12/2024
1.8.0 114 11/5/2024
1.7.0 467 10/10/2024
1.6.0 169 10/7/2024
1.5.0 1,164 8/6/2024
1.4.0 826 6/17/2024
1.3.0 610 5/16/2024
1.2.0 132 5/9/2024
1.1.3 542 4/2/2024
1.1.2 329 3/5/2024
1.1.1 281 2/7/2024
1.1.0 334 1/18/2024
1.0.1 346 1/11/2024
1.0.0 1,803 12/11/2023
1.0.0-preview-6 141 12/7/2023
1.0.0-preview-5 84 12/6/2023
1.0.0-preview-3 99 12/1/2023
1.0.0-preview-2 91 11/29/2023
1.0.0-preview-1 102 11/24/2023
1.0.0-preview 150 11/3/2023