Quick start
Last updated
Last updated
In this quick start guide, we will build a bot server in Python and then integrate it with Poe. Once you have created a Poe bot powered by your server, any Poe user can interact with it. The following diagram might be useful in visualizing how your bot server fits into Poe.
For more information on Poe server bots, check out the Poe Protocol Specification.
We recommend using Modal to deploy your bot, but you can also use any cloud provider of your choice; all you need to do is to make the bot server available at a publicly available URL and once you have that, you can skip to integrating it with Poe. In order to use Modal to deploy your bot, do the following.
Make sure you have Python installed. Open a terminal and run pip install modal-client
You might have to use pip3 instead of pip depending on your version of Python.
This step involves setting up access to modal from your terminal. You only need to do this once for your computer. In the terminal, run modal token new --source poe
. If you run into a "command not found" error, try this.
If that command runs successfully, you will taken to your web browser where you will be asked to log into modal using your Github account.
After you login, click on "create token". You will be prompted to close the browser window after that.
In your terminal, run:
git clone https://github.com/poe-platform/server-bot-quick-start
cd server-bot-quick-start
pip install -r requirements.txt
modal deploy echobot.py
Modal will now deploy your app and output two urls: a) the endpoint at which your app is hosted b) an internal page where you can monitor your app. You will be using the former to integrate your bot into Poe.
Once you have a bot running under a publicly accessible URL, it is time to connect it to Poe. You can do that on your desktop by going to the bot creation form. You can customize how your bot looks by providing a picture, name and description. After you fill out the server URL and click "create bot", your bot should be ready for use on all Poe clients.
For faster iteration on your bot, we recommend using Modal's serve command (as in modal serve echobot.py
). On running that command, Modal will deploy an ephemeral version of your app which live updates in response to any code change. In addition, any print/debug statements will output to your terminal.
The README provides a brief description of the other example bots included in the repo. Feel free to iterate upon and/or deploy them.
One of the advantages of building a bot on Poe is the ability to invoke other Poe bots. In order to learn how to do that check out: Accessing other bots on Poe.
Check out other detailed guides that show you how to enable specific features:
Refer to the specification to understand the full capabilities offered by Poe server bots.
Check out the fastapi-poe library, which you can use as a base for creating Poe bots.