Skip to content

Commit

Permalink
community[patch]: Standardize qianfan model init args name (#22322)
Browse files Browse the repository at this point in the history
- **Description:**  
    - Standardize qianfan chat model intialization arguments name
        - qianfan_ak (qianfan api key)  -> api_key
        - qianfan_sk (qianfan secret key)  ->  secret_key
       
    - Delete unuse variable
- **Issue:** #20085
  • Loading branch information
maang-h authored and hinthornw committed Jun 20, 2024
1 parent 5f20dd6 commit 44efc03
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -133,19 +133,22 @@ class QianfanChatEndpoint(BaseChatModel):
model_kwargs: Dict[str, Any] = Field(default_factory=dict)
"""extra params for model invoke using with `do`."""

client: Any

qianfan_ak: Optional[SecretStr] = None
qianfan_sk: Optional[SecretStr] = None
client: Any #: :meta private:

qianfan_ak: Optional[SecretStr] = Field(default=None, alias="api_key")
"""Qianfan API KEY"""
qianfan_sk: Optional[SecretStr] = Field(default=None, alias="secret_key")
"""Qianfan SECRET KEY"""
streaming: Optional[bool] = False
"""Whether to stream the results or not."""

request_timeout: Optional[int] = Field(60, alias="timeout")
"""request timeout for chat http requests"""

top_p: Optional[float] = 0.8
"""What probability mass to use."""
temperature: Optional[float] = 0.95
"""What sampling temperature to use."""
penalty_score: Optional[float] = 1
"""Model params, only supported in ERNIE-Bot and ERNIE-Bot-turbo.
In the case of other model, passing these params will not affect the result.
Expand Down Expand Up @@ -292,7 +295,6 @@ def _generate(
"""
if self.streaming:
completion = ""
token_usage = {}
chat_generation_info: Dict = {}
for chunk in self._stream(messages, stop, run_manager, **kwargs):
chat_generation_info = (
Expand Down Expand Up @@ -337,7 +339,6 @@ async def _agenerate(
) -> ChatResult:
if self.streaming:
completion = ""
token_usage = {}
chat_generation_info: Dict = {}
async for chunk in self._astream(messages, stop, run_manager, **kwargs):
chat_generation_info = (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -362,3 +362,19 @@ def test_uses_actual_secret_value_from_secret_str() -> None:
)
assert cast(SecretStr, chat.qianfan_ak).get_secret_value() == "test-api-key"
assert cast(SecretStr, chat.qianfan_sk).get_secret_value() == "test-secret-key"


def test_init_api_key_param() -> None:
"""Test the standardized parameters -- api_key and secret_key"""
for chat in [
QianfanChatEndpoint( # type: ignore[call-arg]
api_key="test-api-key", # type: ignore[arg-type]
secret_key="test-secret-key", # type: ignore[arg-type]
),
QianfanChatEndpoint( # type: ignore[call-arg]
qianfan_ak="test-api-key", # type: ignore[arg-type]
qianfan_sk="test-secret-key", # type: ignore[arg-type]
),
]:
assert cast(SecretStr, chat.qianfan_ak).get_secret_value() == "test-api-key"
assert cast(SecretStr, chat.qianfan_sk).get_secret_value() == "test-secret-key"

0 comments on commit 44efc03

Please sign in to comment.