An open API service indexing awesome lists of open source software.

https://github.com/SidU/teams-langchain-js

Demonstration of LangChainJS with Teams / Bot Framework bots
https://github.com/SidU/teams-langchain-js

Last synced: 8 days ago
JSON representation

Demonstration of LangChainJS with Teams / Bot Framework bots

Awesome Lists containing this project

README

        

# teams-langchain-js ✨

Demo showing how to leverage LangChainJS in Bot Framework based bots for Teams / Outlook / Slack, etc.

[Watch demo on YouTube](https://youtu.be/hPaIEVTjY4o)

## Prerequisites

- [Node.js](https://nodejs.org) version 10.14.1 or higher

```bash
# determine node version
node --version
```

## To run the bot

- Make a copy of `.env.example` to `.env`, get your OpenAI key from [https://beta.openai.com/account/api-keys](https://beta.openai.com/account/api-keys) and paste it in the `.env` file.

- Install modules

```bash
npm install
```

- Start the bot

```bash
npm start
```

## Bing SERP API
Signup for Bing API key [here](https://aka.ms/bingapisignup). Paste it's value in the `.env` file.

`BingApiKey=`

## Testing the bot using Bot Framework Emulator

[Bot Framework Emulator](https://github.com/microsoft/botframework-emulator) is a desktop application that allows bot developers to test and debug their bots on localhost or running remotely through a tunnel.

- Install the Bot Framework Emulator version 4.9.0 or greater from [here](https://github.com/Microsoft/BotFramework-Emulator/releases)

### Connect to the bot using Bot Framework Emulator

- Launch Bot Framework Emulator
- File -> Open Bot
- Enter a Bot URL of `http://localhost:3978/api/messages`

## Deploy the bot to Azure

To learn more about deploying a bot to Azure, see [Deploy your bot to Azure](https://aka.ms/azuredeployment) for a complete list of deployment instructions.

## Further reading
- [LangChainJS](https://hwchase17.github.io/langchainjs/docs/getting-started)
- [ReAct paper](https://arxiv.org/pdf/2210.03629.pdf)
- [Bot Framework Documentation](https://docs.botframework.com)
- [Bot Basics](https://docs.microsoft.com/azure/bot-service/bot-builder-basics?view=azure-bot-service-4.0)
- [Dialogs](https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-concept-dialog?view=azure-bot-service-4.0)
- [Gathering Input Using Prompts](https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-prompts?view=azure-bot-service-4.0)
- [Activity processing](https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-concept-activity-processing?view=azure-bot-service-4.0)
- [Azure Bot Service Introduction](https://docs.microsoft.com/azure/bot-service/bot-service-overview-introduction?view=azure-bot-service-4.0)
- [Azure Bot Service Documentation](https://docs.microsoft.com/azure/bot-service/?view=azure-bot-service-4.0)
- [Azure CLI](https://docs.microsoft.com/cli/azure/?view=azure-cli-latest)
- [Azure Portal](https://portal.azure.com)
- [Language Understanding using LUIS](https://docs.microsoft.com/en-us/azure/cognitive-services/luis/)
- [Channels and Bot Connector Service](https://docs.microsoft.com/en-us/azure/bot-service/bot-concepts?view=azure-bot-service-4.0)
- [Restify](https://www.npmjs.com/package/restify)
- [dotenv](https://www.npmjs.com/package/dotenv)