mirror of
https://github.com/qodo-ai/pr-agent.git
synced 2025-07-03 12:20:38 +08:00
Merge pull request #1279 from Codium-ai/tr/o1_system
feat: add support for O1 model by combining system and user prompt
This commit is contained in:
@ -171,6 +171,7 @@ class LiteLLMAIHandler(BaseAiHandler):
|
|||||||
get_logger().warning(
|
get_logger().warning(
|
||||||
"Empty system prompt for claude model. Adding a newline character to prevent OpenAI API error.")
|
"Empty system prompt for claude model. Adding a newline character to prevent OpenAI API error.")
|
||||||
messages = [{"role": "system", "content": system}, {"role": "user", "content": user}]
|
messages = [{"role": "system", "content": system}, {"role": "user", "content": user}]
|
||||||
|
|
||||||
if img_path:
|
if img_path:
|
||||||
try:
|
try:
|
||||||
# check if the image link is alive
|
# check if the image link is alive
|
||||||
@ -185,6 +186,21 @@ class LiteLLMAIHandler(BaseAiHandler):
|
|||||||
messages[1]["content"] = [{"type": "text", "text": messages[1]["content"]},
|
messages[1]["content"] = [{"type": "text", "text": messages[1]["content"]},
|
||||||
{"type": "image_url", "image_url": {"url": img_path}}]
|
{"type": "image_url", "image_url": {"url": img_path}}]
|
||||||
|
|
||||||
|
# Currently O1 does not support separate system and user prompts
|
||||||
|
O1_MODEL_PREFIX = 'o1-'
|
||||||
|
if model.startswith(O1_MODEL_PREFIX):
|
||||||
|
user = f"{system}\n\n\n{user}"
|
||||||
|
system = ""
|
||||||
|
get_logger().info(f"Using O1 model, combining system and user prompts")
|
||||||
|
messages = [{"role": "user", "content": user}]
|
||||||
|
kwargs = {
|
||||||
|
"model": model,
|
||||||
|
"deployment_id": deployment_id,
|
||||||
|
"messages": messages,
|
||||||
|
"timeout": get_settings().config.ai_timeout,
|
||||||
|
"api_base": self.api_base,
|
||||||
|
}
|
||||||
|
else:
|
||||||
kwargs = {
|
kwargs = {
|
||||||
"model": model,
|
"model": model,
|
||||||
"deployment_id": deployment_id,
|
"deployment_id": deployment_id,
|
||||||
|
Reference in New Issue
Block a user