anthropic-rs -> anthropic) and switch default recommended model (claude-3-5-sonnet-20240620 -> claude-3-7-sonnet-20250219)
Fixes https://github.com/etkecc/baibot/issues/22 Ultimate related to `anthropic-rs` hardcoding models as enumeration variants in the code and not updating them. See: - https://github.com/roushou/mesh/issues/1 - https://github.com/roushou/mesh/pull/2 https://github.com/cortesi/misanthropy was also considered as an alternative, but it did not allow configuring the base API URL like our old Anthropic library (`anthropic-rs`) and like our new choice (`anthropic`). We'd rather not lose support for this, so we're going with the `anthropic` library.
baibot
🤖 baibot is an AI (Large Language Model) bot for Matrix built by etke.cc (managed Matrix servers).
The name is pronounced 'bye'-bot and is a play on AI, referencing the fictional character 🇧🇬 Bai Ganyo.
It's designed as a more private and featureful alternative to matrix-chatgpt-bot. It's influenced by chaz, but does not use the AIChat CLI tool and instead does everything in-process, without forking.
🌟 Features
-
🎨 Encourages provider choice (Anthropic, Groq, LocalAI, OpenAI and ☁️ many more) as well as mixing & matching models:
-
Supports different use purposes (depending on the ☁️ provider & model):
- 💬 text-generation: communicating with you via text
- 🦻 speech-to-text: turning your voice messages into text
- 🗣️ text-to-speech: turning bot or users text messages into voice messages
- 🖌️ image-generation: generating images based on instructions
-
🪄 Supports seamless voice interaction (turning user voice messages into text, answering in text, then turning that text back into voice)
-
🦻 Supports transcribe-only mode (turning user voice messages into text, without doing text-generation)
-
🗣️ Supports text-to-speech-only mode (turning user text messages into voice, without doing text-generation)
-
🔒 Supports encryption for Matrix communication and Account-Data-stored configuration
-
♻️ Supports context-management handling on some models (automatically adjusting the message history length, etc.)
-
🛠️ Allows customizing much of the bot's configuration at runtime (using commands sent via chat)
-
👥 Actively maintained by the team at etke.cc
🖼️ Screenshots
You can find more screenshots on the 🌟 Features and other 📚 Documentation pages, as well as in the docs/screenshots directory.
🚀 Getting Started
🗲 For a quick experiment, you can refer to the 🧑💻 development documentation which contains information on how to build and run the bot (and its various dependency services) locally.
For a real installation, see the 🚀 Installation documentation which contains information on 🐋 Running in a container and 🖥️️️️️ Running a binary.
📚 Documentation
See the bot's 📚 documentation for more information on how to use and configure the bot.
💻 Development
See the bot's 🧑💻 development documentation for more information on how to develop on the bot.
📜 Changes
This bot evolves over time, sometimes with backward-incompatible changes.
When updating the bot, refer to the changelog to catch up with what's new.
🆘 Support
-
Matrix room: #baibot:etke.cc
-
GitHub issues: etkecc/baibot/issues
