人工智能技术文章
-
模型路由不应该只看一次调用的速度或单价。把延迟、成本、能力、健康状态和回退边界拆开,先用硬约束筛选,再按业务权重排序,才能让后端选择稳定可解释。314 收藏 -
MCP 客户端不应只靠固定 TTL 缓存工具描述和资源。本文按 tools/list、resources/list、resources/read 拆分缓存键,结合 ttlMs、cacheScope 与变更通知设计可恢复的一致性策略。313 收藏 -
Datasets streaming 大数据集读取教程:使用 JSONL 和 IterableDataset 做有界预览,配置 shuffle 缓冲区,处理空数据与字段错误,避免全量累积内存。313 收藏 -
用一个完整的 MLflow Run 串起参数、手工指标、模型制品、注册模型版本和测试集评估结果:先固定实验与注册模型名,再用 registered_model_name 生成版本,最后通过 mlflow.models.evaluate 读取 accuracy、F1 等指标。313 收藏 -
用 Hugging Face Tokenizers 添加领域词条后,如何保存并重新加载自定义词表?本文区分追加词条与重新训练词表,分别说明 save()、from_file() 与 save_pretrained() 的使用边界。311 收藏 -
Diffusers 临时禁用 LoRA 不需要卸载权重,调用 disable_lora() 可回到基础模型推理,随后用 enable_lora() 恢复;本文同时区分卸载、删除和多适配器场景。309 收藏 -
Diffusers 单文件模型不能靠改后缀变成组件目录。正确做法是用匹配的 Pipeline.from_single_file() 读取权重,再用 save_pretrained() 保存配置、组件子目录和权重文件;配置推断失败时显式提供 config。308 收藏 -
Responses API 不会替应用执行自定义函数。正确做法是读取 function_call,执行本地工具,再用同一个 call_id 回传 function_call_output,让模型继续处理下一次工具调用或生成最终答复。307 收藏 -
本文围绕 Ray Serve DeploymentHandle 的异步批处理,说明 DeploymentResponse 的提交与等待方式、@serve.batch 的参数边界、等长结果约束,以及如何用批等待和利用率指标判断参数是否合适。307 收藏 -
使用 Hugging Face PEFT 训练适配器后,检查点通常只包含适配器权重和配置,不会复制完整基础模型。本文从目录现象出发,说明保存设计、恢复加载、继续训练与合并导出的区别。301 收藏 -
从标题路径、递归切分、token 上限和召回聚合四个环节,说明 RAG 如何减少断章与误召回。300 收藏 -
从切片边界、chunk_size 和 chunk_overlap 三个角度说明 RAG 文档怎样减少语义断裂,并给出按结构切分、按比例设置重叠区和观察召回结果的实用方法。297 收藏 -
讲清 Hugging Face Datasets 流式 IterableDataset 如何用 batch_size 和 drop_last_batch 组成固定批次、处理尾批,并区分 map 与 DataLoader 的批次语义。297 收藏 -
LLM 请求经过多个服务后,怎样把 trace_id、模型、状态、延迟和 token usage 归到同一次调用?本文用 Go 设计一个不记录提示词与密钥的观测链路,演示 span、context、统一 usage 结构和结构化日志的落地方式。296 收藏 -
OpenAI Realtime API 可通过 session.audio.input.turn_detection 配置 server_vad、semantic_vad 或关闭 VAD。本文讲清阈值、静音时长、eagerness、自动响应与手动提交的取舍。293 收藏