Add all messages into context, limit output token count
This commit is contained in:
parent
277c9cfdb2
commit
0733d178d0
@ -237,6 +237,7 @@ class GameEngine:
|
|||||||
"api_key": None,
|
"api_key": None,
|
||||||
"api_base": None,
|
"api_base": None,
|
||||||
"temperature": 0.8,
|
"temperature": 0.8,
|
||||||
|
"max_tokens": 300,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
self._save_config()
|
self._save_config()
|
||||||
@ -268,6 +269,10 @@ class GameEngine:
|
|||||||
def temperature(self) -> float:
|
def temperature(self) -> float:
|
||||||
return self.config.get("llm", {}).get("temperature", 0.8)
|
return self.config.get("llm", {}).get("temperature", 0.8)
|
||||||
|
|
||||||
|
@property
|
||||||
|
def max_tokens(self) -> int:
|
||||||
|
return self.config.get("llm", {}).get("max_tokens", 512)
|
||||||
|
|
||||||
def _set_llm_env(self) -> None:
|
def _set_llm_env(self) -> None:
|
||||||
"""Set provider-specific env vars for litellm."""
|
"""Set provider-specific env vars for litellm."""
|
||||||
prefix = self.model.split("/")[0].upper()
|
prefix = self.model.split("/")[0].upper()
|
||||||
@ -812,7 +817,7 @@ class GameEngine:
|
|||||||
temperature=self.temperature,
|
temperature=self.temperature,
|
||||||
stream=False,
|
stream=False,
|
||||||
timeout=60,
|
timeout=60,
|
||||||
max_tokens=512,
|
max_tokens=self.max_tokens,
|
||||||
)
|
)
|
||||||
text = response.choices[0].message.content or ""
|
text = response.choices[0].message.content or ""
|
||||||
self._append_llm_log(
|
self._append_llm_log(
|
||||||
@ -888,7 +893,7 @@ class GameEngine:
|
|||||||
on_debug("tool_result", {"round": attempt, "tool": name, "result": result})
|
on_debug("tool_result", {"round": attempt, "tool": name, "result": result})
|
||||||
round_log.append(" finalize_turn ignored (mixed with get tools)")
|
round_log.append(" finalize_turn ignored (mixed with get tools)")
|
||||||
debug_entries.append("\n".join(round_log))
|
debug_entries.append("\n".join(round_log))
|
||||||
messages = messages[:2]
|
# messages = messages[:2] # keep full history across rounds so LLM can learn from prior attempts
|
||||||
messages.append({"role": "assistant", "content": text})
|
messages.append({"role": "assistant", "content": text})
|
||||||
messages.append({
|
messages.append({
|
||||||
"role": "user",
|
"role": "user",
|
||||||
@ -928,7 +933,7 @@ class GameEngine:
|
|||||||
)
|
)
|
||||||
round_log.append(f" finalize_turn validation errors: {', '.join(errs)}")
|
round_log.append(f" finalize_turn validation errors: {', '.join(errs)}")
|
||||||
debug_entries.append("\n".join(round_log))
|
debug_entries.append("\n".join(round_log))
|
||||||
messages = messages[:2]
|
# messages = messages[:2] # keep full history across rounds so LLM can learn from prior attempts
|
||||||
messages.append({"role": "assistant", "content": text})
|
messages.append({"role": "assistant", "content": text})
|
||||||
messages.append({
|
messages.append({
|
||||||
"role": "user",
|
"role": "user",
|
||||||
@ -990,7 +995,7 @@ class GameEngine:
|
|||||||
round_log.append(f" {name}: OK")
|
round_log.append(f" {name}: OK")
|
||||||
if on_debug:
|
if on_debug:
|
||||||
on_debug("tool_result", {"round": attempt, "tool": name, "result": result})
|
on_debug("tool_result", {"round": attempt, "tool": name, "result": result})
|
||||||
messages = messages[:2]
|
# messages = messages[:2] # keep full history across rounds so LLM can learn from prior attempts
|
||||||
messages.append({"role": "assistant", "content": text})
|
messages.append({"role": "assistant", "content": text})
|
||||||
messages.append({
|
messages.append({
|
||||||
"role": "user",
|
"role": "user",
|
||||||
@ -1018,7 +1023,7 @@ class GameEngine:
|
|||||||
on_debug("thought", {"round": attempt, "text": text.strip()})
|
on_debug("thought", {"round": attempt, "text": text.strip()})
|
||||||
|
|
||||||
debug_entries.append("\n".join(round_log))
|
debug_entries.append("\n".join(round_log))
|
||||||
messages = messages[:2]
|
# messages = messages[:2] # keep full history across rounds so LLM can learn from prior attempts
|
||||||
messages.append({"role": "assistant", "content": text})
|
messages.append({"role": "assistant", "content": text})
|
||||||
reminder_count += 1
|
reminder_count += 1
|
||||||
if reminder_count % 3 == 0:
|
if reminder_count % 3 == 0:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user