Skip to content

Commit

Permalink
Bug fix tongyi.py to be compatible with DashScope API (#11956)
Browse files Browse the repository at this point in the history
Current ChatTongyi is not compatible with DashScope API, which will
cause error when passing api key to chat model directly.
- **Description:** Update tongyi.py to be compatible with DashScope API.
Specifically, update parameter name "dashscope_api_key" to "api_key".
  - **Issue:** None.
- **Dependencies:** Nothing new, Tongyi would require DashScope as
before.
  • Loading branch information
verlocks authored Oct 20, 2023
1 parent 39f65fb commit 5dbe456
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion libs/langchain/langchain/chat_models/tongyi.py
Original file line number Diff line number Diff line change
Expand Up @@ -318,7 +318,14 @@ def _generate(
)
return _generate_from_stream(stream_iter)

if not messages:
raise ValueError("No messages provided.")

message_dicts, params = self._create_message_dicts(messages, stop)

if message_dicts[-1]["role"] != "user":
raise ValueError("Last message should be user message.")

params = {**params, **kwargs}
response = self.completion_with_retry(
messages=message_dicts, run_manager=run_manager, **params
Expand Down Expand Up @@ -374,7 +381,7 @@ def _create_message_dicts(
def _client_params(self) -> Dict[str, Any]:
"""Get the parameters used for the openai client."""
creds: Dict[str, Any] = {
"dashscope_api_key": self.dashscope_api_key,
"api_key": self.dashscope_api_key,
}
return {**self._default_params, **creds}

Expand Down

0 comments on commit 5dbe456

Please sign in to comment.