如何在 VS Code 中配置 CodeGeex 的个性化 Prompt 以提升代码生成准确度

2026-06-21AI11389

必须将项目特异性信息注入模型输入,否则生成代码易出错;交互模式需嵌入含角色、约束、示例的结构化提示词;高频场景可用自定义Prompt模板文件;高级用户可修改system_prompt.txt实现全局约束。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在 VS Code 中让 CodeGeex 生成更贴合项目结构、技术栈和命名习惯的代码,必须绕过插件默认的泛化提示词,将项目特异性信息注入模型输入——这一步不做,生成结果常出现变量名不一致、漏写 try-except、用错 ORM 方法等硬伤。

在交互模式中嵌入结构化提示词

适用于单次高精度任务,比如补全一个关键 API 视图或修复一段核心逻辑。它不依赖任何配置文件,直接控制当次输出行为。

第一步:在编辑器中选中目标代码片段,或把光标置于空行处。

第二步:按下 Ctrl+Enter 激活交互模式,右侧弹出候选生成窗口。

第三步:在输入框中键入完整提示词,必须包含角色、约束、示例三要素。例如:“你是一位熟悉 Django 4.2 和 PostgreSQL 的后端工程师。请为以下 User 模型编写一个视图函数,要求:返回 JSON 响应;处理 GET 请求;仅返回 name 和 email 字段;使用 try-except 包裹数据库查询;不使用 raw SQL。”

第四步:按回车提交。CodeGeex 将基于该提示词生成代码,【不执行此步则仍走默认泛化指令】

配置自定义 Prompt 模板文件

适合高频复用的场景,比如团队统一采用 RESTful 风格、强制返回 Result 包装、或所有 Python 函数必须带类型注解。模板固化后,调用时一键加载,避免每次手动敲长提示。

方法一:新建一个纯文本文件(如 fastapi_crud_template.txt),内容示例:

“你正在为 FastAPI 项目编写 CRUD 接口。当前模块已定义 Pydantic Model: {model_name},SQLAlchemy Base 类已导入为 Base。请生成一个 POST 路由,路径为 '/{model_name.lower()}',接收 {model_name}Create Schema,调用 db.add() 并 commit,返回 201 状态码和创建后的对象。”

方法二:在 VS Code 中进入“设置”→ 搜索“CodeGeeX”→ 找到“Prompt Templates”选项。

方法三:点击“Edit in settings.json”,在 "codegeex.promptTemplates" 字段中添加键值对:"fastapi_post": "./templates/fastapi_crud_template.txt"

方法四:重启插件后,在交互模式下按 Alt+Option+T,从模板列表中选择 fastapi_post 即可载入预设提示词。

修改系统级提示词(高级用户)

该操作影响所有对话与生成场景,适用于强制统一语言风格(如全部返回中文注释)、禁用某类危险操作(如禁止生成 eval 或 exec)、或限定仅输出代码块不带解释文字。

1. 定位 CodeGeeX 插件配置目录:VS Code 中为 ~/.vscode/extensions/tsinghua.codegeex-*/,其中 * 是版本号通配符。

2. 进入 resources/prompt/ 目录,找到 system_prompt.txt 文件。

3. 备份原文件后,用文本编辑器打开它,将原有内容替换为你的全局指令,例如:“你是一个严谨的 Python 工程师,所有生成代码必须符合 PEP 8,函数必须有 type hints,异常必须显式捕获,禁止使用 print 调试语句。”

【修改后必须重启 VS Code 才生效,且无法通过插件设置界面还原】

《如何在 VS Code 中配置 CodeGeex 的个性化 Prompt 以提升代码生成准确度.doc》

下载本文的Word格式文档,以方便收藏与打印。