mirror of
https://github.com/langgenius/dify.git
synced 2026-01-14 06:07:33 +08:00
Some checks are pending
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/amd64, build-api-amd64) (push) Waiting to run
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/arm64, build-api-arm64) (push) Waiting to run
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/amd64, build-web-amd64) (push) Waiting to run
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/arm64, build-web-arm64) (push) Waiting to run
Build and Push API & Web / create-manifest (api, DIFY_API_IMAGE_NAME, merge-api-images) (push) Blocked by required conditions
Build and Push API & Web / create-manifest (web, DIFY_WEB_IMAGE_NAME, merge-web-images) (push) Blocked by required conditions
Main CI Pipeline / Check Changed Files (push) Waiting to run
Main CI Pipeline / API Tests (push) Blocked by required conditions
Main CI Pipeline / Web Tests (push) Blocked by required conditions
Main CI Pipeline / Style Check (push) Waiting to run
Main CI Pipeline / VDB Tests (push) Blocked by required conditions
Main CI Pipeline / DB Migration Test (push) Blocked by required conditions
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: -LAN- <laipz8200@outlook.com>
38 lines
1.3 KiB
Python
38 lines
1.3 KiB
Python
from typing import Optional
|
|
|
|
from configs import dify_config
|
|
from services.recommend_app.recommend_app_factory import RecommendAppRetrievalFactory
|
|
|
|
|
|
class RecommendedAppService:
|
|
@classmethod
|
|
def get_recommended_apps_and_categories(cls, language: str):
|
|
"""
|
|
Get recommended apps and categories.
|
|
:param language: language
|
|
:return:
|
|
"""
|
|
mode = dify_config.HOSTED_FETCH_APP_TEMPLATES_MODE
|
|
retrieval_instance = RecommendAppRetrievalFactory.get_recommend_app_factory(mode)()
|
|
result = retrieval_instance.get_recommended_apps_and_categories(language)
|
|
if not result.get("recommended_apps"):
|
|
result = (
|
|
RecommendAppRetrievalFactory.get_buildin_recommend_app_retrieval().fetch_recommended_apps_from_builtin(
|
|
"en-US"
|
|
)
|
|
)
|
|
|
|
return result
|
|
|
|
@classmethod
|
|
def get_recommend_app_detail(cls, app_id: str) -> Optional[dict]:
|
|
"""
|
|
Get recommend app detail.
|
|
:param app_id: app id
|
|
:return:
|
|
"""
|
|
mode = dify_config.HOSTED_FETCH_APP_TEMPLATES_MODE
|
|
retrieval_instance = RecommendAppRetrievalFactory.get_recommend_app_factory(mode)()
|
|
result: dict = retrieval_instance.get_recommend_app_detail(app_id)
|
|
return result
|