ENECHANGE Developer Blog

ENECHANGE開発者ブログ

100以上のLLMが使えるSlackbot OSS、Collmboを公開しました

VPoTの岩本 (iwamot) です。

100以上のLLMが使えるSlackbot OSS、Collmboを公開したのでご紹介します。

github.com

要点:

  • ENECHANGEではChatGPT-in-Slackを便利に使ってきた
  • ChatGPT-in-SlackでチャットできるLLMはGPTのみ
  • 他のLLMも使えるよう、forkしてLiteLLMを組み込んだ

ENECHANGEではChatGPT-in-Slackを便利に使ってきた

ENECHANGEでは、LLMとチャットできるSlackbotとしてChatGPT-in-Slackを便利に使ってきました。Slack (Salesforce) のseratchさんが開発されたOSSで、さすがのUXです。

github.com

Slackbotを社内に公開した2023年5月9日から、もう1年あまりになります。

その間、ユーザーとして使うだけではなく、Azure OpenAIのサポートFunction Callingのサポートなどのコントリビュートもしてきました。

ChatGPT-in-SlackでチャットできるLLMはGPTのみ

ただ、ChatGPT-in-SlackでチャットできるLLMは、現時点ではGPTのみです。他のLLMのサポート予定もありません

Claude 3を始め、他のLLMも活発に開発されている状況を考えれば、それらともチャットしてみたいところです。特にClaude 3 Opusは、GPT-4にくらべ高いベンチマーク結果を誇っています

他のLLMとのチャットをChatGPT-in-Slackに遜色ないUXで実現するには、別の手段が必要です。どうすべきでしょうか。

他のLLMも使えるよう、forkしてLiteLLMを組み込んだ

ぼくの答えは「ChatGPT-in-SlackをforkしてLiteLLMを組み込む」でした。

LiteLLMは、OpenAIと(つまりGPTと)同じインターフェースで100以上のLLMが呼び出せると謳うツールです。GitHubのスター数は9,600を超え、2024年4月のTechnology Radarに掲載されるなど注目を集めています。

github.com

ChatGPT-in-Slackをforkし、OpenAIに依存している箇所をLiteLLMに差し替えられたら、オリジナルと遜色ないUXでGPT以外のLLMも呼び出せそうですよね。

ということで、実際に進めて公開したのがCollmboです。

github.com

名前には「共に育てるLLM bot」の意味を込めました。「コロンボ」とお読みください。

ちなみにENECHANGEの社内Slackbotは、すでにこのCollmboに置き換え済みです。狙いどおり、ChatGPT-in-Slackに遜色ないUXを維持できています。

ただ、残念ながらLiteLLM側に不具合があるため、Claude 3とのチャットはまだ実現していません。バグレポートは出したので、修正に期待しているところです。

まとめ

今回は、100以上のLLMが使えるSlackbot OSS、Collmboをご紹介しました。

要点:

  • ENECHANGEではChatGPT-in-Slackを便利に使ってきた
  • ChatGPT-in-SlackでチャットできるLLMはGPTのみ
  • 他のLLMも使えるよう、forkしてLiteLLMを組み込んだ

また、本文では触れませんでしたが、Collmboにはカスタムコールバック機能も追加済みです。分析用のログ出力などに活用できます。

「共に育てるLLM bot」ということで、気軽にお試し・フィードバックいただけると幸いです。