常用规则

This commit is contained in:
2026-06-24 18:32:50 +08:00
parent 00450e7602
commit 1887360cd4
7 changed files with 711 additions and 1 deletions
+105
View File
@@ -0,0 +1,105 @@
Token 效率规范
## 规则
1. **精简输出**
- 默认输出控制在必要最小范围内,优先提供关键信息而非完整内容。
- 避免冗余解释,用户已知的背景信息不再重复。
- 单次回复总长度建议控制在 2000 字以内,复杂任务可分步输出。
2. **代码输出优化**
- 只输出修改相关的代码片段,禁止输出完整文件内容。
- 使用 `// ...` 或注释省略未修改部分,保留必要的上下文(通常前后 3-5 行)。
- 多文件修改时,逐个文件展示,每个文件只展示变更部分。
3. **避免重复**
- 不重复用户已提供的信息或上下文。
- 不重复解释同一概念,首次提及即可。
- 列表或表格中避免重复字段,使用引用或缩写。
4. **结构化压缩**
- 优先使用列表、表格替代段落描述,减少连接词和过渡句。
- 使用符号(如 `→``⇒`)替代文字表达因果关系。
- 技术术语使用标准缩写(如 API、DB、UI),避免全称重复。
5. **智能省略**
- 通用代码模板(如 import 语句、标准配置)可省略,必要时提供链接或提示。
- 错误堆栈只保留关键帧,过滤框架内部调用。
- 日志输出只保留与问题相关的行,使用 `...` 省略无关内容。
6. **分步响应**
- 复杂任务先给出概要方案和关键步骤,确认后再展开细节。
- 多步骤任务每步只输出当前步骤内容,不预输出后续步骤。
## 与现有规则的关联
| 关联规则 | 说明 |
|---------|------|
| `output-format.md` 第 2 条"简洁优先" | 本规则是对"简洁优先"的具体化和量化补充,侧重 Token 层面的优化 |
| `output-format.md` 第 8 条"代码输出" | 本规则第 2 条是对该条的扩展,增加了具体的代码省略策略 |
## 示例
### 代码输出(优化前)
```java
package com.example.service;
import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired;
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
@Autowired
private OrderRepository orderRepository;
// ... 其他代码 ...
public User getUserById(Long id) {
return userRepository.findById(id).orElse(null);
}
// ... 其他代码 ...
}
```
### 代码输出(优化后)
```java
// UserService.java
public User getUserById(Long id) {
return userRepository.findById(id).orElse(null);
}
```
### 日志输出(优化前)
```
2024-01-01 10:00:01 INFO [main] Starting application...
2024-01-01 10:00:02 INFO [main] Loading configuration...
2024-01-01 10:00:03 ERROR [main] Failed to connect to database
java.sql.SQLException: Connection refused
at com.mysql.jdbc.Connection.createNewIO(Connection.java:1234)
at com.mysql.jdbc.Connection.<init>(Connection.java:567)
at com.mysql.jdbc.Driver.connect(Driver.java:89)
at java.sql.DriverManager.getConnection(DriverManager.java:123)
at com.example.config.DatabaseConfig.init(DatabaseConfig.java:45)
... 省略 20 行框架内部调用
```
### 日志输出(优化后)
```
ERROR: Failed to connect to database (Connection refused)
at DatabaseConfig.init(DatabaseConfig.java:45)
```
## 适用范围
- 所有代码和技术内容输出
- 日志和错误信息展示
- 多步骤任务的分步回复