QT6开发高性能企业视频会议-8 使用VSCode+Copilot AI开发

Github Copilot是Github和OpenAI推出的AI编程辅助工具,之前版本的Github Copilot只有简单的代码自动补全,根据注释生成一些代码等辅助功能。

近期Copilot有了一次大的升级,加入了Agent模式,可以实现自然语言对话讨论和最重要的,根据指定的上下文直接按指令生成或者修改项目代码,做到了类似Cursor的体验,并且基础版是免费使用的。

付费版Copilot可以指定更多的AI模型,包括最新的Claude 3.7等,并且能使用无限次的token。

本文简单介绍如何在Visual Studio Code中集成和使用Github Copilot,以下步骤都需要科学上网。

在Visual Studio Code中集成Copilot插件

首先需要登录Github账号并启用Github Copilot。

Sign in to GitHub · GitHub

然后我们需要为Visual Studio Code安装Github Copilot插件

安装完成后,左侧工具栏会出现Copilot Chat的图标。

使用Chat模式

在Chat模式中,Copilot会自动把当前正在编辑的代码文件代入Chat上下文,我们也可以右键点击某个项目中的文件,在Copilot菜单中把它加入Chat上下文。同时Copilot还支持上传图片,选中代码片段甚至某个GIt Change作为上下文。

之后我们和Copilot的对话中Copilot会自动关联这些上下文的内容做出回应。

这里是一个通过文字描述生成一个QML窗口的例子:

复制代码
import QtQuick 2.15
import QtQuick.Controls 2.15

ApplicationWindow {
    visible: true
    width: 400
    height: 300
    title: "User Login"

    Column {
        anchors.centerIn: parent
        spacing: 20

        Text {
            text: "Login"
            font.pixelSize: 24
            horizontalAlignment: Text.AlignHCenter
            anchors.horizontalCenter: parent.horizontalCenter
        }

        TextField {
            id: usernameField
            placeholderText: "Username"
            width: parent.width * 0.8
            anchors.horizontalCenter: parent.horizontalCenter
        }

        TextField {
            id: passwordField
            placeholderText: "Password"
            echoMode: TextInput.Password
            width: parent.width * 0.8
            anchors.horizontalCenter: parent.horizontalCenter
        }

        Button {
            text: "Login"
            width: parent.width * 0.8
            anchors.horizontalCenter: parent.horizontalCenter
            onClicked: {
                // Handle login logic here
                console.log("Username: " + usernameField.text)
                console.log("Password: " + passwordField.text)
            }
        }
    }
}

生成之后可以让Copilot帮忙修改

复制代码
import QtQuick 2.15
import QtQuick.Controls 2.15

ApplicationWindow {
    visible: true
    width: 800
    height: 400
    title: "User Login"

    Row {
        anchors.centerIn: parent
        spacing: 20

        Image {
            source: "qrc:/images/left_image.png" // Replace with the path to your image
            width: 300
            height: 300
            fillMode: Image.PreserveAspectFit
        }

        Column {
            spacing: 20
            width: 300

            Text {
                text: "Login"
                font.pixelSize: 24
                horizontalAlignment: Text.AlignHCenter
                anchors.horizontalCenter: parent.horizontalCenter
            }

            TextField {
                id: usernameField
                placeholderText: "Username"
                width: parent.width
                anchors.horizontalCenter: parent.horizontalCenter
            }

            TextField {
                id: passwordField
                placeholderText: "Password"
                echoMode: TextInput.Password
                width: parent.width
                anchors.horizontalCenter: parent.horizontalCenter
            }

            Button {
                text: "Login"
                width: parent.width
                anchors.horizontalCenter: parent.horizontalCenter
                onClicked: {
                    // Handle login logic here
                    console.log("Username: " + usernameField.text)
                    console.log("Password: " + passwordField.text)
                }
            }
        }
    }
}

Chat模式除了可以用自然语言进行交流,还可以使用一些关联到Visual Studio Code的预制指令,具体可以在Chat窗口中输入/查看

使用Edit模式

如果希望Copilot直接帮我们修改项目中的文件,可以使用Copilot的编辑模式。

在编写代码时,按下Ctrl+Shift+I,右侧会弹出Edit窗口,使用方式和Chat基本一样,不同的地方是Edit模式会直接把结果更改到你的代码文件中,在保存修改之前会弹出Diff窗口让我们确认Accept或者Discard。

神旗视讯 -- 开源高性能的音视频系统

开源地址: https://gitee.com/sqmeeting

相关推荐
m0_65010824几秒前
多模态大模型 VS. 图像视频生成模型浅析
人工智能·技术边界与协同·mllm与生成模型·技术浅谈
ai_xiaogui3 分钟前
Mac苹果版Krita AI一键安装教程:AIStarter+ComfyUI零基础部署全流程(X86/ARM双架构)
arm开发·人工智能·macos·comfyui·一键部署·ai绘画教程·kritaai
lapiii35827 分钟前
[智能体设计模式] 第11章:目标设定与监控模式
人工智能·设计模式
这张生成的图像能检测吗35 分钟前
(论文速读)WFF-Net:用于表面缺陷检测的可训练权重特征融合卷积神经网络
人工智能·深度学习·神经网络·缺陷检测·图像分割
shayudiandian1 小时前
RNN与LSTM详解:AI是如何“记住”信息的?
人工智能·rnn·lstm
美人鱼战士爱学习1 小时前
2025 Large language models for intelligent RDF knowledge graph construction
人工智能·语言模型·知识图谱
jz_ddk1 小时前
[算法] 算法PK:LMS与RLS的对比研究
人工智能·神经网络·算法·信号处理·lms·rls·自适应滤波
qinyia1 小时前
使用Wisdom SSH的AI多会话功能进行批量命令执行和跨服务器智能运维
运维·人工智能·ssh
YisquareTech1 小时前
如何实现智能补货?EDI与ERP集成打造零售库存的“自动闭环”
大数据·人工智能·零售·伊士格科技·erp集成
观远数据2 小时前
数据驱动零售新生态:观远BI打造终端经营“透视镜”
大数据·人工智能·信息可视化·数据分析·零售