51 lines
1.5KB

  1. """
  2. channel factory
  3. """
  4. from common import const
  5. def create_bot(bot_type):
  6. """
  7. create a bot_type instance
  8. :param bot_type: bot type code
  9. :return: bot instance
  10. """
  11. if bot_type == const.BAIDU:
  12. # 替换Baidu Unit为Baidu文心千帆对话接口
  13. # from bot.baidu.baidu_unit_bot import BaiduUnitBot
  14. # return BaiduUnitBot()
  15. from bot.baidu.baidu_wenxin import BaiduWenxinBot
  16. return BaiduWenxinBot()
  17. elif bot_type == const.CHATGPT:
  18. # ChatGPT 网页端web接口
  19. from bot.chatgpt.chat_gpt_bot import ChatGPTBot
  20. return ChatGPTBot()
  21. elif bot_type == const.OPEN_AI:
  22. # OpenAI 官方对话模型API
  23. from bot.openai.open_ai_bot import OpenAIBot
  24. return OpenAIBot()
  25. elif bot_type == const.CHATGPTONAZURE:
  26. # Azure chatgpt service https://azure.microsoft.com/en-in/products/cognitive-services/openai-service/
  27. from bot.chatgpt.chat_gpt_bot import AzureChatGPTBot
  28. return AzureChatGPTBot()
  29. elif bot_type == const.XUNFEI:
  30. from bot.xunfei.xunfei_spark_bot import XunFeiBot
  31. return XunFeiBot()
  32. elif bot_type == const.LINKAI:
  33. from bot.linkai.link_ai_bot import LinkAIBot
  34. return LinkAIBot()
  35. elif bot_type == const.CLAUDEAI:
  36. from bot.claude.claude_ai_bot import ClaudeAIBot
  37. return ClaudeAIBot()
  38. elif bot_type == const.TONGYI:
  39. from bot.tongyi.tongyi_qwen_bot import TongyiQwenBot
  40. return TongyiQwenBot()
  41. raise RuntimeError