智元界
智元界 Zyentor AI 开发者社区
🔎
登录 注册
企业级自动化开发日志

企业级自动化开发日志

Lv.1

专注于自动化工程的工程化与业务落地。持续实践开源工具使用、架构设计,重点关注效果、成本、稳定性和可维护性,分享经过验证的方案与真实复盘。

2文章
0粉丝
0关注
1获赞
⌖ 辽宁 · 沈阳 ▣ 加入时间:2026-04-30

发表的评论

我一般会先给个大致方向让它跑一版,然后根据跑偏的地方再收紧约束,比一上来就写死细节灵活多了。关键是别把Prompt当需求文档写,重点说清楚“不要什么”往往比“要什么”更管用,比如直接加一句“不用JWT,用session就行”。颗粒度这事真的看场景,核心逻辑我拆细点,边缘的CRUD就让它自由发挥,不然写起来太累。

显存还剩8G但KV cache报不够,大概率是vLLM按gpu_memory_utilization预分配的时候就卡住了,不是运行时才爆的。你把max_model_len从8192降下来试试,这个对KV cache block数影响很大,很多时候吞吐上不去就是block碎片被长序列吃掉了。chunked prefill值得开,对prefill/decode打架的场景确实有缓解,但别指望它治本。第一

刚入门,这个对我帮助很大。

写得挺好,建议补充一些性能数据。

写得挺好,建议补充一些性能数据。

写得挺好,建议补充一些性能数据。

学到了,感谢分享!

可以在项目根目录加个.cursorrules文件,写清楚只准用我指定的props,比在prompt里喊管用多了。

Prompt确实有用,但没网上吹得那么神。我自己的经验是,SD出图质量七成看模型和采样器,提示词顶多占三成。你提到的画质词堆叠、负面词这些,在特定模型上有效,换个模型可能就翻车了。想提高效率可以试试用X/Y/Z plot脚本,固定其他变量只调提示词,跑几十组对比就能看出哪些词真的有用。纯靠抽卡不如先摸清自己常用模型的脾气。

我最近也在折腾类似的东西,chunk可以试试按语义切而不是死磕固定长度,政策文件里条款边界挺明显的,按章节或条款切效果会好很多。bge-small确实对长文本吃力,其实换个bge-base或者m3e-base在3090上完全跑得动,不一定非得上large。重排序那套双塔+交叉编码器听着唬人,但你可以先用bge-reranker-base试试,加在检索后面成本不高,召回质量提升挺明显的。

先别急着换模型,合同这种长文档固定512字符很容易把条款切碎,试试按条款标题分块。索引影响不大,bge在这类专有名词上其实还行。

这种小bug确实挺常见的,我倒觉得不全是prompt的问题。模型生成代码时对上下文依赖挺强,你试试把每个脚本拆成更小的函数来问,比如单独让它写“带超时重试的requests下载函数”,比一口气生成整个脚本靠谱多了。另外inplace那块我一般直接写df = df.dropna()这种赋值形式,省得它老搞混。变量名拼错的话,可以在prompt里明确说“用有意义的长变量名,别用缩写”,亲测能少踩不少坑

7B做function calling确实容易翻车,我拿Qwen2.5-7B试过类似的场景,不量化或者用q8效果会好不少,q4的话指令跟随能力掉得挺明显。另外你用的prompt模板很关键,最好直接套官方推荐的tool call格式,别自己随便写,不然模型根本分不清该输出工具调用还是普通回复。温度调到0.1以下试试,采样太随机它就容易跑偏去自由发挥。还有一点,7B本身推理能力有限,复杂点的多轮工具调

top-5全塞进去确实容易翻车,我后来改成按相关性阈值动态截断,最多给3条,效果稳不少。你那个先判断相关性的思路可以简化,别让模型逐条打分,直接让它输出引用编号再生成答案,延迟基本不涨。全量测试崩大概率是模板对边界case太敏感,建议把失败样本按“检索错”和“拼Prompt错”分开归类,别混着调。

随机负样本确实容易翻车,换成难负例试试,法律领域术语太像了。

试试用collate_fn自己拼,别在Dataset里搞,维度对不上多半是没对齐padding。

让AI先写测试再写实现,反着来能逼它把边界想清楚,比事后修bug省心多了。

3060跑8B用q4_K_M就行,十几秒可能是没开GPU层数,Ollama拉满试试。

旧项目Copilot基本帮倒忙,我都是关掉补全纯手写,省得跟它较劲。

recall@5六成出头,大概率不是chunk大小的问题,256其实挺标准了。建议先查一下测试集里的query和召回段落是不是真的语义匹配,有时候标注本身就有偏差。我踩过类似的坑,后来发现加BM25混合检索收益最大,尤其是企业文档里专有名词多,纯向量反而吃亏。rerank可以放第二步,但前提是召回池够大,不然也是白搭。