QtCreator使用Qode插件接入外部AI大模型
QodeAssist:AI智能编码助手,提升Qt Creator开发效率QodeAssist 是一款针对 Qt Creator 的 AI 智能编码助手插件,它通过集成大型语言模型,如 Ollama,提供智能代码补全和提示功能,帮助开发者提升编码效率。以下是关于 QodeAssist 项目的详细介绍。项目介绍QodeAssist 是一款为 Qt Creator 开发环境设计的 AI 编码助手插…_qtcreator ai代码助手
QodeAssist介绍:AI智能编码助手,提升Qt Creator开发效率
QodeAssist 是一款针对 Qt Creator 的 AI 智能编码助手插件,它通过集成大型语言模型,如 Ollama,提供智能代码补全和提示功能,帮助开发者提升编码效率。以下是关于 QodeAssist 项目的详细介绍。
插件介绍
QodeAssist 是一款为 Qt Creator 开发环境设计的 AI 编码助手插件。它通过利用本地提供的大型语言模型,如 Ollama,为 C++ 和 QML 提供智能代码补全和建议。这款插件能够直接在 Qt 开发环境中提供上下文感知的 AI 辅助,从而极大地提升开发者的编码效率。
插件技术分析
QodeAssist 插件的核心技术包括:
- 智能代码补全:利用大型语言模型,如 Ollama,提供智能的代码补全和代码建议。
- 聊天功能:支持在侧边栏和底部面板中与语言模型进行对话,实现代码分析和问题解决。
- 多模型支持:插件支持多种语言模型提供商,包括 Ollama、llama.cpp、OpenAI、Anthropic Claude、LM Studio、Mistral AI、Google AI 以及其他 OpenAI 兼容服务。
插件及技术应用场景
QodeAssist 适用于以下场景:
- Qt Creator 开发环境:插件专为 Qt Creator 设计,能够无缝集成到开发环境中,为开发者提供实时的代码辅助。
- 代码效率提升:通过智能代码补全和建议,开发者可以减少编码时间,提高开发效率。
- 代码质量优化:插件提供的代码建议可以帮助开发者写出更高质量、更易于维护的代码。
插件特点
QodeAssist 项目的特点包括:
- 智能代码补全:提供实时的代码补全和代码建议,减少编码错误。
- 多模型支持:支持多种语言模型提供商,为开发者提供灵活的选择。
- 易于配置:插件提供了简单的配置界面,开发者可以根据自己的需求选择模型和设置参数。
- 高度集成:与 Qt Creator 环境无缝集成,无需额外设置。
- 丰富的功能:包括聊天功能、代码分析、自动同步编辑器文件等丰富功能。
以下是关于 QodeAssist 项目的详细说明:
智能代码补全
QodeAssist 通过集成大型语言模型,提供智能的代码补全和代码建议,帮助开发者减少编码错误,提升编码速度。插件支持多行代码补全,使开发者能够更加高效地编写代码。
聊天功能
插件支持在 Qt Creator 的侧边栏和底部面板中与语言模型进行聊天,实现代码分析和问题解决。开发者可以通过聊天界面获取代码建议、解决问题,并支持聊天历史的自动保存和恢复。
多模型支持
QodeAssist 支持多种语言模型提供商,包括 Ollama、llama.cpp、OpenAI、Anthropic Claude、LM Studio、Mistral AI、Google AI 以及其他 OpenAI 兼容服务。开发者可以根据自己的需求和偏好选择合适的模型。
易于配置
插件提供了简单的配置界面,开发者可以在 Qt Creator 的设置中轻松配置模型提供商和参数。例如,以下是配置 Ollama 的步骤:
- 安装 Ollama 并运行指定的语言模型。
- 在 Qt Creator 的 QodeAssist 设置中,选择 Ollama 作为 LLM 提供商,并设置对应的 URL 和模型。
高度集成
QodeAssist 与 Qt Creator 环境无缝集成,开发者无需进行复杂的设置即可使用插件。
丰富的功能
除了智能代码补全和聊天功能,QodeAssist 还提供了自动同步编辑器文件、代码上下文分析等丰富功能,进一步优化开发者的编码体验。
总结而言,QodeAssist 是一款强大的 AI 编码助手插件,能够显著提升 Qt Creator 开发者的编码效率。通过集成多种语言模型和提供丰富的功能,QodeAssist 成为 Qt 开发者的必备工具。
一、概要
本篇文章主要通过让QtCreator接入外部AI插件,实现在QtCretor里调用AI模型完成代码自动补全(Code Completion)和聊天助手(Chat Assistant)的目的。下面是需要操作的工具列表。
Qt版本:Qt5.14.2(自带QtCreator4.11.1,但是这里不用它)
QtCreator版本:QtCreator17.0.0(独立安装程序
AI插件:QodeAssist项目
二、安装Qt5.14.2,配置高版本QtCreator
三、下载AI插件
访问:QodeAssist Releases 可以直接下载最新版本的插件,记的选择和自己安装的QtCreator一致的版本,这里选择QodeAssist-v0.6.0-QtC17.0.0-Windows-x64.7z。
下载解压后,里面会有按照QtCreator插件路径创建的lib文件夹,把它放到安装QtCreator17时所选择的文件夹下,一般是C:\Qt\qtcreator-17.0.0。
四、配置插件
4.1、AI大模型设置
前面几步操作完成后,打开QtCreator17.0.0=>编辑=>Preferences,找到QodeAssist,如下图配置。配置后在Provider Settings一栏中填上对应模型的API Key即可,非常简单。大家可以根据自己的需求和模型自定义。
4.2、自动补全配置
打开Code Completion选项,如下图:
QodeAssist的自动补全配置分为以下几个主要类别(按界面布局排布),附上个人建议供参考:
自动补全基础设置
- Enable Auto Complete (
autoCompletion): 启用或禁用自动补全功能的主开关 - Enable Multiline Completion (
multiLineCompletion): 允许生成跨多行的代码补全建议【建议】 - Enable stream option (
stream): 启用流式响应,让补全结果逐步显示【建议】 - Enable smart process text from instruct model (
smartProcessInstuctText): 智能处理指令模型的文本输出,如果不设置返回结果大概率会以注释开头。【建议】 - AI suggestion triggers after typing (
autoCompletionCharThreshold): 设置触发AI建议所需的字符数量(0-10个字符) - character(s) within(ms) (
autoCompletionTypingInterval): 设置字符阈值必须在多长时间窗口内满足(500-5000毫秒) - with delay(ms) (
startSuggestionTimer): 设置建议显示的延迟时间(10-10000毫秒) - Show progress indicator during code completion: 在代码补全过程中显示进度指示器
- Include context from open files: 在补全时包含打开文件的上下文【不建议】
模型参数设置
基础参数:
- Temperature: 控制生成文本的随机性(0.0-2.0,默认0.2)
- Max Tokens: 设置生成的最大token数量(-1到900000,默认100)
高级参数:
- Top P: 核采样参数,控制候选词汇的累积概率(0.0-1.0)
- Top K: 限制候选词汇数量(1-1000)
- Presence Penalty: 存在惩罚,减少重复内容(-2.0到2.0)
- Frequency Penalty: 频率惩罚,进一步控制重复(-2.0到2.0)
上下文设置
- Read Full File: 读取完整文件内容作为上下文【不建议】
- Read Strings Before Cursor: 设置光标前读取的行数(0-10000行,默认50行)
- Read Strings After Cursor: 设置光标后读取的行数(0-10000行,默认30行)
提示词设置
这项设置取决你使用的模型是否为FIM模型。
- Use System Prompt: 启用系统提示词
- System Prompt: 为FIM模型配置的系统提示词
- Use special system prompt and user message for non FIM models: 为非FIM模型使用特殊的提示词模板
- Max Changes Cache Size: 项目变更缓存的最大大小(2-1000,默认10)【不建议】
- Additional Programming Languages: 添加自定义编程语言支持
Quick Refactor Settings(快速重构设置)
Quick Refactor Settings是专门为快速重构功能配置的设置组,包含以下选项:
- Include context from open files in quick refactor (
useOpenFilesInQuickRefactor): 在快速重构时包含打开文件的上下文信息 - Quick Refactor System Prompt (
quickRefactorSystemPrompt): 专门为快速重构功能配置的系统提示词,默认内容为专业的C++、Qt和QML代码补全助手提示
Ollama Settings(Ollama设置)
Ollama Settings是专门为Ollama提供商配置的设置组,包含以下选项:
- Livetime (
ollamaLivetime): 控制Ollama在完成请求后保持活跃的时间(以分钟为单位),设置为-1可禁用此功能,默认值为"5m" - Context Window (
contextWindow): 设置Ollama的上下文窗口大小,范围为-1到10000,默认值为2048
4.3、聊天助手配置
打开Chat Assistant设置页面,如下图:
QodeAssist的聊天助手配置分为以下几个主要类别(按界面布局排布):
Chat Settings(聊天设置)
- Chat history token limit (
chatTokensThreshold): 聊天历史记录的token限制,当超过此限制时会移除最旧的消息,范围1-99999999,默认值20000 - Sync open files with assistant by default (
linkOpenFiles): 默认情况下与助手同步所有打开的文件,默认值false【不建议】 - Enable stream option (
stream): 启用流式响应选项,让回复逐步显示,默认值true - Enable autosave when message received (
autosave): 收到消息时启用自动保存功能,默认值true
General Parameters(基础参数)
- Temperature: 控制生成文本的随机性和创造性,范围0.0-2.0,默认值0.5
- Max Tokens: 设置生成响应的最大token数量,范围-1到10000,默认值2000
Advanced Parameters(高级参数)
- Top P: 核采样参数,控制候选词汇的累积概率,范围0.0-1.0,默认值0.9,需要先启用才能使用
- Top K: 限制候选词汇数量,范围1-1000,默认值50,需要先启用才能使用
- Presence Penalty: 存在惩罚参数,减少重复内容的生成,范围-2.0到2.0,默认值0.0
- Frequency Penalty: 频率惩罚参数,进一步控制重复内容,范围-2.0到2.0,默认值0.0
Context Settings(上下文设置)
- Use System Prompt: 启用系统提示词功能,默认值true
- System Prompt: 配置聊天助手的系统提示词,默认为专业的C++、Qt和QML开发AI助手提示
Ollama Settings(Ollama设置)
- Livetime: 控制Ollama在完成请求后保持活跃的时间(分钟),设置为-1可禁用,默认值"5m"
- Context Window: 设置Ollama的上下文窗口大小,范围-1到10000,默认值2048
Chat Settings(聊天设置)
- Text Font: 设置聊天界面文本的字体家族,从系统可用字体中选择,默认为系统字体
- Text Font Size: 设置文本字体大小,默认为系统字体大小
- Code Font: 设置代码块的字体家族,默认为等宽字体
- Code Font Size: 设置代码字体大小,默认为系统字体大小
- Text Format: 设置文本格式显示方式,可选择Markdown、HTML或纯文本,默认为Markdown
结尾
根据上述提示设置后即可使用,如果有开启日志选项,可以在QtCreator底部概要信息内查看;如果想使用自动补全,又没有开启自动补全设置,可以通过快捷键Ctrl Alt Q或者右键菜单开启;如果想使用聊天助手,在底部QodeAssist Chat查看,如下图。
结束。
















