QtCreator接入外部AI大模型

文章目录

一、概要

本篇文章主要通过让QtCreator接入外部AI插件,实现在QtCretor里调用AI模型完成代码自动补全(Code Completion)和聊天助手(Chat Assistant)的目的。下面是需要操作的工具列表。
Qt版本:Qt5.14.2(自带QtCreator4.11.1,但是这里不用它)
QtCreator版本:QtCreator17.0.0(独立安装程序)
AI插件:QodeAssist项目文章用到的插件release版本

二、安装Qt5.14.2,配置高版本QtCreator

访问: 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查看,如下图。

在这里插入图片描述


结束。

Read more

Windows 10下零基础部署llama.cpp的完整指南(含常见错误解决方案)

Windows 10下零基础部署llama.cpp的完整指南(含常见错误解决方案) 最近身边不少朋友开始对本地运行大语言模型产生了兴趣,尤其是那些不想依赖云端服务、希望数据完全留在自己电脑上的技术爱好者。在Windows 10这个最普及的桌面系统上,部署一个像llama.cpp这样的高效推理框架,听起来有点门槛,但实际操作起来,只要跟着清晰的步骤走,避开几个常见的“坑”,整个过程其实比想象中要顺利得多。这篇文章就是为你准备的,无论你是刚接触命令行不久的新手,还是有一定基础但没玩过C++编译的开发者,都能在这里找到从零到一的完整路径。我们会把重点放在那些最容易出错的地方,确保你第一次尝试就能成功看到模型运行起来的效果。 1. 环境准备:搭建坚实的编译地基 在开始编译llama.cpp之前,我们需要一个合适的“施工环境”。对于Windows用户来说,这通常意味着要准备好两样核心工具:一个能用的C/C++编译器,以及一个项目构建系统。很多人第一步就卡在这里,因为Windows默认并不提供这些开发工具。 1.1 编译器选择与安装:GCC还是MSVC? llama.cpp项目主要使用

图像编辑新选择!Qwen-Image-Edit-2511对比Stable Diffusion

图像编辑新选择!Qwen-Image-Edit-2511对比Stable Diffusion 1. 技术背景与问题提出 近年来,AI图像生成与编辑技术迅速发展,以Stable Diffusion为代表的扩散模型在创意设计、内容生成等领域广泛应用。然而,在指令理解能力、角色一致性保持、工业级设计生成等方面,传统模型仍面临挑战。特别是在复杂语义编辑任务中,容易出现“图像漂移”或结构失真等问题。 为应对这些挑战,通义实验室推出了 Qwen-Image-Edit-2511 —— 一个基于多模态大模型驱动的图像编辑系统。该模型是 Qwen-Image-Edit-2509 的增强版本,重点优化了以下方面: * 减轻图像漂移现象 * 改进角色一致性表现 * 整合 LoRA 微调支持 * 增强工业设计类图像生成能力 * 提升几何推理与空间布局理解 本文将从技术原理、功能特性、部署实践和性能对比四个维度,深入分析 Qwen-Image-Edit-2511 相较于 Stable Diffusion 在图像编辑场景下的优势与适用边界。 2. 核心机制解析 2.1 模型架构设计

【教程】如何在WSL2:Ubuntu上部署llama.cpp

【教程】如何在WSL2:Ubuntu上部署llama.cpp

WSL2:Ubuntu部署llama.cpp llama.cpp 是一个完全由 C 与 C++ 编写的轻量级推理框架,支持在 CPU 或 GPU 上高效运行 Meta 的 LLaMA 等大语言模型(LLM),设计上尽可能减少外部依赖,能够轻松在多种后端与平台上运行。 安装llama.cpp 下面我们采用本地编译的方法在设备上安装llama.cpp 克隆llama.cpp仓库 在wsl中打开终端: git clone https://github.com/ggml-org/llama.cpp cd llama.cpp 编译项目 编译项目前,先安装所需依赖项: sudoapt update sudoaptinstall -y build-essential cmake git#

5分钟解锁Fooocus:让AI绘画像拍照一样简单

5分钟解锁Fooocus:让AI绘画像拍照一样简单 【免费下载链接】FooocusFocus on prompting and generating 项目地址: https://gitcode.com/GitHub_Trending/fo/Fooocus 还在为复杂的AI绘画工具设置而头疼吗?Fooocus的出现彻底改变了这一现状。这款专注于提示词优化和图像生成的开源工具,让每个人都能轻松创作出专业级的AI艺术作品。无论你是设计师、内容创作者还是艺术爱好者,Fooocus都将为你打开一扇通往创意世界的大门。 你的AI绘画痛点,Fooocus这样解决 复杂的参数设置让人望而却步? Fooocus采用智能预设系统,自动处理所有技术细节。你只需要关注创意表达,剩下的交给工具完成。 提示词效果不理想? 内置的智能提示词增强功能,能够自动优化你的描述,生成更符合预期的图像效果。 缺乏艺术背景? 没关系,Fooocus内置了200多种专业艺术风格,从写实摄影到动漫插画,从古典艺术到未来科技,总有一款适合你的创作需求。 极速上手:三步开启AI创作之旅 第一步:环境准备与安装 在