You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

73 lines
2.2KB

  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.CLAUDEAPI:
  39. from bot.claudeapi.claude_api_bot import ClaudeAPIBot
  40. return ClaudeAPIBot()
  41. elif bot_type == const.QWEN:
  42. from bot.ali.ali_qwen_bot import AliQwenBot
  43. return AliQwenBot()
  44. elif bot_type == const.QWEN_DASHSCOPE:
  45. from bot.dashscope.dashscope_bot import DashscopeBot
  46. return DashscopeBot()
  47. elif bot_type == const.GEMINI:
  48. from bot.gemini.google_gemini_bot import GoogleGeminiBot
  49. return GoogleGeminiBot()
  50. elif bot_type == const.ZHIPU_AI:
  51. from bot.zhipuai.zhipuai_bot import ZHIPUAIBot
  52. return ZHIPUAIBot()
  53. elif bot_type == const.MOONSHOT:
  54. from bot.moonshot.moonshot_bot import MoonshotBot
  55. return MoonshotBot()
  56. elif bot_type == const.MiniMax:
  57. from bot.minimax.minimax_bot import MinimaxBot
  58. return MinimaxBot()
  59. raise RuntimeError