Skip to content

Latest commit

 

History

History
115 lines (59 loc) · 7.43 KB

usage.md

File metadata and controls

115 lines (59 loc) · 7.43 KB

📖 Usage

This document covers how to use the bot in a room.

The 🌟 Features page also includes details about how each feature works and can be configured.

💬 Text Generation

This is related to the 💬 Text Generation feature.

If there's a text-generation handler agent configured, the bot may respond to messages sent in the room.

See screenshots of:

Whether the bot responds depends on:

  • (🔒 access) whether you're a whitelisted bot 👥 user

  • 🛠️ configuration whether there's a configured text-generation handler agent (or a catch-all handler agent). See Mixing & matching models

  • (🎨 agent capabilities) whether the configured text-generation (or catch-all) handler agent actually supports text-generation. The provider may lack support for this feature or it may be disabled in the 🤖 agents configuration

  • (the 🗟 Prefix Requirement setting) whether a prefix (e.g. !bai) or user mention (e.g. @baibot) is required for messages sent to the room. For multi-user rooms, this setting defaults to "required". See on-demand involvement for details.

Room messages start a threaded conversation where you can continue back-and-forth communication with the bot.

Unless you've enabled the ♻️ Context Management feature, all messages will be sent to the agent's API each time. If the context management feature is enabled, older messages may be dropped.

On-demand involvement

In the following 2 cases, it's useful to involve the bot in conversations on-demand:

  1. For multi-user rooms (with the 🗟 Prefix Requirement setting set to "required")
  2. In rooms with foreign users (users that are not authorized bot 👥 users)

In these instances, an allowed 👥 user can also provoke the bot to respond to any thread or reply chain by mentioning the bot (e.g. @baibot Hello!). The following screenshots demonstrate this behavior:

💡 NOTE: Normally, the bot only considers messages from allowed 👥 Users and ignores all other messages when responding. However, when the bot is explicitly invoked (via mention) in a thread or reply chain, it will consider all messages in the thread and reply chain (even those from foreign users) as part of the conversation context.

🗣️ Text-to-Speech

This is related to the 🗣️ Text-to-Speech feature.

If there's a text-to-speech handler agent configured, the bot may convert text messages sent to the room to audio (voice).

See:

By default, the bot:

🦻 Speech-to-Text

This is related to the 🦻 Speech-to-Text feature.

If there's a speech-to-text handler agent configured, the bot may transcribe voice messages sent to the room to text.

See a 🖼️ Screenshot of the default flow for Speech-to-Text and Text-Generation.

The speech-to-text feature triggers automatically by default, but can be adjusted via the 🦻 Speech-to-Text / 🪄 Flow Type setting.

If all your messages are in the same language, you can improve accuracy & latency by configuring the language (see 🦻 Speech-to-Text / 🔤 Language).

🖌️ Image Generation

This is related to the 🖌️ Image Generation feature.

This feature is not configurable at the moment. The configuration (size, quality, style) specified at the 🤖 agent level will be used.

Generating images

Simply send a command like !bai image A beautiful sunset over the ocean and the bot will start a threaded conversation and post an image based on your prompt.

See a 🖼️ Screenshot of the Image Generation feature.

You can then, respond in the same message thread with:

  • more messages, to add more criteria to your prompt.
  • a message saying again, to generate one more image with the current prompt.

Generating stickers

A variation of generating images is to generate "sticker images".

See a 🖼️ Screenshot of the Sticker Generation feature.

To generate a sticker, send a command like !bai sticker A huge ramen bowl with lots of chashu and a mountain of beansprouts on top.

The difference from generating images is that the bot will:

  • generate a smaller-resolution image (currently hardcoded to 256x256) - smaller/quicker, but still good enough for a sticker
  • potentially switch to a different (cheaper or otherwise more suitable) model, if available
  • post the image directly to the room (as a reply to your message), without starting a threaded conversation

Some models (like OpenAI's Dall-E-3) can only generate larger images (1024x1024, etc., for a higher charge), so we switching to a smaller/cheaper model (like Dall-E-2) is a way to generate a sticker cheaply.