purpose
design a chatgpt-like experience that employees could use but had data isolation and additional org-specific knowledge and functionality built-in.
the design
largely built on Azure cloud services, and the MS Teams SDK for the bot development. This was an early iteration on the design.
I had created a multi-tenant app registration as well within Azure to where a global admin could go consent to the app, and then tenant information was stored in a database. From there a Jenkins pipeline would kick off to check out the bot code repo, and then provision all the Terraform resources within the specified Azure subscription based on the tenant information in the SQL database. The idea was to enable folks in sales and other groups to be able to spin up demos and bots on-demand.
Media
here are just some examples of the planning and release visuals I put together as a part of the development process.
functionality
Use any device to access Microsoft Teams
Users could ask any question under the sun, or pick from a list of actions based on pre-defined Teams Commands
I also built an interactive guide which users could reference and it was built into the Teams application as a tab at the top of the app under Guide
. This doc site was built using MKDocs and I hosted it on a free Azure Web App.
tech used (including but not limited to...)
- Azure Cognitive Search (vertex index)
- Azure Language Understanding Service
- Azure Bot Service
- Azure Multi-Tenant App Registration
- Azure Functions
- Azure CosmoDB
- Azure Entra
- Azure Machine Learning Studio
- Azure OpenAI
- Azure Key Vault
- Microsoft Graph
- Microsoft Teams
- Github
- Jenkins
- Terraform
- Probably forgetting more ...