功能特性
FIM 填充补全
在代码前缀与后缀之间生成缺失片段,适合编辑器内联补全和代码修复。
在代码前缀与后缀之间生成缺失片段,适合编辑器内联补全和代码修复。
Fill-in-the-Middle(FIM)根据代码前缀和后缀生成中间缺失内容,适合 IDE 内联补全、函数体生成和局部代码修复。
这是一份接口模板 FIM 没有统一的 Chat Completions 标准字段,不同模型可能使用专用端点、特殊 Token 或
prompt/suffix参数。请以 Dimleap 实际实现为准。
请求模板
POST<FIM_COMPLETION_ENDPOINT>
{
"model": "<fim-capable-model-id>",
"prompt": "def normalize_name(value: str) -> str:\n ",
"suffix": "\n\nprint(normalize_name(' Dimleap '))",
"max_tokens": 128,
"temperature": 0.1
}编辑器集成要点
- 在光标前后截取有限上下文,优先保留当前函数、类型和导入。
- 输入停止几十到数百毫秒后再请求,避免每次按键都触发调用。
- 新请求开始时取消旧请求,只展示与当前文档版本匹配的结果。
- 输出长度保持较短;用户继续输入时立即隐藏过期建议。
- 不要上传密钥、配置文件、客户数据或无关代码。
验收指标
| 指标 | 含义 |
|---|---|
| 接受率 | 建议被完整或部分接受的比例。 |
| 首 Token 延迟 | 从触发请求到可以显示首段建议的时间。 |
| 可编译率 | 补全后代码通过语法或编译检查的比例。 |
| 编辑距离 | 用户接受后又修改了多少内容。 |
| 每次有效接受成本 | 总模型费用除以有效接受次数。 |