forked from phoenix/litellm-mirror
fix handle user message
This commit is contained in:
parent
ded40e4d41
commit
0f24f339f3
2 changed files with 8 additions and 4 deletions
|
@ -15,6 +15,7 @@ import types
|
|||
from typing import Any, List, Optional, Union
|
||||
|
||||
import litellm
|
||||
from litellm.types.llms.openai import AllMessageValues, ChatCompletionUserMessage
|
||||
|
||||
from .openai import OpenAIConfig
|
||||
|
||||
|
@ -78,16 +79,19 @@ class OpenAIO1Config(OpenAIConfig):
|
|||
return True
|
||||
return False
|
||||
|
||||
def o1_prompt_factory(self, messages: List[Any]):
|
||||
def o1_prompt_factory(self, messages: List[AllMessageValues]):
|
||||
"""
|
||||
Handles limitations of O-1 model family.
|
||||
- modalities: image => drop param (if user opts in to dropping param)
|
||||
- role: system ==> translate to role 'user'
|
||||
"""
|
||||
|
||||
for message in messages:
|
||||
for i, message in enumerate(messages):
|
||||
if message["role"] == "system":
|
||||
message["role"] = "user"
|
||||
new_message = ChatCompletionUserMessage(
|
||||
content=message["content"], role="user"
|
||||
)
|
||||
messages[i] = new_message # Replace the old message with the new one
|
||||
|
||||
if isinstance(message["content"], list):
|
||||
new_content = []
|
||||
|
|
|
@ -6,7 +6,7 @@ from typing import Any, Dict, List, Literal, Optional, Tuple, Union
|
|||
|
||||
from openai._models import BaseModel as OpenAIObject
|
||||
from openai.types.audio.transcription_create_params import FileTypes
|
||||
from openai.types.completion_usage import CompletionUsage
|
||||
from openai.types.completion_usage import CompletionTokensDetails, CompletionUsage
|
||||
from pydantic import ConfigDict, Field, PrivateAttr
|
||||
from typing_extensions import Callable, Dict, Required, TypedDict, override
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue