(
self,
api_key: Optional[str] = None,
workspace_id: Optional[str] = None,
chat_completion_parser: Callable[[Completion], Any] = None,
input_type: Literal["text", "messages"] = "text",
base_url: Optional[str] = None,
env_base_url_name: str = "DASHSCOPE_BASE_URL",
env_api_key_name: str = "DASHSCOPE_API_KEY",
env_workspace_id_name: str = "DASHSCOPE_WORKSPACE_ID",
)
| 118 | """ |
| 119 | |
| 120 | def __init__( |
| 121 | self, |
| 122 | api_key: Optional[str] = None, |
| 123 | workspace_id: Optional[str] = None, |
| 124 | chat_completion_parser: Callable[[Completion], Any] = None, |
| 125 | input_type: Literal["text", "messages"] = "text", |
| 126 | base_url: Optional[str] = None, |
| 127 | env_base_url_name: str = "DASHSCOPE_BASE_URL", |
| 128 | env_api_key_name: str = "DASHSCOPE_API_KEY", |
| 129 | env_workspace_id_name: str = "DASHSCOPE_WORKSPACE_ID", |
| 130 | ): |
| 131 | super().__init__() |
| 132 | self._api_key = api_key |
| 133 | self._workspace_id = workspace_id |
| 134 | self._env_api_key_name = env_api_key_name |
| 135 | self._env_workspace_id_name = env_workspace_id_name |
| 136 | self._env_base_url_name = env_base_url_name |
| 137 | self.base_url = base_url or os.getenv(self._env_base_url_name, "https://dashscope.aliyuncs.com/compatible-mode/v1") |
| 138 | self.sync_client = self.init_sync_client() |
| 139 | self.async_client = None |
| 140 | |
| 141 | # Force use of get_first_message_content to ensure string output |
| 142 | self.chat_completion_parser = get_first_message_content |
| 143 | self._input_type = input_type |
| 144 | self._api_kwargs = {} |
| 145 | |
| 146 | def _prepare_client_config(self): |
| 147 | """ |
no test coverage detected