|  | @@ -482,6 +482,158 @@ LLM_BASE_MODELS = [
 | 
	
		
			
				|  |  |              )
 | 
	
		
			
				|  |  |          )
 | 
	
		
			
				|  |  |      ),
 | 
	
		
			
				|  |  | +    AzureBaseModel(
 | 
	
		
			
				|  |  | +        base_model_name='gpt-4o',
 | 
	
		
			
				|  |  | +        entity=AIModelEntity(
 | 
	
		
			
				|  |  | +            model='fake-deployment-name',
 | 
	
		
			
				|  |  | +            label=I18nObject(
 | 
	
		
			
				|  |  | +                en_US='fake-deployment-name-label',
 | 
	
		
			
				|  |  | +            ),
 | 
	
		
			
				|  |  | +            model_type=ModelType.LLM,
 | 
	
		
			
				|  |  | +            features=[
 | 
	
		
			
				|  |  | +                ModelFeature.AGENT_THOUGHT,
 | 
	
		
			
				|  |  | +                ModelFeature.VISION,
 | 
	
		
			
				|  |  | +                ModelFeature.MULTI_TOOL_CALL,
 | 
	
		
			
				|  |  | +                ModelFeature.STREAM_TOOL_CALL,
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            fetch_from=FetchFrom.CUSTOMIZABLE_MODEL,
 | 
	
		
			
				|  |  | +            model_properties={
 | 
	
		
			
				|  |  | +                ModelPropertyKey.MODE: LLMMode.CHAT.value,
 | 
	
		
			
				|  |  | +                ModelPropertyKey.CONTEXT_SIZE: 128000,
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +            parameter_rules=[
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='temperature',
 | 
	
		
			
				|  |  | +                    **PARAMETER_RULE_TEMPLATE[DefaultParameterName.TEMPERATURE],
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='top_p',
 | 
	
		
			
				|  |  | +                    **PARAMETER_RULE_TEMPLATE[DefaultParameterName.TOP_P],
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='presence_penalty',
 | 
	
		
			
				|  |  | +                    **PARAMETER_RULE_TEMPLATE[DefaultParameterName.PRESENCE_PENALTY],
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='frequency_penalty',
 | 
	
		
			
				|  |  | +                    **PARAMETER_RULE_TEMPLATE[DefaultParameterName.FREQUENCY_PENALTY],
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                _get_max_tokens(default=512, min_val=1, max_val=4096),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='seed',
 | 
	
		
			
				|  |  | +                    label=I18nObject(
 | 
	
		
			
				|  |  | +                        zh_Hans='种子',
 | 
	
		
			
				|  |  | +                        en_US='Seed'
 | 
	
		
			
				|  |  | +                    ),
 | 
	
		
			
				|  |  | +                    type='int',
 | 
	
		
			
				|  |  | +                    help=I18nObject(
 | 
	
		
			
				|  |  | +                        zh_Hans='如果指定,模型将尽最大努力进行确定性采样,使得重复的具有相同种子和参数的请求应该返回相同的结果。不能保证确定性,您应该参考 system_fingerprint 响应参数来监视变化。',
 | 
	
		
			
				|  |  | +                        en_US='If specified, model will make a best effort to sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed, and you should refer to the system_fingerprint response parameter to monitor changes in the backend.'
 | 
	
		
			
				|  |  | +                    ),
 | 
	
		
			
				|  |  | +                    required=False,
 | 
	
		
			
				|  |  | +                    precision=2,
 | 
	
		
			
				|  |  | +                    min=0,
 | 
	
		
			
				|  |  | +                    max=1,
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='response_format',
 | 
	
		
			
				|  |  | +                    label=I18nObject(
 | 
	
		
			
				|  |  | +                        zh_Hans='回复格式',
 | 
	
		
			
				|  |  | +                        en_US='response_format'
 | 
	
		
			
				|  |  | +                    ),
 | 
	
		
			
				|  |  | +                    type='string',
 | 
	
		
			
				|  |  | +                    help=I18nObject(
 | 
	
		
			
				|  |  | +                        zh_Hans='指定模型必须输出的格式',
 | 
	
		
			
				|  |  | +                        en_US='specifying the format that the model must output'
 | 
	
		
			
				|  |  | +                    ),
 | 
	
		
			
				|  |  | +                    required=False,
 | 
	
		
			
				|  |  | +                    options=['text', 'json_object']
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            pricing=PriceConfig(
 | 
	
		
			
				|  |  | +                input=5.00,
 | 
	
		
			
				|  |  | +                output=15.00,
 | 
	
		
			
				|  |  | +                unit=0.000001,
 | 
	
		
			
				|  |  | +                currency='USD',
 | 
	
		
			
				|  |  | +            )
 | 
	
		
			
				|  |  | +        )
 | 
	
		
			
				|  |  | +    ),
 | 
	
		
			
				|  |  | +    AzureBaseModel(
 | 
	
		
			
				|  |  | +        base_model_name='gpt-4o-2024-05-13',
 | 
	
		
			
				|  |  | +        entity=AIModelEntity(
 | 
	
		
			
				|  |  | +            model='fake-deployment-name',
 | 
	
		
			
				|  |  | +            label=I18nObject(
 | 
	
		
			
				|  |  | +                en_US='fake-deployment-name-label',
 | 
	
		
			
				|  |  | +            ),
 | 
	
		
			
				|  |  | +            model_type=ModelType.LLM,
 | 
	
		
			
				|  |  | +            features=[
 | 
	
		
			
				|  |  | +                ModelFeature.AGENT_THOUGHT,
 | 
	
		
			
				|  |  | +                ModelFeature.VISION,
 | 
	
		
			
				|  |  | +                ModelFeature.MULTI_TOOL_CALL,
 | 
	
		
			
				|  |  | +                ModelFeature.STREAM_TOOL_CALL,
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            fetch_from=FetchFrom.CUSTOMIZABLE_MODEL,
 | 
	
		
			
				|  |  | +            model_properties={
 | 
	
		
			
				|  |  | +                ModelPropertyKey.MODE: LLMMode.CHAT.value,
 | 
	
		
			
				|  |  | +                ModelPropertyKey.CONTEXT_SIZE: 128000,
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  | +            parameter_rules=[
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='temperature',
 | 
	
		
			
				|  |  | +                    **PARAMETER_RULE_TEMPLATE[DefaultParameterName.TEMPERATURE],
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='top_p',
 | 
	
		
			
				|  |  | +                    **PARAMETER_RULE_TEMPLATE[DefaultParameterName.TOP_P],
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='presence_penalty',
 | 
	
		
			
				|  |  | +                    **PARAMETER_RULE_TEMPLATE[DefaultParameterName.PRESENCE_PENALTY],
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='frequency_penalty',
 | 
	
		
			
				|  |  | +                    **PARAMETER_RULE_TEMPLATE[DefaultParameterName.FREQUENCY_PENALTY],
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                _get_max_tokens(default=512, min_val=1, max_val=4096),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='seed',
 | 
	
		
			
				|  |  | +                    label=I18nObject(
 | 
	
		
			
				|  |  | +                        zh_Hans='种子',
 | 
	
		
			
				|  |  | +                        en_US='Seed'
 | 
	
		
			
				|  |  | +                    ),
 | 
	
		
			
				|  |  | +                    type='int',
 | 
	
		
			
				|  |  | +                    help=I18nObject(
 | 
	
		
			
				|  |  | +                        zh_Hans='如果指定,模型将尽最大努力进行确定性采样,使得重复的具有相同种子和参数的请求应该返回相同的结果。不能保证确定性,您应该参考 system_fingerprint 响应参数来监视变化。',
 | 
	
		
			
				|  |  | +                        en_US='If specified, model will make a best effort to sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed, and you should refer to the system_fingerprint response parameter to monitor changes in the backend.'
 | 
	
		
			
				|  |  | +                    ),
 | 
	
		
			
				|  |  | +                    required=False,
 | 
	
		
			
				|  |  | +                    precision=2,
 | 
	
		
			
				|  |  | +                    min=0,
 | 
	
		
			
				|  |  | +                    max=1,
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +                ParameterRule(
 | 
	
		
			
				|  |  | +                    name='response_format',
 | 
	
		
			
				|  |  | +                    label=I18nObject(
 | 
	
		
			
				|  |  | +                        zh_Hans='回复格式',
 | 
	
		
			
				|  |  | +                        en_US='response_format'
 | 
	
		
			
				|  |  | +                    ),
 | 
	
		
			
				|  |  | +                    type='string',
 | 
	
		
			
				|  |  | +                    help=I18nObject(
 | 
	
		
			
				|  |  | +                        zh_Hans='指定模型必须输出的格式',
 | 
	
		
			
				|  |  | +                        en_US='specifying the format that the model must output'
 | 
	
		
			
				|  |  | +                    ),
 | 
	
		
			
				|  |  | +                    required=False,
 | 
	
		
			
				|  |  | +                    options=['text', 'json_object']
 | 
	
		
			
				|  |  | +                ),
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            pricing=PriceConfig(
 | 
	
		
			
				|  |  | +                input=5.00,
 | 
	
		
			
				|  |  | +                output=15.00,
 | 
	
		
			
				|  |  | +                unit=0.000001,
 | 
	
		
			
				|  |  | +                currency='USD',
 | 
	
		
			
				|  |  | +            )
 | 
	
		
			
				|  |  | +        )
 | 
	
		
			
				|  |  | +    ),
 | 
	
		
			
				|  |  |      AzureBaseModel(
 | 
	
		
			
				|  |  |          base_model_name='gpt-4-turbo',
 | 
	
		
			
				|  |  |          entity=AIModelEntity(
 |