feat: restore full-fidelity heaven rituals
This commit is contained in:
+1
-13
@@ -60,24 +60,12 @@ def interpret_heaven(
|
||||
except (urllib.error.URLError, TimeoutError, json.JSONDecodeError, KeyError, IndexError) as exc:
|
||||
raise HeavenAgentError(f"问天模型调用失败:{exc}") from exc
|
||||
return {
|
||||
"answer": _limit_answer(mode, answer),
|
||||
"answer": answer,
|
||||
"model": model,
|
||||
"latency_ms": round((time.perf_counter() - started) * 1000),
|
||||
}
|
||||
|
||||
|
||||
def _limit_answer(mode: str, answer: str) -> str:
|
||||
limits = {"trend": 520, "fortune": 680, "heart": 380}
|
||||
limit = limits[mode]
|
||||
if len(answer) <= limit:
|
||||
return answer
|
||||
window = answer[:limit]
|
||||
cut = max(window.rfind(mark) for mark in ("。", "?", "!", "\n"))
|
||||
if cut < int(limit * 0.65):
|
||||
cut = limit
|
||||
return window[:cut + 1].rstrip() + "……"
|
||||
|
||||
|
||||
def _system_prompt(mode: str) -> str:
|
||||
common = """
|
||||
你是“小白复盘”的问天解读器。所有历法、卦象、爻位和市场指标已经由确定性程序计算,你只能解释提供的数据,不得改卦、改爻、改干支或编造行情。
|
||||
|
||||
Reference in New Issue
Block a user