mirror of
https://github.com/lobehub/lobehub.git
synced 2026-09-20 04:56:13 +08:00
119c09ab39
* ♻️ refactor(mecha): decide the model parameters of an LLM call in the shared core Move the model-parameter rules out of the server's per-attempt hints into `@lobechat/mecha` as `resolveModelParams(request, providers)`: which extend params the model consumes (user row → provider card → canonical card), where the reasoning effort comes from (topic pin, only for the pinned model and, in a group topic, the answering agent → model-instance config → sub-agent override), when assistant reasoning must be replayed (Kimi, DeepSeek thinking, Meta, card support, provider fallback), the capability defaults the context may assume, the history window, and the stream flag. The server adapter now only supplies lookups (`createServerModelParamsProviders`) and the run's frozen snapshots. `stream` falls back to the agent's `chatConfig.enableStreaming` when the operation did not pin one; the DeepSeek model-id predicates move to a dependency-free module so the shared package can import them without the model bank. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> * 🐛 fix(server): trace the streaming mode the request really uses The chat span recorded `ctx.stream ?? true` while the payload now honours the agent's chat config, so a newly non-streaming request was labelled as streaming in telemetry. The built context rides along on the LLM trace input and both the payload and the span read the same resolved value. Also point the add-model-provider integration map at the shared resolver as the policy owner. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>