fix(agent): inject model identity for Alibaba Coding Plan to work around API returning wrong model name

This commit is contained in:
ygd58
2026-03-21 14:35:02 +01:00
committed by Teknium
parent bc3f425212
commit 2ea8054304

View File

@@ -2329,6 +2329,18 @@ class AIAgent:
timestamp_line += f"\nProvider: {self.provider}"
prompt_parts.append(timestamp_line)
# Alibaba Coding Plan API always returns "glm-4.7" as model name regardless
# of the requested model. Inject explicit model identity into the system prompt
# so the agent can correctly report which model it is (workaround for API bug).
if self.provider in ("alibaba-coding-plan", "alibaba-coding-plan-anthropic"):
_model_short = self.model.split("/")[-1] if "/" in self.model else self.model
prompt_parts.append(
f"You are powered by the model named {_model_short}. "
f"The exact model ID is {self.model}. "
f"When asked what model you are, always answer based on this information, "
f"not on any model name returned by the API."
)
platform_key = (self.platform or "").lower().strip()
if platform_key in PLATFORM_HINTS:
prompt_parts.append(PLATFORM_HINTS[platform_key])