| 12345678910111213141516171819202122232425262728293031323334353637 | # -*- coding:utf-8 -*-from flask_restful import marshal_with, fieldsfrom controllers.console import apifrom controllers.console.universal_chat.wraps import UniversalChatResourcefrom core.llm.llm_builder import LLMBuilderfrom models.provider import ProviderNamefrom models.model import Appclass UniversalChatParameterApi(UniversalChatResource):    """Resource for app variables."""    parameters_fields = {        'opening_statement': fields.String,        'suggested_questions': fields.Raw,        'suggested_questions_after_answer': fields.Raw,        'speech_to_text': fields.Raw,    }    @marshal_with(parameters_fields)    def get(self, universal_app: App):        """Retrieve app parameters."""        app_model = universal_app        app_model_config = app_model.app_model_config        provider_name = LLMBuilder.get_default_provider(universal_app.tenant_id, 'whisper-1')        return {            'opening_statement': app_model_config.opening_statement,            'suggested_questions': app_model_config.suggested_questions_list,            'suggested_questions_after_answer': app_model_config.suggested_questions_after_answer_dict,            'speech_to_text': app_model_config.speech_to_text_dict if provider_name == ProviderName.OPENAI.value else { 'enabled': False },        }api.add_resource(UniversalChatParameterApi, '/universal-chat/parameters')
 |