fix: prevent AI coach chat replies from truncating mid-sentence

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-06-11 00:44:08 +08:00
parent 0e2e360ccf
commit 6169fee7b9
5 changed files with 221 additions and 36 deletions
+11 -2
View File
@@ -9,7 +9,7 @@ _REPO_ROOT = Path(__file__).resolve().parents[2]
if str(_REPO_ROOT) not in sys.path:
sys.path.insert(0, str(_REPO_ROOT))
from ai_client import ai_generate, ai_provider_label # noqa: E402
from ai_client import ai_generate, ai_generate_chat, ai_provider_label # noqa: E402
def model_label() -> str:
@@ -23,11 +23,20 @@ def generate_text(
temperature: float,
images_b64: Optional[Sequence[str]] = None,
max_tokens: int | None = None,
max_continuations: int = 3,
) -> str:
if max_tokens is not None and max_tokens > 0:
return ai_generate_chat(
system=system,
user=user,
temperature=temperature,
images_b64=images_b64,
max_tokens=int(max_tokens),
max_continuations=max_continuations,
)
prompt = f"{system.strip()}\n\n---\n\n{user.strip()}"
return ai_generate(
prompt,
temperature=temperature,
images_b64=images_b64,
max_tokens=max_tokens,
)