| return rule | return rule | ||||
| def _get_o1_max_tokens(default: int, min_val: int, max_val: int) -> ParameterRule: | |||||
| rule = ParameterRule( | |||||
| name="max_completion_tokens", | |||||
| **PARAMETER_RULE_TEMPLATE[DefaultParameterName.MAX_TOKENS], | |||||
| ) | |||||
| rule.default = default | |||||
| rule.min = min_val | |||||
| rule.max = max_val | |||||
| return rule | |||||
| class AzureBaseModel(BaseModel): | class AzureBaseModel(BaseModel): | ||||
| base_model_name: str | base_model_name: str | ||||
| entity: AIModelEntity | entity: AIModelEntity | ||||
| ModelPropertyKey.CONTEXT_SIZE: 128000, | ModelPropertyKey.CONTEXT_SIZE: 128000, | ||||
| }, | }, | ||||
| parameter_rules=[ | parameter_rules=[ | ||||
| ParameterRule( | |||||
| name="temperature", | |||||
| **PARAMETER_RULE_TEMPLATE[DefaultParameterName.TEMPERATURE], | |||||
| ), | |||||
| ParameterRule( | |||||
| name="top_p", | |||||
| **PARAMETER_RULE_TEMPLATE[DefaultParameterName.TOP_P], | |||||
| ), | |||||
| ParameterRule( | ParameterRule( | ||||
| name="response_format", | name="response_format", | ||||
| label=I18nObject(zh_Hans="回复格式", en_US="response_format"), | label=I18nObject(zh_Hans="回复格式", en_US="response_format"), | ||||
| required=False, | required=False, | ||||
| options=["text", "json_object"], | options=["text", "json_object"], | ||||
| ), | ), | ||||
| _get_max_tokens(default=512, min_val=1, max_val=32768), | |||||
| _get_o1_max_tokens(default=512, min_val=1, max_val=32768), | |||||
| ], | ], | ||||
| pricing=PriceConfig( | pricing=PriceConfig( | ||||
| input=15.00, | input=15.00, | ||||
| ModelPropertyKey.CONTEXT_SIZE: 128000, | ModelPropertyKey.CONTEXT_SIZE: 128000, | ||||
| }, | }, | ||||
| parameter_rules=[ | parameter_rules=[ | ||||
| ParameterRule( | |||||
| name="temperature", | |||||
| **PARAMETER_RULE_TEMPLATE[DefaultParameterName.TEMPERATURE], | |||||
| ), | |||||
| ParameterRule( | |||||
| name="top_p", | |||||
| **PARAMETER_RULE_TEMPLATE[DefaultParameterName.TOP_P], | |||||
| ), | |||||
| ParameterRule( | ParameterRule( | ||||
| name="response_format", | name="response_format", | ||||
| label=I18nObject(zh_Hans="回复格式", en_US="response_format"), | label=I18nObject(zh_Hans="回复格式", en_US="response_format"), | ||||
| required=False, | required=False, | ||||
| options=["text", "json_object"], | options=["text", "json_object"], | ||||
| ), | ), | ||||
| _get_max_tokens(default=512, min_val=1, max_val=65536), | |||||
| _get_o1_max_tokens(default=512, min_val=1, max_val=65536), | |||||
| ], | ], | ||||
| pricing=PriceConfig( | pricing=PriceConfig( | ||||
| input=3.00, | input=3.00, |