mirror of
https://github.com/langgenius/dify.git
synced 2026-05-08 11:47:35 +08:00
Co-authored-by: jyong <718720800@qq.com> Co-authored-by: Yansong Zhang <916125788@qq.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: hj24 <mambahj24@gmail.com> Co-authored-by: hj24 <huangjian@dify.ai> Co-authored-by: Joel <iamjoel007@gmail.com> Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com> Co-authored-by: CodingOnStar <hanxujiang@dify.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
33 lines
1.3 KiB
Python
33 lines
1.3 KiB
Python
from flask_login import current_user
|
|
from flask_restx import Resource
|
|
from graphon.model_runtime.utils.encoders import jsonable_encoder
|
|
|
|
from controllers.service_api import service_api_ns
|
|
from controllers.service_api.wraps import validate_dataset_token
|
|
from services.model_provider_service import ModelProviderService
|
|
|
|
|
|
@service_api_ns.route("/workspaces/current/models/model-types/<string:model_type>")
|
|
class ModelProviderAvailableModelApi(Resource):
|
|
@service_api_ns.doc("get_available_models")
|
|
@service_api_ns.doc(description="Get available models by model type")
|
|
@service_api_ns.doc(params={"model_type": "Type of model to retrieve"})
|
|
@service_api_ns.doc(
|
|
responses={
|
|
200: "Models retrieved successfully",
|
|
401: "Unauthorized - invalid API token",
|
|
}
|
|
)
|
|
@validate_dataset_token
|
|
def get(self, _, model_type: str):
|
|
"""Get available models by model type.
|
|
|
|
Returns a list of available models for the specified model type.
|
|
"""
|
|
tenant_id = current_user.current_tenant_id
|
|
|
|
model_provider_service = ModelProviderService()
|
|
models = model_provider_service.get_models_by_model_type(tenant_id=tenant_id, model_type=model_type)
|
|
|
|
return jsonable_encoder({"data": models})
|