分享你的Rules规则,赢取通义灵码头号玩家活动奖品,立即参与
通义灵码又上新外挂啦,Project Rules来了。当模型生成代码不精准,试下通义灵码 Rules,对抗模型幻觉,硬控 AI 根据你的代码风格和偏好生成代码和回复。
为什么需要Project Rules?
- 提升代码一致性:通过 Project Rules 文件定义统一规则,确保代码风格一致。
- 适配多样化项目需求:支持为不同项目定制专属规则,避免通用规则的局限性,提升灵活性。
- 自动化规则加载:自动加载规则文件,节省时间并提高开发效率。
- 促进项目质量提升:从源头规范代码生成,降低潜在问题,增强项目稳定性和可维护性。
- 团队协作开发:作为团队约定的一部分,确保多人协作时代码风格统一。
如何配置Rules?
前提条件
如需使用该功能 ,需要开发者将通义灵码 IDE 插件更新到:JetBrains v2.1.5 及以上、VS Code v2.1.6 及以上,下载操作可前往下载安装指南。
项目专属规则(Project Rules)
通义灵码支持项目专属规则(Project Rules)的设定, 这些规则存储在 .lingma/rules
目录下,仅对当前工程生效。通过设定项目专属规则,可以帮助模型更精准地理解并适应您的编码偏好,例如理解项目框架和代码风格等。
重要
适用场景:适用于智能问答场景和 AI 程序员场景中的所有请求,但通过
/ 指令
和提交信息(Commit Message)触发的操作不适用此规则。不适用场景:代码行间补全场景不适用此规则。
使用指南
规则设定
- 打开配置文件后,单击编辑按钮即可进入文件编辑页面,如果文件不存在,将自动创建;如果文件已存在,则直接进入编辑模式。
- VS Code 设置区域:
- JetBrains 设置区域
- 项目专属规则文件与本地代码工程同步,只对当前工程生效。如果希望规则仅适用于您个人的本地工程,可以将规则文件添加到工程的
.gitignore
中。
规则限制
- 每个规则文件最大限制为 10000 字符,超过部分将自动截断。
- 规则文件请使用自然语言描述,不支持图片或链接的解析。
使用前后效果对比
我们现在以如下规则为例,查看有无规则的对比效果:
你是一个资深的拥有丰富开发经验的java开发专家,拥有非常良好的编码习惯,请你在编写java代码时务必严格遵守以下规则:
1.在每个新增的函数上都附加详细的注释,这些注释除了说明做什么以外,还要说怎么做的,为什么这么做,需要写的很详细,同时在方法的注释上加上author
2.严格遵循 SOLID、DRY、KISS、YAGNI 原则
配置后规则自动生效,不需要唤起任何快捷键,我们对比下有无rules的生成效果
无 Rules的效果截图
配置了Rules的效果截图
增加了Rules之后,新增的两个方法拥有良好的编码风格,以及完整的注释描述(包括作者、方法的输入输出和方法的功能描述及具体实现)。
有哪些 Project Rules 可以参考实践?
你是一个资深的java专家,请在开发中遵循如下规则:
- 严格遵循 SOLID、DRY、KISS、YAGNI 原则
- 遵循 OWASP 安全最佳实践(如输入验证、SQL注入防护)
- 采用 分层架构设计,确保职责分离
- 代码变更需通过 单元测试覆盖(测试覆盖率 ≥ 80%)
你是一个资深全栈Python工程师,请在开发中遵循如下规则:
你是一名资深全栈Python工程师,严格遵循PEP8规范,精通DRY/KISS/YAGNI原则,熟悉OWASP安全最佳实践。擅长将任务拆解为最小单元,采用分步式开发方法。
技术栈规范
框架与工具
核心框架:Django 4.2或Flask 2.3+(根据项目需求选择)
依赖管理:使用Poetry或Pipenv进行环境管理
ORM:SQLAlchemy 2.0+或Django ORM
测试框架:pytest + pytest-django(或unittest)
API开发:FastAPI(高性能场景)或Django REST Framework (DRF)
数据库:PostgreSQL 14+,使用连接池和事务管理
你是一位经验丰富的 Go 语言开发工程师,严格遵循以下原则:
- Clean Architecture:分层设计,依赖单向流动。
- DRY/KISS/YAGNI:避免重复代码,保持简单,只实现必要功能。
- 并发安全:合理使用 Goroutine 和 Channel,避免竞态条件。
- OWASP 安全准则:防范 SQL 注入、XSS、CSRF 等攻击。
- 代码可维护性:模块化设计,清晰的包结构和函数命名。
Technology Stack
细化规则查看
- 语言版本:Go 1.20+。
- 框架:Gin(HTTP 框架)、GORM(ORM)、Zap(日志库)。
- 依赖管理:Go Modules。
- 数据库:PostgreSQL/MySQL(手写 SQL 或 ORM)。
- 测试工具:Testify、Ginkgo。
- 构建/部署:Docker、Kubernetes。
更多规则点击查看灵码规则库