您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

recommended_app_service.py 1.3KB

1234567891011121314151617181920212223242526272829303132333435
  1. from configs import dify_config
  2. from services.recommend_app.recommend_app_factory import RecommendAppRetrievalFactory
  3. class RecommendedAppService:
  4. @classmethod
  5. def get_recommended_apps_and_categories(cls, language: str):
  6. """
  7. Get recommended apps and categories.
  8. :param language: language
  9. :return:
  10. """
  11. mode = dify_config.HOSTED_FETCH_APP_TEMPLATES_MODE
  12. retrieval_instance = RecommendAppRetrievalFactory.get_recommend_app_factory(mode)()
  13. result = retrieval_instance.get_recommended_apps_and_categories(language)
  14. if not result.get("recommended_apps"):
  15. result = (
  16. RecommendAppRetrievalFactory.get_buildin_recommend_app_retrieval().fetch_recommended_apps_from_builtin(
  17. "en-US"
  18. )
  19. )
  20. return result
  21. @classmethod
  22. def get_recommend_app_detail(cls, app_id: str) -> dict | None:
  23. """
  24. Get recommend app detail.
  25. :param app_id: app id
  26. :return:
  27. """
  28. mode = dify_config.HOSTED_FETCH_APP_TEMPLATES_MODE
  29. retrieval_instance = RecommendAppRetrievalFactory.get_recommend_app_factory(mode)()
  30. result: dict = retrieval_instance.get_recommend_app_detail(app_id)
  31. return result