mirror of
https://ghfast.top/https://github.com/aeroxw/easy_tdx_max.git
synced 2026-09-12 18:04:20 +08:00
docs+style: README 隆重介绍 v1.29 AI 深度辅助(认知自由叙事);ruff format 对齐 CI
This commit is contained in:
@@ -201,8 +201,7 @@ def resolve_config(cfg: LlmConfig | None = None) -> LlmConfig:
|
||||
c.model = preset.default_model
|
||||
if not c.api_url or not c.model:
|
||||
raise ValueError(
|
||||
f"LLM 配置不完整:provider={c.provider} 缺少 api_url 或 model,"
|
||||
"请在 AI 设置中补全"
|
||||
f"LLM 配置不完整:provider={c.provider} 缺少 api_url 或 model,请在 AI 设置中补全"
|
||||
)
|
||||
return c
|
||||
|
||||
|
||||
@@ -66,8 +66,7 @@ def session_info(now: datetime | None = None, *, tz: tzinfo | None = None) -> di
|
||||
return {
|
||||
"is_trading_time": is_trading_time(t),
|
||||
"sessions": [
|
||||
{"start": s.strftime("%H:%M"), "end": e.strftime("%H:%M")}
|
||||
for s, e in SESSION_WINDOWS
|
||||
{"start": s.strftime("%H:%M"), "end": e.strftime("%H:%M")} for s, e in SESSION_WINDOWS
|
||||
],
|
||||
"session_desc": SESSION_DESC,
|
||||
"server_time": t.isoformat(timespec="seconds"),
|
||||
|
||||
@@ -206,7 +206,11 @@ async def _fetch_120m(
|
||||
_MAX_BARS_PER_FETCH // 2,
|
||||
)
|
||||
df = await client.get_security_bars(
|
||||
market_from_str(market), code, category_from_str("MIN_60"), start, fetch_n,
|
||||
market_from_str(market),
|
||||
code,
|
||||
category_from_str("MIN_60"),
|
||||
start,
|
||||
fetch_n,
|
||||
bar_time=bar_time,
|
||||
)
|
||||
return _resample_pairs(df, count)
|
||||
|
||||
@@ -65,12 +65,8 @@ class LlmChatRequest(BaseModel):
|
||||
|
||||
prompt: str = Field(..., min_length=1, max_length=200_000)
|
||||
system_prompt: str | None = Field(None, description="None = 用配置里的默认系统提示")
|
||||
override: LlmConfigUpdate | None = Field(
|
||||
None, description="临时覆盖配置(不落盘,仅本次调用)"
|
||||
)
|
||||
context: LlmChatContext | None = Field(
|
||||
None, description="策略上下文(随成功解读一并落历史库)"
|
||||
)
|
||||
override: LlmConfigUpdate | None = Field(None, description="临时覆盖配置(不落盘,仅本次调用)")
|
||||
context: LlmChatContext | None = Field(None, description="策略上下文(随成功解读一并落历史库)")
|
||||
|
||||
|
||||
def _merge_api_key(submitted: str, current: str) -> str:
|
||||
@@ -153,7 +149,11 @@ async def update_llm_config(req: LlmConfigUpdate) -> dict[str, Any]:
|
||||
|
||||
|
||||
def _record_history(
|
||||
provider: str, model: str, prompt: str, reply: str, elapsed: float,
|
||||
provider: str,
|
||||
model: str,
|
||||
prompt: str,
|
||||
reply: str,
|
||||
elapsed: float,
|
||||
ctx: LlmChatContext | None,
|
||||
) -> None:
|
||||
"""成功解读旁路落库(llm_history.db)。失败只记日志,不影响解读结果。"""
|
||||
@@ -217,8 +217,12 @@ async def llm_chat_async(req: LlmChatRequest) -> TaskSubmitResponse:
|
||||
_record_history(
|
||||
client.config.provider, client.config.model, req.prompt, reply, elapsed, req.context
|
||||
)
|
||||
return {"reply": reply, "model": client.config.model, "provider": client.config.provider,
|
||||
"elapsed": elapsed}
|
||||
return {
|
||||
"reply": reply,
|
||||
"model": client.config.model,
|
||||
"provider": client.config.provider,
|
||||
"elapsed": elapsed,
|
||||
}
|
||||
|
||||
runner = get_runner()
|
||||
task_id = runner.submit(_run, description=desc)
|
||||
|
||||
Reference in New Issue
Block a user