<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[【踩坑实录】本地 Qwen3.8-Flash-Next 在 agent 循环里"复读死循环"：从 311×2 次重复调用到真根因（贪婪采样）]]></title><description><![CDATA[<p dir="auto">先把机器和环境交代清楚，免得后面对不上号（这也是我一开始的排查方向之一：先确认不是硬件/环境的问题）。</p>
<h2>环境（完整）</h2>
<p dir="auto"><strong>机器</strong></p>
<ul>
<li>CPU：<strong>AMD Ryzen 7 9700X</strong>（8 核 16 线程，最高 5.58 GHz，L3 32 MB），<code>amd_pstate=active</code>，测性能时把 governor 调成 <code>performance</code>、boost 打开</li>
<li>内存：<strong>59 GiB</strong></li>
<li>主卡（跑模型的）：<strong>AMD Radeon AI PRO R9700 32 GB</strong>（RDNA4 / <code>gfx1201</code>），<strong>ROCm 7.2.0</strong>，走 <strong>HIP</strong> 后端</li>
<li>副卡：NVIDIA RTX 4060 8 GB（驱动 610.57.04）——跟这次推理无关，只是插着</li>
<li>系统：<strong>Ubuntu 26.04 LTS</strong>，内核 <code>7.0.0-30-generic</code>，x86_64</li>
</ul>
<p dir="auto"><strong>模型</strong></p>
<ul>
<li><strong>Qwen3.8-Flash-Next</strong>，<strong>IQ3_S</strong> 量化，<strong>83.6 GB</strong> 的 MoE，两个分片（GSQ-RCO）</li>
<li>上下文 <strong>256K</strong>，KV 用 <code>int8</code>、<code>kv-resident 32768</code>，MTP 草稿 <code>spec 4</code>，专家缓存开着（GPU 常驻 + 约 28.6 GiB 内存页缓存）</li>
<li>实测速度：<strong>decode 54~75 tokens/s</strong>（短 prompt 能到 ~89），<strong>prefill 约 500~1300 tokens/s</strong>（看上下文多长），专家缓存命中率 <strong>95~97%</strong>——日常用完全够</li>
</ul>
<p dir="auto"><strong>推理引擎</strong></p>
<ul>
<li><strong>Strata 0.1.32</strong>：开源项目（MIT，上游 <a href="https://github.com/Niko1221/Strata" rel="nofollow ugc">github.com/Niko1221/Strata</a>），官方定位是"<strong>用一张 12–24 G 的 NVIDIA 卡 + 64 G 内存，在自己电脑上跑 125B 的 Qwen3.8-Flash-Next</strong>"，默认面向 N 卡 + Windows/Linux 一键安装</li>
<li>我们是把它<strong>搬到 AMD RDNA4 上跑</strong>（HIP/ROCm，加上 WMMA、hipBLASLt 调优表这些），所以配置里有一堆 <code>STRATA_HIP_WMMA</code> / <code>STRATA_SELECT_WMMA</code> / <code>STRATA_PREFILL_MMQ</code> 之类的开关</li>
<li><img src="https://lcz.me/assets/plugins/nodebb-plugin-emoji/emoji/android/26a0.png?v=fe25256ab4a" class="not-responsive emoji emoji-android emoji--warning" style="height:1.4em;width:auto;vertical-align:middle" title="⚠" alt="⚠" />️ <strong>关键前提</strong>：这个引擎<strong>没配 <code>sampling</code> 的时候默认是贪婪解码（greedy）</strong>——对单轮对话/代码生成这种要确定性输出的场景挺合理，但一放进 agent 循环就出大事</li>
</ul>
<p dir="auto"><strong>Agent 壳</strong></p>
<ul>
<li><strong>DeepSeek Harness（dsh）0.2.0-rc</strong>，agent 跑在 headless / web profile 里；权限模式设成完全放开，<strong>沙箱和审批都不介入</strong>（先把"卡审批"这条可能性排除掉）</li>
<li>任务是一个 Rust 项目（多文件）的改造：agent 得自己读规格文档 → 改代码 → 编译 → 跑测试 → 写自查报告</li>
</ul>
<hr />
<p dir="auto">结论我先摆这儿，省得你往下翻半天：<strong>不是模型笨，是引擎默认走了贪婪解码</strong>。而 agent 每跑一步又会把"这次调用+结果"原样塞回上下文，上下文越长越自相似，贪婪一解码，输出就锁死在同一条上——<strong>稳定 2-周期</strong>。你在提示词里写一百遍"别重复"，它照样重复。</p>
<hr />
<h2>一、现场：看着忙得飞起，其实 53 分钟在空转</h2>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>看到的</th>
<th>实际</th>
</tr>
</thead>
<tbody>
<tr>
<td>工具调用总数</td>
<td><strong>773</strong></td>
</tr>
<tr>
<td>其中两条一模一样的 bash 命令</td>
<td><strong>各 311 次，加起来 622 次（80%）</strong></td>
</tr>
<tr>
<td>长啥样</td>
<td><strong>严格 A/B 交替</strong>：命令1→命令2→命令1→命令2…（最长"连续相同"只有 2）</td>
</tr>
<tr>
<td>那 311 次的结果</td>
<td><strong>字节完全相同</strong>（同一个 MD5），而且不空、<strong>它想查的字段都在里面</strong></td>
</tr>
<tr>
<td>有内容的助手消息</td>
<td>整个回合就 <strong>1 条</strong>（"我已掌握全部信息，开始实现"）</td>
</tr>
<tr>
<td>循环期间写文件</td>
<td><strong>0</strong></td>
</tr>
<tr>
<td>正式卡住到被我掐</td>
<td><strong>~53 分钟</strong></td>
</tr>
</tbody>
</table>
<p dir="auto">掐掉之后 <code>git status</code> 看一眼：干净。<strong>一个字没写。</strong></p>
<blockquote>
<p dir="auto">记个教训：<strong>"文件 mtime 是新的 / 事件数在涨 / 进程活着"这三件事，全都是假信号。</strong> 复读的时候这三样一个不缺。别拿它们判断"agent 在干活"。</p>
</blockquote>
<hr />
<h2>二、我踩过的坑（这些假设全被我否了，贴出来给你省时间）</h2>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>我一开始的猜测</th>
<th>后来怎么否的</th>
</tr>
</thead>
<tbody>
<tr>
<td>上下文被裁剪，它"忘了自己读过"</td>
<td>时间线对不上：裁剪事件循环前后都有（11+4+1），而且循环期间每 10 分钟就裁一次。既不充分也不必要</td>
</tr>
<tr>
<td>grep 窗口开小了，没看到想要的字段</td>
<td>直接否：311 次输出<strong>完全相同、非空、字段齐全</strong>。信息一直在上下文里</td>
</tr>
<tr>
<td>它幻觉出一个不存在的类型，才反复 grep</td>
<td>只解释"为什么盯着同一个文件"，不解释"结果一模一样还重发"。换个真名重查，照样循环</td>
</tr>
<tr>
<td>harness 根本没做重复检测</td>
<td>方向对、事实错：harness <strong>自带</strong>重复提醒插件，默认还开着</td>
</tr>
</tbody>
</table>
<p dir="auto"><strong>那自带的守卫为啥没拦住？三层全漏：</strong></p>
<ol>
<li>它只数<strong>连续相同</strong>的调用 → 我这是 A/B 交替，"连续计数"永远是 1，阈值（3/5/8 三档）根本够不着 ⇒ 全场就响了 2 次；</li>
<li>它拿<strong>整个参数对象</strong>当键 → 模型只要把 <code>description</code> 改一下（"第 N 次执行"），再随手补两个无关字段，就一次都数不上；</li>
<li>它<strong>只往上下文里塞提醒文字，不动控制流</strong> → 后来实测提醒响了 8 次（连最高档都响了），模型在正文里连着写了三次"我已停止重复调用"——<strong>然后继续发同一条命令</strong>。</li>
</ol>
<hr />
<h2>三、真根因：引擎默认贪婪 × 自相似上下文</h2>
<p dir="auto">证据是一步步挖出来的：</p>
<ol>
<li>抓会话里每一轮的请求头：只有 <code>{provider, model, maxTokens}</code>，<strong>没有 temperature</strong>；</li>
<li>翻 harness 的适配层代码：<strong>只有显式设置了</strong> <code>options.temperature</code> 才会把它带上（<code>if (options.temperature !== undefined)</code>）；</li>
<li>看引擎侧 run config：没有 <code>sampling</code> 段 → 走引擎默认，而<strong>这个默认就是贪婪</strong>；</li>
<li>于是闭环成立：<strong>同一段上下文 → 同一个 argmax → 同一条命令</strong>；而 agent 每步都把"这次调用 + 结果"追加进上下文，上下文自相似 → 输出自相似 → <strong>卡成 2-周期</strong>；</li>
<li>反证：引擎 run config 里加上 <code>temperature=0.3</code> 之后，<strong>同一个请求连发 3 次，输出各不相同</strong>（贪婪时是逐字节一样的）。</li>
</ol>
<p dir="auto"><strong>为什么"写规矩"治不了这个病？</strong></p>
<p dir="auto">我在任务书里加过一整套硬条款（同一条命令最多 2 次、一次读够、连续 5 次没推进就停下写报告）。结果：模型<strong>嘴上照做、行为照旧</strong>。</p>
<p dir="auto">道理很简单：<strong>贪婪解码下它没有"换个说法"的自由度</strong>。只要上下文差不多，输出就是那一条。这不是听话不听话的事。</p>
<hr />
<h2>四、修：两头一起上（有前后对照）</h2>
<h3>1）引擎侧——治根因（改配置，不用改引擎源码）</h3>
<pre><code class="language-yaml">sampling: { temperature: 0.3 }
</code></pre>
<ul>
<li>为什么改引擎不改 harness：大多数 harness 没有 per-model 采样字段，改引擎一次覆盖所有客户端；请求里显式带了 temperature 时，还是以请求为准。</li>
<li>验证：引擎日志出现 <code>sampling defaults from the config: temperature=0.3</code>，同请求连发 3 次输出不同。</li>
<li><img src="https://lcz.me/assets/plugins/nodebb-plugin-emoji/emoji/android/26a0.png?v=fe25256ab4a" class="not-responsive emoji emoji-android emoji--warning" style="height:1.4em;width:auto;vertical-align:middle" title="⚠" alt="⚠" />️ 有个副作用得知道：<strong>改完同一个输入不再有可复现的输出</strong>。以后别拿"同输入同输出"当验证手段了，要判稳不稳，就统计多次运行的重复率。</li>
</ul>
<h3>2）harness 侧——兜底熔断</h3>
<p dir="auto">判据（命中任一就动手）：</p>
<ul>
<li><strong>滑窗</strong>：最近 20 次调用里，同一条"语义载荷"出现 <strong>≥8 次</strong>（bash 取整条 <code>command</code>，读写取文件路径+内容）——滑窗这一条专门干"连续判据抓不到的 A/B 交替"；</li>
<li><strong>无信息</strong>：连续 10 次调用既没写文件、也没出现"以前没见过的调用"。</li>
</ul>
<p dir="auto">处置两级：</p>
<ul>
<li>第一次命中：<strong>把这次调用拦下来</strong>，把"别重复了、用已有信息收尾"当工具结果还给模型；</li>
<li>再犯：<strong>直接结束回合并落日志</strong>。</li>
</ul>
<blockquote>
<p dir="auto">写插件踩的两个坑：① harness 官方的"优雅收尾"接口在工具执行体外面调用<strong>没效果</strong>（收尾标记在更早阶段就结算了）；② 拦调用时返回的反馈必须是"内容块数组"，塞字符串会报 <code>content.map is not a function</code>。</p>
</blockquote>
<h3>3）前后对照（同任务、同模型，隔离副本里跑，真实仓库零改动）</h3>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th></th>
<th>修之前</th>
<th>修之后</th>
</tr>
</thead>
<tbody>
<tr>
<td>工具调用</td>
<td>101</td>
<td>153</td>
</tr>
<tr>
<td><strong>滑窗内重复峰值</strong></td>
<td>9（最长连续 9）</td>
<td><strong>1</strong></td>
</tr>
<tr>
<td>自带提醒命中</td>
<td>8 次（含最高档）</td>
<td>0 次（压根没复读）</td>
</tr>
<tr>
<td><strong>写文件</strong></td>
<td><strong>0</strong></td>
<td><strong>新模块 13.6KB + 3 个文件改动</strong>，还顺带出了演示和性能数据</td>
</tr>
<tr>
<td>结局</td>
<td>回合 <code>completed</code>、<strong>退出码 0</strong>、答复"我已掌握全部信息，转入实现" ⇒ <strong>假完工</strong></td>
<td>正常推进中，被我按时间上限掐断</td>
</tr>
</tbody>
</table>
<blockquote>
<p dir="auto"><strong>再记一个坑：<code>退出码 0</code> + <code>completed</code> ≠ 有产出。</strong> 判断有没有干活，用"工作区指纹"：<code>git status --porcelain -uall</code> + <code>git diff --numstat</code> + 源码最新 mtime。别拿命令文本猜"这算不算写盘"——agent 爱用 bash heredoc 落盘，<code>2&gt;&amp;1</code> 这种字串一眼看过去很像写操作，其实什么都不是。</p>
</blockquote>
<hr />
<h2>五、同样在跑本地 agent 的，照这个清单查</h2>
<ol>
<li><strong>先看你的客户端到底把采样参数发出去了没</strong>——抓一次请求体，看有没有 <code>temperature</code>。适配层"你不设置我就不带"是常态。</li>
<li><strong>再看引擎/服务端默认用什么采样</strong>——不少后端默认就是 greedy（单轮推理常这么配），放到 agent 场景直接放大成复读。</li>
<li><strong>重复判据用"滑窗内出现次数"，别用"连续相同次数"</strong>——A/B 交替能骗过所有连续判据。</li>
<li><strong>提醒 ≠ 拦截</strong>：只往上下文里塞提示的守卫，对这个病没用，必须"先拦调用、再结束回合"。</li>
<li><strong>判产出用工作区指纹</strong>，别信 mtime / 事件数 / 进程存活 / 退出码。</li>
<li><strong>调参和复现一定放隔离副本里跑</strong>：agent 会照着文档里的绝对路径直接改你的真实仓库（实测它的 grep 全打在真实仓库路径上）。<code>unshare -m</code> + bind 挂一个副本最省事。</li>
<li><strong>把"假完工"当一等失效模式</strong>：回合 completed、工作区纹丝不动——长任务里这比直接崩还贵。</li>
</ol>
<hr />
<h2>六、还没搞定的</h2>
<ul>
<li><code>temperature=0.3</code> 是"能跑"的起点，<strong>我没做系统调参</strong>。要是发现输出发散、格式不稳，可以试 <code>0.2 + repetition_penalty 1.05</code>，判据还是"多次运行的重复率"，别看单次。</li>
<li>熔断里"语义载荷"的定义：bash 取整条命令、写工具取"路径+内容"。实测仍有小概率把<strong>同一个文件的密集分段编辑</strong>误判成重复（后来把写工具的键改成"剔除包装字段后的整参数"——只改 description 的重复照样抓到，内容变了就不算重复）。</li>
<li>这是<strong>单机、单模型、单个任务</strong>的经验（n=1）。如果你也遇到过"交替型"复读，欢迎补充：别的模型/引擎是不是也能用"greedy + 自相似上下文"解释掉。</li>
</ul>
<hr />
<h2>七、附：后端模型启动脚本（可直接抄）</h2>
<h3>1）引擎运行配置 <code>strata-iq3_s.json</code></h3>
<p dir="auto"><strong>本次修复加的就是最后那个 <code>sampling</code> 块</strong>——不写它，引擎默认贪婪：</p>
<pre><code class="language-json">{
  "exe": "$HOME/Strata/engine/strata",
  "args": [
    "--pack",            "$HOME/Strata-iq3s/packs/iq3_s",
    "--native",          "$HOME/Strata-iq3s/models/IQ3_S/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00001-of-00002.gguf",
    "--ple-gguf",        "$HOME/Strata-iq3s/models/IQ3_S/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00002-of-00002.gguf",
    "--expert-profile",  "$HOME/Strata/data/expert-profile.bin",
    "--expert-cache", "auto",
    "--mmap-experts", "--resident-cpu-experts",
    "--prefill", "auto",
    "--spec", "4",
    "--mtp", "$HOME/Strata-iq3s/mtp/rt",
    "--max-context", "262144",
    "--kv", "int8",
    "--kv-resident", "32768",
    "--spec-min-p", "0.5"
  ],
  "cwd": "$HOME/Strata",
  "tokenizer": "$HOME/Strata-iq3s/packs/iq3_s/tokenizer",
  "model_name": "qwen3.8-flash-next-iq3_s",
  "log": "$HOME/Strata/strata-iq3_s.log",
  "backend": "hip",
  "host": "127.0.0.1",
  "port": 8080,
  "env": {
    "STRATA_HIPBLASLT_TUNING": "$HOME/Strata/tools/hip/gfx1201-hipblaslt-100200.txt",
    "STRATA_PREFILL_MMQ": "1",
    "STRATA_PREFILL_RING": "96",
    "STRATA_IO_THREADS": "32",
    "STRATA_HIP_WMMA": "1",
    "STRATA_SELECT_WMMA": "1"
  },

  "sampling": { "temperature": 0.3 }
}
</code></pre>
<blockquote>
<p dir="auto">几个参数的作用：<code>--spec 4</code> + <code>--mtp</code> 是草稿式投机解码；<code>--expert-cache auto</code> + <code>--resident-cpu-experts</code> 让 MoE 专家常驻（GPU 缓存 + 内存页缓存，实测命中 95~97%）；<code>--kv int8</code> + <code>--kv-resident 32768</code> 是 KV 量化与常驻量；<code>--max-context 262144</code> = 256K。</p>
</blockquote>
<h3>2）systemd 用户服务（端口 8081）</h3>
<pre><code class="language-ini"># ~/.config/systemd/user/strata-iq3s.service
[Unit]
Description=Strata engine (Qwen3.8-Flash-Next IQ3_S)
After=network-online.target

[Service]
Type=simple
WorkingDirectory=%h/Strata
ExecStart=%h/Strata/.venv/bin/python %h/Strata/serve/server.py \
          --engine strata --config %h/Strata/strata-iq3_s.json --port 8081
Restart=no
TimeoutStopSec=30
KillMode=mixed
MemorySwapMax=0
MemoryMin=24G

[Install]
WantedBy=default.target
</code></pre>
<blockquote>
<p dir="auto"><img src="https://lcz.me/assets/plugins/nodebb-plugin-emoji/emoji/android/26a0.png?v=fe25256ab4a" class="not-responsive emoji emoji-android emoji--warning" style="height:1.4em;width:auto;vertical-align:middle" title="⚠" alt="⚠" />️ 这行 <code>MemoryMin=24G</code> 是<strong>下限</strong>（保内存），别写成 <code>MemoryMax</code>：我们踩过——把它塞进带 <code>MemoryMax=4G</code> 的 cgroup scope 里，模型一涨到 4G 就被内核 OOM 杀掉（看着像"引擎自己崩了"，其实是启动方式的问题）。</p>
</blockquote>
<h3>3）启动器（精简版：起 / 停 / 等就绪 / 看指标）</h3>
<pre><code class="language-bash">#!/usr/bin/env bash
# strata-flash.sh —— 起服务 + 等就绪 + 打印模型与显存
set -uo pipefail
SVC=strata-iq3s.service
PORT=8081
BASE="http://127.0.0.1:${PORT}"
LOG="$HOME/Strata/strata-iq3_s.log"

wait_health() {                      # Strata 加载约 40~60s，别急着判失败
  echo -n "→ 等 health"
  for i in $(seq 1 60); do
    [ "$(curl -s -m 3 -o /dev/null -w '%{http_code}' "$BASE/health")" = "200" ] \
      &amp;&amp; { echo " 就绪（约 $((i*2))s）"; return 0; }
    sleep 2; echo -n "."
  done
  echo " ❌ 超时；看日志 $LOG"; return 1
}

case "${1:-start}" in
  start)   systemctl --user start "$SVC" &amp;&amp; wait_health
           curl -s -m 5 "$BASE/v1/models" | head -c 300; echo ;;
  stop)    systemctl --user stop "$SVC" ;;
  restart) systemctl --user stop "$SVC"; "$0" start ;;
  status)  echo -n "服务: "; systemctl --user is-active "$SVC"
           curl -s -m 5 -o /dev/null -w "health:%{http_code}\n" "$BASE/health" ;;
  health)  curl -s -m 5 "$BASE/metrics" | python3 -c '
import json,sys
e=json.load(sys.stdin).get("engine",{})
for k in ("model","version","max_context","kv","kv_resident","expert_slots","spec","vram_free_mib"):
    if k in e: print(f"  {k}: {e[k]}")' ;;
  logs)    tail -f -n 80 "$LOG" ;;
  *) echo "用法: $0 [start|stop|restart|status|health|logs]" ;;
esac
</code></pre>
<blockquote>
<p dir="auto">单卡机器上记得：这个引擎和别的推理服务（另外的 llama/vLLM）<strong>抢同一张卡</strong>，启动前先把它们停掉，不然不是端口冲突就是显存不够。</p>
</blockquote>
<p dir="auto"><em>（路径里的 <code>$HOME</code> 按自己的目录替换；上游 Strata 自带的 <code>run-iq3_s.sh</code> 也能起，上面这份是我们这边加了"等就绪 + 健康指标"的日常用版本。）</em></p>
<blockquote>
<p dir="auto">小注：配置里 <code>"port": 8080</code>，实际启动时由服务单元用 <code>--port 8081</code> 覆盖（同一台机器上 8080 留给别的引擎，方便来回切），别被两个数字绕晕。</p>
</blockquote>
<hr />
<p dir="auto"><em>最后一句：如果你也撞上 agent 复读，先按上面第 3、5 条把现象量化（滑窗重复率 + 工作区指纹），再去查第 1、2 条的采样。<strong>"模型太笨"应该排在最后，不是第一个。</strong></em></p>
]]></description><link>https://lcz.me/topic/2081</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 16:42:33 GMT</lastBuildDate><atom:link href="https://lcz.me/topic/2081.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 04 Oct 2026 08:45:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 【踩坑实录】本地 Qwen3.8-Flash-Next 在 agent 循环里"复读死循环"：从 311×2 次重复调用到真根因（贪婪采样） on Tue, 06 Oct 2026 09:38:26 GMT]]></title><description><![CDATA[<p dir="auto">原来是这么回事，感谢分享</p>
]]></description><link>https://lcz.me/post/22798</link><guid isPermaLink="true">https://lcz.me/post/22798</guid><dc:creator><![CDATA[xiaopbro]]></dc:creator><pubDate>Tue, 06 Oct 2026 09:38:26 GMT</pubDate></item><item><title><![CDATA[Reply to 【踩坑实录】本地 Qwen3.8-Flash-Next 在 agent 循环里"复读死循环"：从 311×2 次重复调用到真根因（贪婪采样） on Tue, 06 Oct 2026 03:45:34 GMT]]></title><description><![CDATA[<p dir="auto">很好的分享</p>
]]></description><link>https://lcz.me/post/22740</link><guid isPermaLink="true">https://lcz.me/post/22740</guid><dc:creator><![CDATA[terry]]></dc:creator><pubDate>Tue, 06 Oct 2026 03:45:34 GMT</pubDate></item><item><title><![CDATA[Reply to 【踩坑实录】本地 Qwen3.8-Flash-Next 在 agent 循环里"复读死循环"：从 311×2 次重复调用到真根因（贪婪采样） on Sun, 04 Oct 2026 16:25:36 GMT]]></title><description><![CDATA[<p dir="auto"><img src="https://upload.lcz.me/uploads/65bf88d2-ec2a-448f-91aa-015211c35c74.jpeg" alt="image.jpeg" class="img-markdown  img-fluid" /><br />
要改采样参数，用官方那套就没问题了。</p>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>模式</th>
<th>temperature</th>
<th>top_p</th>
<th>top_k</th>
<th>min_p</th>
<th>presence_penalty</th>
<th>repetition_penalty</th>
</tr>
</thead>
<tbody>
<tr>
<td>思考模式（规划/复杂任务）</td>
<td>1.0</td>
<td>0.95</td>
<td>20</td>
<td>0.0</td>
<td>0.0</td>
<td>1.0</td>
</tr>
<tr>
<td>Instruct 模式（日常对话/直答）</td>
<td>0.7</td>
<td>0.80</td>
<td>20</td>
<td>0.0</td>
<td>1.5</td>
<td>1.0</td>
</tr>
</tbody>
</table>
]]></description><link>https://lcz.me/post/22413</link><guid isPermaLink="true">https://lcz.me/post/22413</guid><dc:creator><![CDATA[stxpnet]]></dc:creator><pubDate>Sun, 04 Oct 2026 16:25:36 GMT</pubDate></item><item><title><![CDATA[Reply to 【踩坑实录】本地 Qwen3.8-Flash-Next 在 agent 循环里"复读死循环"：从 311×2 次重复调用到真根因（贪婪采样） on Sun, 04 Oct 2026 10:15:28 GMT]]></title><description><![CDATA[<p dir="auto">这问题我遇到过两次，很是崩溃，LZ帖子真是及时雨，马上安排Agent研究修复去，嘿嘿……</p>
]]></description><link>https://lcz.me/post/22287</link><guid isPermaLink="true">https://lcz.me/post/22287</guid><dc:creator><![CDATA[rich king]]></dc:creator><pubDate>Sun, 04 Oct 2026 10:15:28 GMT</pubDate></item><item><title><![CDATA[Reply to 【踩坑实录】本地 Qwen3.8-Flash-Next 在 agent 循环里"复读死循环"：从 311×2 次重复调用到真根因（贪婪采样） on Sun, 04 Oct 2026 09:40:20 GMT]]></title><description><![CDATA[<p dir="auto">好耶，我最近使用也发现这个模型好像不是卡死，它倒是一直在干活，但是好像也没有快多少完成任务</p>
]]></description><link>https://lcz.me/post/22280</link><guid isPermaLink="true">https://lcz.me/post/22280</guid><dc:creator><![CDATA[6cccccc]]></dc:creator><pubDate>Sun, 04 Oct 2026 09:40:20 GMT</pubDate></item></channel></rss>