Copilot使用体验

本篇是去年使用Copilot的记录,不代表目前水平,仅做个人记录同步,谨慎参考。

GitHub Copilot的订阅计划

https://docs.github.com/en/copilot/about-github-copilot/subscription-plans-for-github-copilot
个人版提供30天的免费试用。个人版每月10 美元或每年 100 美元。

Copilot操作文档

https://docs.github.com/en/copilot/quickstart
目前支持JetBrains IDEs,Vim/Neovim,Visual Studio,Visual Studio Code,Xcode。安装插件,登录Github账号就可以使用了,需要开代理。

基本操作

  • 获取代码建议,输入代码时会自动触发,使用“Tab”键采纳。
  • 切换建议,macOS使用“Option+]”或“Option+[”,windows使用“Alt+]” 或 “Alt+[”切换下一条,上一条。
  • 聊天模式,可以引用文件,生成测试代码,解释代码,修复问题。

基本操作,支持功能和同类型工具都大差不差,主要关注实际提示代码质量。

其他设置

  • 启用或禁用公共代码匹配的建议,如果选择允许匹配公共代码的建议,当Copilot建议匹配代码时,可以显示匹配的详细信息,并点击到GitHub上的相关存储库。
  • 访问Bing,Copilot将使用Bing在互联网上搜索与问题相关的信息。在讨论新技术或特定的主题时,Bing搜索尤其有用。

Copilot优缺点

优点

  • 提示速度快,支持语言丰富。
  • 偏向提示多行代码块,方便快捷。
  • 相对其他同类型工具提示更精准。
  • 会根据项目代码不断优化提示,做到更贴近所想。

缺点

  • 需要使用代理,没有国内的工具访问方便。
  • Copilot 是使用大量代码训练的,但它的范围仍然有限。 它可能无法处理一些复杂的代码结构或模糊的编程语言。
  • Copilot 并不是没有错误的。可能会生成看起来有效但实际无效的代码。 为了降低代码不准确的风险,需要仔细查看和测试生成的代码。
  • 由于上下文的限制,copilot不能全局考虑问题,更多的是解决局部的问题。会存在方法未复用的情况。

辅助编程相关场景举例说明

一般有三大类:

  • 代码-代码:包含代码补全、代码修复
  • 代码-文本:代码解释、代码优化、代码异常排查
  • 文本-代码:通过提示词 Prompt 做代码生成 (单元测试等)

支持语言

常用语言都支持(Java,python,JavaScript,Go,C, Kotlin等),亲测Flutter的Dart语言也可以很好的支持。

代码补全

场景:数据上报点击删除按钮时,pageinfo传入课程id(多个课程id用逗号分隔)
操作:当我输入到map方法做转换时,Copilot猜到我的意图,给出了下面的提示。

在这里插入图片描述


提示和预期完全一致,比较惊喜的地方在于,下载对象中属性字段很多,并且有“id”这个字段作为相似项干扰。
在我没有告知Copilot我的需求情况下,最终可以准确提示,还是很智能的。

代码修复

下面这段代码在实际运行中会报错崩溃,我们根据报错行数找到这段问题代码:

val goal ="${list[0].option.filter{ it.selected }[0]?.id ?: 1}"// java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0

选中这行问题代码,输入“/fix”修复这个问题。

在这里插入图片描述


可以看到copilot解释了问题的原因,并给出了解决方案。

代码生成

可以通过写注释的方式,让Copilot帮我们生成相关代码。Copilot会根据上下文,给到合理的代码。

在这里插入图片描述

Read more

Yolo11 基于DroneVehicle数据集的无人机视角下车辆目标检测

Yolo11 基于DroneVehicle数据集的无人机视角下车辆目标检测

1、关于DroneVehicle数据集介绍 DroneVenicle数据集是由天津大学收集、标注的大型无人机航拍车辆数据集。 DroneVehicle 数据集由无人机采集的共 56,878 幅图像组成,其中一半为 RGB 图像,其余为红外图像。我们对五个类别进行了带有方向性边界框的丰富标注。其中,汽车car 在 RGB 图像中有 389,779 个标注,在红外图像中有 428,086 个标注;卡车truck 在 RGB 图像中有 22,123 个标注,在红外图像中有 25,960 个标注;公交车bus 在 RGB 图像中有 15,333 个标注,在红外图像中有 16,590 个标注;面包车van 在

OpenClaw安装和接入飞书机器人完整教程

OpenClaw安装和接入飞书机器人分三大部分组织回答: 1)先讲环境准备和OpenClaw基础安装(分阿里云和本地Windows两种场景); 2)再讲飞书机器人配置(包括应用创建、通道添加、事件订阅); 3)最后讲验证和配置AI模型。 为了更直观,在部署方式对比、配置项说明等地方用表格呈现。 这是一份完整的OpenClaw安装及接入飞书机器人的教程。将涵盖从环境准备、OpenClaw部署(含阿里云服务器和本地Windows两种方式)、AI模型(以阿里云百炼为例)配置,到最终在飞书开放平台创建并接入机器人的全流程。 第一部分:准备工作与核心认知 在开始动手前,我们需要先了解 OpenClaw 是什么,并准备好必要的账号和工具。 1.1 什么是 OpenClaw? OpenClaw(昵称“小龙虾”,曾用名 ClawdBot / Moltbot)是一个开源的个人AI智能体框架。它本身不具备推理能力,需要对接大语言模型(如阿里云百炼、七牛云、OpenAI等)的API。它的核心价值在于: * 真正的执行能力:能通过“技能”

Flutter 三方库 bavard 的鸿蒙化适配指南 - 实现语义化的聊天消息协议、支持机器人自动回复逻辑与分布式通讯元数据封装

Flutter 三方库 bavard 的鸿蒙化适配指南 - 实现语义化的聊天消息协议、支持机器人自动回复逻辑与分布式通讯元数据封装

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 bavard 的鸿蒙化适配指南 - 实现语义化的聊天消息协议、支持机器人自动回复逻辑与分布式通讯元数据封装 前言 在进行 Flutter for OpenHarmony 的社交或客户支持类应用开发时,除了核心的 WebSocket 传输,如何规范化定义“消息(Message)”的数据结构以及处理复杂的对话逻辑状态,往往决定了项目的后期维护性。bavard 是一个专为高度语义化聊天交互设计的协议封装库。它能让你在鸿蒙端以极具逻辑感的对象模型来驱动对话流。本文将带大家了解如何利用 bavard 构建标准化的聊天架构。 一、原理解析 / 概念介绍 1.1 基础原理 bavard 将一次对话拆解为“参与者(Participants)”、“话题(Topics)”和“原子消息(Discrete Messages)”。它提供了一套完整的状态机,用于驱动从“

2025最新如何在本地部署 Stable Diffusion3.5超详细完整教程

2025最新如何在本地部署 Stable Diffusion3.5超详细完整教程

在本地部署 Stable Diffusion 3.5:让 AI 绘图更便捷 前言 随着人工智能的快速发展,图像生成技术日益成熟,Stable Diffusion 3.5 作为一款强大的 AI 绘图工具,广泛应用于设计师、创作者等人群的视觉内容生成。它能够通过文本提示生成高质量图像,且具备较高的可控性和细腻的生成效果。 然而,默认情况下,Stable Diffusion 3.5 仅能在局域网内运行,远程操作或者出门时调整参数、查看进度会受到限制。在本文中,我们将通过本地部署的方式,帮助您克服这一限制,实现更加灵活的使用。 提示:不同型号的 Stable Diffusion 对硬件要求有所不同。以 Large Turbo 版本为例,推荐配备至少 8GB 显存以保证流畅运行。 文章目录在本地部署 Stable Diffusion