MCPcopy
hub / github.com/lm-sys/FastChat / get_gen_params

Function get_gen_params

fastchat/serve/openai_api_server.py:269–365  ·  view source on GitHub ↗
(
    model_name: str,
    worker_addr: str,
    messages: Union[str, List[Dict[str, str]]],
    *,
    temperature: float,
    top_p: float,
    top_k: Optional[int],
    presence_penalty: Optional[float],
    frequency_penalty: Optional[float],
    max_tokens: Optional[int],
    echo: Optional[bool],
    logprobs: Optional[int] = None,
    stop: Optional[Union[str, List[str]]],
    best_of: Optional[int] = None,
    use_beam_search: Optional[bool] = None,
)

Source from the content-addressed store, hash-verified

267
268
269async def get_gen_params(
270 model_name: str,
271 worker_addr: str,
272 messages: Union[str, List[Dict[str, str]]],
273 *,
274 temperature: float,
275 top_p: float,
276 top_k: Optional[int],
277 presence_penalty: Optional[float],
278 frequency_penalty: Optional[float],
279 max_tokens: Optional[int],
280 echo: Optional[bool],
281 logprobs: Optional[int] = None,
282 stop: Optional[Union[str, List[str]]],
283 best_of: Optional[int] = None,
284 use_beam_search: Optional[bool] = None,
285) -> Dict[str, Any]:
286 conv = await get_conv(model_name, worker_addr)
287 conv = Conversation(
288 name=conv["name"],
289 system_template=conv["system_template"],
290 system_message=conv["system_message"],
291 roles=conv["roles"],
292 messages=list(conv["messages"]), # prevent in-place modification
293 offset=conv["offset"],
294 sep_style=SeparatorStyle(conv["sep_style"]),
295 sep=conv["sep"],
296 sep2=conv["sep2"],
297 stop_str=conv["stop_str"],
298 stop_token_ids=conv["stop_token_ids"],
299 )
300
301 if isinstance(messages, str):
302 prompt = messages
303 images = []
304 else:
305 for message in messages:
306 msg_role = message["role"]
307 if msg_role == "system":
308 conv.set_system_message(message["content"])
309 elif msg_role == "user":
310 if type(message["content"]) == list:
311 image_list = [
312 item["image_url"]["url"]
313 for item in message["content"]
314 if item["type"] == "image_url"
315 ]
316 text_list = [
317 item["text"]
318 for item in message["content"]
319 if item["type"] == "text"
320 ]
321
322 text = "\n".join(text_list)
323 conv.append_message(conv.roles[0], (text, image_list))
324 else:
325 conv.append_message(conv.roles[0], message["content"])
326 elif msg_role == "assistant":

Callers 3

create_chat_completionFunction · 0.85
create_completionFunction · 0.85

Calls 8

set_system_messageMethod · 0.95
append_messageMethod · 0.95
get_promptMethod · 0.95
get_imagesMethod · 0.95
ConversationClass · 0.90
SeparatorStyleClass · 0.90
get_convFunction · 0.85
_add_to_setFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…