当前位置: 首页 > news >正文

使用Llama3/Qwen2等开源大模型,部署团队私有化Code Copilot和使用教程

目前市面上有不少基于大模型的 Code Copilot 产品,部分产品对于个人开发者来说可免费使用,比如阿里的通义灵码、百度的文心快码等。这些免费的产品均通过 API 的方式提供服务,因此调用时均必须联网、同时需要把代码提示词等内容作为 API 的入参在网络中传输和 API 服务器中进行处理,这里就涉及到一个比较重要的问题:隐私安全

Code Copilot的公网API调用

针对小团队私有保密项目、创新团队孵化新产品,隐私安全问题就显得格外重要。因此,团队内部部署私有的Code Copilot方案就应运而出了:

Code Copilot的内部API服务

今天老牛同学和大家一起来使用Qwen2-7构建个人或者团队专属的私有化 Code Copilot,除了代码生成之外,还可以是支持 AI 问答代码解释语言转换、生成单元测试用例等功能。不但可以提高我们的研发效率,还可以保护我们的代码隐私。

第一步:部署私有的大模型(Qwen2-7B)

前面老牛同学介绍了本地部署大模型和使用教程,包括Llama3-8BQwen2-7BGLM4-9B、和Phi3等。大家可以看一下之前的部署教程,老牛同学今天使用Qwen2-7B作为我们 Copilot 底层大模型,对于本文Code Copilot的部署和使用,其他大模型都是一样的,看大家的喜好,没有特殊要求。

老牛同学这里简单列一下部署教程:

环境安装: 主要是Miniconda包管理安装,参见教程,注意只需要安装MinicondaPython即可,其他非必须:大模型应用研发基础环境配置(Miniconda、Python、Jupyter Lab、Ollama 等):https://mp.weixin.qq.com/s/P_ufvz4MWVSqv_VM-rJp9w

Code Copilot底层大模型的部署方式,老牛同学验证主要以下 2 种,任选一种即可:

方式一 基于 Ollama 部署:

  1. 下载并安装Ollama本地模型管理软件(Windows/Mac/Linux 均支持):https://ollama.com/download
  2. 通过 Ollama 下载并启动大模型:ollama run qwen2:7b

通过以上 2 步,即完成了大模型的部署。特别注意的是:GLM系列大模型还不支持 Ollama 管理!因此如果你希望用 GLM 系列(如:GLM4-9B)大模型,那么请看方式二。

方式二 通过 Python 部署:通用方法,所有模型都支持,以下是老牛同学验证过的部署教程

  1. Phi3:Phi-3 模型手机部署教程(微软发布的可与 GPT-3.5 媲美的小模型)
  2. Qwen2-7B:Qwen2 阿里最强开源大模型(Qwen2-7B)本地部署、API 调用和 WebUI 对话机器人
  3. Llama3-8B:玩转 AI,笔记本电脑安装属于自己的 Llama 3 8B 大模型和对话客户端
  4. GLM4-9B:本地部署 GLM-4-9B 清华智谱开源大模型方法和对话效果体验

第二步:IDE 安装和配置 Continue 插件

Code Copilot Continue是目前最受欢迎的插件之一,它插件的形式使用,目前支持VS CodeJetBrains 全家桶这 2 个主流 IDE 的扩展,可以在对应的插件市场中直接搜索Continue下载安装。Continue插件的一个最大优势在于它可以指定连接本地或者局域网内的大模型,所以对于信息安全高的项目,我们完全可以在本地或者局域网内部署大模型,然后用Continue插件连接使用,在提高开发生产效率同时保护了研发代码的隐私。目前Continue插件的社区活跃,GitHub 仓库已达12K星,插件版本更新频繁,越来越成熟。

因为老牛同学日常使用VS Code较多,因此下面的安装和配置,基于VS Code完成,JetBrains(如:PyCharm 等)的方式类同。

安装 Continue 插件: 插件管理器中,搜索Continue,点击安装,安装成功之后重启 IDE 即可。

安装Continue插件

Continue 插件状态: 安装成功并重启之后,可以看到VS Code的左侧多了一个Continue按钮。同时,右下角也多了一个Continue状态图标:√ Continue则代表Continue在 IDE 中生效了,🚫Continue则代表Continue在 IDE 未启用。

Continue插件状态

配置 Continue 插件: 点击左下角启用Continue插件,然后点击左侧的Continue按钮,可以看到一个对话界面,点击左下角齿轮形状的配置图标,则打开了一个 JSON 格式的配置文件,在这里可以配置Continue底层使用的大模型信息:

Continue插件配置

{"models": [{"title": "Qwen2:7B","provider": "ollama","model": "qwen2:7b"},{"title": "Llama3-8B","provider": "openai","model": "Local-Model","apiBase": "http://127.0.0.1:8000/v1","apiKey": "EMPTY","completionOptions": {"stop": ["<|eot_id|>"]}}],"customCommands": [{"name": "test","prompt": "{{{ input }}}\n\nWrite a comprehensive set of unit tests for the selected code. It should setup, run tests that check for correctness including important edge cases, and teardown. Ensure that the tests are complete and sophisticated. Give the tests just as chat output, don't edit any file.","description": "Write unit tests for highlighted code"}],// "tabAutocompleteModel": {//   "title": "Qwen2:7B",//   "provider": "ollama",//   "model": "qwen2:7b"// },"tabAutocompleteModel": {"title": "Llama3-8B","model": "Local-Model","apiBase": "http://127.0.0.1:8000/v1","provider": "openai","apiKey": "EMPTY"},"allowAnonymousTelemetry": true,"embeddingsProvider": {"provider": "transformers.js"}
}

Continue插件的配置信息主要分为 3 块:

  1. models 代表所有的模型列表:上面样例配置文件,老牛同学分别配置了基于Ollama部署的Qwen2-7B大模型和基于OpenAI客户端部署的Llama3-7B大模型(也就是涵盖了上面大模型的 2 种不同部署方式的不同配置方式)
  2. customCommands 自定义给大模型的提示词格式,input代表输入内容(代码或者文本等),可以按照实际需求进行调整
  3. tabAutocompleteModel 代码编写过程中,当按下代码生成快捷键时,Continue生成代码的大模型,从models列表里面指定一个即可,当然也可以设置一个其他的大模型(注意: 只能选择一个模型,上面样例配置注释掉了一个,在实际使用时需要删除掉,因为 JSON 不支持注释!)

第三步:使用 Code Copilot Continue 插件

首先,启动大模型(如:Qwen2-7B);其次,点击 IDE 左下角图标,以启用Continue插件;然后,选择一个对话大模型(默认选中第 1 个大模型):

启动Continue插件

使用方式一: 我们可以选择不同的大模型进行对话,相当于Continue插件提供了一个可视化对话客户端

使用方式二: 代码生成,也是本文的重点,下面老牛同学以快速排序算法为例,来如何利用Continue完成代码编写:

场景一:AI 对话代码同步

  1. 使用大模型对话能力,写出快速排序算法代码,Prompt 提示词:请提供一下功能代码:Python 实现快速排序算法函数,大模型很好的实现了算法逻辑,并且给了很多的说明和解释
  2. 选中快速排序算法函数的代码,然后按下CTRL+Shift+L快捷键,或者点击代码框右上角的Apply to current file按钮,Python 自动同步到了编辑器中了:

AI对话代码同步

场景二:代码自动补全

  1. 在编辑器中,只需要输入注释内容(不要按回车键):# Python实现快速排序算法函数
  2. 然后按下CTRL+Shift+L快捷键,然后在按下回车键,可以看到代码已经生成,可以按Tab键使用代码

代码自动补全

场景三:增加单元测试代码

  1. 在编辑器中,选中一段代码函数,然后按下CTRL+I快捷键
  2. 然后,在弹出的Ctrl+I指令框中输入:增加代码测试代码,然后按下回车键,可以看到生成了测试用例代码

输入选中代码指令

增加单元测试用例代码

场景四:代码自动填充对话框

  1. 在编辑器中,选中一段代码,然后按下Ctrl+L快捷键,代码自动填充到了左侧的对话框中
  2. 可以在对话框中继续输入指令,如:请解释一下这段代码,然后按回车键提交大模型:

代码填充对话框和解释

其他场景

  1. 增加注释
  2. 代码异常堆栈分析
  3. …… 其他请大家补充

最后:

使用开源大模型作为团队的 Code Copilot 工具,可以提高团队的开发效率,同时也可以保护团队的代码隐私。虽然目前开源的 LLM 相比闭源商用的 LLM 还有一些差距,但是随着开源 LLM 的不断发展,相信两者的差距以后会越来越小。以上就是今天介绍的内容,希望对大家有所帮助。


关注本公众号,我们共同学习交流进步 👇🏻👇🏻👇🏻

微信公众号:老牛同学

Phi-3 开源大模型

Phi-3 模型手机部署教程(微软发布的可与 GPT-3.5 媲美的小模型)

Qwen2-7B 开源大模型

Qwen2 阿里最强开源大模型(Qwen2-7B)本地部署、API 调用和 WebUI 对话机器人

Llama-3-8B 开源大模型

玩转 AI,笔记本电脑安装属于自己的 Llama 3 8B 大模型和对话客户端

一文彻底整明白,基于 Ollama 工具的 LLM 大语言模型 Web 可视化对话机器人部署指南

基于 Llama 3 搭建中文版(Llama3-Chinese-Chat)大模型对话聊天机器人

GLM-4-9B 开源大模型

本地部署 GLM-4-9B 清华智谱开源大模型方法和对话效果体验

ChatTTS 文本转语音模型

ChatTTS 开源文本转语音模型本地部署、API 使用和搭建 WebUI 界面

Stable Diffusion 3 文生图模型

Stable Diffusion 3 文生图“开源英雄”大模型本地部署和使用教程,轻松实现 AI 绘图自由

大模型应用实战

大模型应用研发基础环境配置(Miniconda、Python、Jupyter Lab、Ollama 等)

借助 AI 大模型,三分钟原创一部儿童故事短视频(附完整操作步骤)

高效编写大模型 Prompt 提示词,解锁 AI 无限创意潜能

Python 小游戏

AI 已来,我与 AI 一起用 Python 编写了一个消消乐小游戏

Python 游戏编程:一步步用 Python 打造经典贪吃蛇小游戏


相关文章:

使用Llama3/Qwen2等开源大模型,部署团队私有化Code Copilot和使用教程

目前市面上有不少基于大模型的 Code Copilot 产品&#xff0c;部分产品对于个人开发者来说可免费使用&#xff0c;比如阿里的通义灵码、百度的文心快码等。这些免费的产品均通过 API 的方式提供服务&#xff0c;因此调用时均必须联网、同时需要把代码、提示词等内容作为 API 的…...

C语言_结构体初阶(还未写完)

结构体的声明 1. 什么是结构&#xff1f;结构是一些值的集合&#xff0c;这些值称为成员变量。结构的每个成员可以是不同类型的变量 数组&#xff1a;一组相同类型元素的集合 结构体&#xff1a;一组不一定相同类型元素的集 2. 结构的声明 struct tag //tag根据实际情况给名字…...

MyBatis-Plus:快速入门

1. 概念 MyBatis-Plus&#xff08;简称 MP&#xff09;是一个MyBatis 的增强工具&#xff0c;在 MyBatis 的基础上只做增强不做改变&#xff0c;为简化开发、提高效率而生。其突出的特性如下&#xff1a; * **无侵入**&#xff1a;只做增强不做改变&#xff0c;引入它不会对现有…...

【高级篇】第9章 Elasticsearch 监控与故障排查

9.1 引言 在现代数据驱动的应用架构中,Elasticsearch不仅是海量数据索引和搜索的核心,其稳定性和性能直接影响到整个业务链路的健康度。因此,建立有效的监控体系和掌握故障排查技能是每一位Elasticsearch高级专家的必备能力。 9.2 监控工具:洞察与优化的利器 在Elastics…...

【前端】上传和下载zip文件,有进度条(el-progess)

文章目录 上传下载进度条 场景&#xff1a;要上传一个zip&#xff0c;调用接口&#xff0c;然后下载一个zip。调用接口的接口响应要显示在进度条中。 上传 上传用的是input原生控件&#xff0c;在页面中隐藏。accept"application/zip"限制只能上传zip。 点击button…...

2024年软件测试面试题,精选100+,附答案+文档

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 Part1 1、你的测试职业发展是什么&#xff1f; 测试经验越多&#xff0c;测试能力越高。所以我…...

在vue项目的.gitignore文件忽略不想要提交到git仓库的文件

在Vue项目中&#xff0c;使用.gitignore文件来忽略不需要提交到Git仓库的文件是一个常见的做法。.gitignore文件包含了一系列的规则&#xff0c;这些规则告诉Git哪些文件或目录应该被忽略。以下是一些Vue项目中常用的.gitignore文件示例和具体规则说明&#xff1a; 示例 .gitig…...

时序(流式)图谱数据仓库AbutionGraph功能介绍-Streaming Graph OLAM Database

AbutionGraph是一款端到端的流式数据实时分析的图谱数据库&#xff0c;实时&#xff08;流式写入实时、高QPS决策分析实时、流式预处理实时&#xff09;表现在&#xff1a; 构建实时查询QPS响应时长与历史数据量无关的图模型&#xff1b;接入流式数据并实时更新图计算指标&…...

windows实现Grafana+Loki+loki4j轻量级日志系统,告别沉重的ELK

文章目录 Loki下载Loki下载安装Loki添加Loki数据源springboot日志推送 Loki下载 下载地址&#xff1a;https://github.com/grafana/loki/releases/ 找到loki-windows-amd64.exe.zip点击开始下载&#xff0c;我这里下载的2.9.9版本 Loki下载 下载地址&#xff1a;https://gr…...

跟《经济学人》学英文:2024年06月01日这期 The side-effects of the TikTok tussle

The side-effects of the TikTok tussle tussle&#xff1a;美 [ˈtəsəl] 激烈扭打&#xff1b;争夺 注意发音 side-effects&#xff1a;副作用&#xff1b;&#xff08;side-effect的复数&#xff09; As the app’s future hangs in the balance, the ramifications of …...

Ubuntu安装PostgreSQL

Ubuntu(在线版) 更新软件源 sudo apt-get update 添加PostgreSQL官方数字签名 wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - 将地址添加到系统的软件包源列表中 echo "deb http://apt.postgresql.org/pub/repos/a…...

【HarmonyOS NEXT】鸿蒙如何让List组件不满一屏时,还要能滑动和回弹

当List组件不满一屏时&#xff0c;还要能滑动和回弹,就向系统设置 - 移动网络 页面一样 List设置如下属性&#xff1a; .edgeEffect(EdgeEffect.Spring, {alwaysEnabled: true}) edgeEffect edgeEffect(value: EdgeEffect, options?: EdgeEffectOptions) 设置边缘滑动效果。…...

JDK-SPI-服务提供者接口

归档 GitHub: JDK-SPI-服务提供者接口 SPI 源码说明 java.util.ServiceLoader /*** 服务加载器&#xff1a;给定接口&#xff0c;查找实现类。实现可迭代接口 */ public final class ServiceLoader<S> implements Iterable<S> {/*** 返回 ServiceLoader 实例 *…...

【docker】容器内配置环境变量

背景&#xff1a; 我要把下面的环境变量写到bash脚本里&#xff0c;起名叫environment_start.sh。 目的&#xff1a; 用于每次进入容器dev_into.sh的时候&#xff0c;让系统获取到环境变量。 操作步骤&#xff1a; 先在容器外找个合适的位置写环境变量bash脚本&#xff0c…...

Java 乐观锁与悲观锁

1. 前言 本节内容主要是对 Java 乐观锁与悲观锁进行更加深入的讲解,本节内容更加偏重于对乐观锁的讲解,因为 synchronized 悲观锁对于大部分学习者并不陌生,本节主要内容如下: 乐观锁与悲观锁的概念,之前有所讲解,这里用很小的篇幅进行知识的回顾,巩固;乐观锁与悲观锁…...

python学习2-数据结构与算法-链表

单链表是一种链式存取的数据结构&#xff0c;用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的&#xff0c;每个结点的构成&#xff1a;元素(数据元素的映象) 指针(指示后继元素存储位置)&#xff0c;元素就是存储数据的存储单元&#xff0c;指…...

项目一 nfs 共享服务器 Haproxy 代理 Keepalive 高可用集群

深入理解程序的数据存储 配置NFS服务器 配置ansible环境...

TCP粘包解决方法

一. 产生原因及解决方法 产生原因&#xff1a;TCP是面向连接、基于字节流的协议&#xff0c;其无边界标记。当服务端处理速度比不其接收速度时&#xff0c;就很容易产生粘包现象。 解决方法&#xff1a;目前主要有两种解决方法&#xff0c;一个是在内容中添加分割标识&#xf…...

高职人工智能专业实训课之“生成对抗网络(GAN)”

一、前言 生成对抗网络&#xff08;GAN&#xff09;作为人工智能领域的一项重要技术&#xff0c;已经在图像生成、风格迁移、数据增强等多个领域展现出巨大的潜力和应用价值。为了满足高职院校对GAN专业实训课程的需求&#xff0c;唯众人工智能教学实训凭借其前沿的教育技术平…...

【MySQL系列】隐式转换

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

亿发:信息化建设or面子工程?究竟什么才是真正的信息化解决方案

在现代企业的竞争中&#xff0c;信息化建设扮演着越来越重要的角色。信息化技术不仅是企业提升管理效率、优化运营模式的利器&#xff0c;更是企业在市场竞争中脱颖而出的关键。然而&#xff0c;许多企业在推进信息化的过程中&#xff0c;往往容易陷入“面子工程”的误区。那么…...

【微信小程序开发实战项目】——如何制作一个属于自己的花店微信小程序(1)

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;开发者-曼亿点 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 曼亿点 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a…...

树形结构C语言的实现

一.什么是树&#xff1a; 树形结构是一层次的嵌套结构。一个树形结构的外层和内层有相似的结构&#xff0c;所以这种结构多可以递归的表示。经典数据结构中的各种树状图是一种典型的树形结构&#xff1a;一棵树可以简单的表示为根&#xff0c;左子树&#xff0c;右子树。左子树…...

小程序渗透测试的两种方法——burpsuite、yakit

首先呢主要是配置proxifier&#xff0c;找到小程序的流量&#xff0c;然后使用burpsuite或者yakit去抓包。 一、使用burpsuiteproxifier的抓包测试 1、先配置proxifier&#xff0c;开启http流量转发 勾选确定 2、配置burp对应代理端口&#xff0c;选择profile&#xff0c;点…...

代码随想录训练营Day56

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、搜索插入位置二、在排序数组中查找元素的第一个和最后一个位置 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 今天是跟着代码随想…...

S32K3 工具篇4:如何在S32DS中使用lauterbach下载

S32K3 工具篇4&#xff1a;如何在S32DS中使用lauterbach下载 1. TRACE32软件下载与配置2. 如何在S32DS里面构建劳德巴赫的接口2.1 新建工程带有lauterbach2.2 已有工程没有lauterbach 劳德巴赫lauterbach是一款非常经典强悍的调试器&#xff0c;还带有trace功能&#xff0c;在汽…...

深度神经网络语言识别

「AI秘籍」系列课程&#xff1a; 人工智能应用数学基础人工智能Python基础人工智能基础核心知识人工智能BI核心知识人工智能CV核心知识 使用 DNN 和字符 n-gram 对一段文本的语言进行分类&#xff08;附 Python 代码&#xff09; 资料来源&#xff0c;flaticon&#xff1a;htt…...

STM32自己从零开始实操07:电机电路原理图

一、LC滤波电路 其实以下的滤波都可以叫低通滤波器。 1.1倒 “L” 型 LC 滤波电路 1.1.1定性分析 1.1.2仿真实验 电感&#xff1a;通低频阻高频的。仿真中高频信号通过电感&#xff0c;因为电感会阻止电流发生变化&#xff0c;故说阻止高频信号 电容&#xff1a;隔直通交。…...

网页计算器的实现

简介 该项目实现了一个功能完备、交互友好的网页计算器应用。只使用了 HTML、CSS 和 JavaScript &#xff0c;用于检验web前端基础水平。 开发环境&#xff1a;Visual Studio Code开发工具&#xff1a;HTML5、CSS3、JavaScript实现效果 功能设计和模块划分 显示模块&#…...

JAVA设计模式-监听者模式

什么是监听者模式 监听器模式是一种观察者模式的扩展&#xff0c;也被称为发布-订阅模式。在监听器模式中&#xff0c;存在两类角色&#xff1a;事件源&#xff08;Event Source&#xff09;和监听器&#xff08;Listener&#xff09;。事件源负责产生事件&#xff0c;而监听器…...

anaconda命令大全

目录 查看所有虚拟环境查看某虚拟环境安装的包创建虚拟环境激活创建好的虚拟环境回到之前的环境删除创建的虚拟环境查看conda所在的位置、虚拟环境位置等信息conda修改虚拟环境所在的位置 查看所有虚拟环境 conda env list查看某虚拟环境安装的包 激活要查看的虚拟环境之后&a…...

“论单元测试方法及应用”写作框架,软考高级论文,系统架构设计师论文

论文真题 1、概要叙述你参与管理和开发的软件项目,以吸你所担的主要工作。 2、结给你参与管理和开发的软件项目&#xff0c;简要叙述单元测试中静态测试和动态测试方法的基本内容。 3、结给你惨与管理和研发的软件项目,体阐述在玩测试过程中,如何确定白盒测试的覆盖标准,及如…...

基于布雷格曼偏差校正技术的全变分一维时间序列信号降噪方法(MATLAB R2018A)

信号降噪是信号处理的重要步骤之一&#xff0c;目的是提高所获得信号数据的质量&#xff0c;以达到更高的定性和定量分析精度。信号降噪能提升信号处理其他环节的性能和人们对信息识别的准确率&#xff0c;给信号处理工作提供更可靠的保证。信号降噪的难点是降低噪声的同时也会…...

【CentOS 7.6】Linux版本 portainer本地镜像导入docker安装配置教程,不需要魔法拉取!(找不着镜像的来看我)

吐槽 我本来根本不想写这篇博客&#xff0c;但我很不解也有点生气&#xff0c;CSDN这么大没有人把现在需要魔法才能拉取的镜像放上来。 你们都不放&#xff0c;根本不方便。我来上传资源。 portainer-ce-latest.tar Linux/amd64 镜像下载地址&#xff1a; 链接&#xff1a;h…...

【windows|012】光猫、路由器、交换机详解

&#x1f341;博主简介&#xff1a; &#x1f3c5;云计算领域优质创作者 &#x1f3c5;2022年CSDN新星计划python赛道第一名 &#x1f3c5;2022年CSDN原力计划优质作者 ​ &#x1f3c5;阿里云ACE认证高级工程师 ​ &#x1f3c5;阿里云开发者社区专家博主 &#x1f48a;交流社…...

Node之Web服务

前言 本文将讲解node的web服务 通过讲解http请求&#xff0c;node创建web服务等知识点让你更加深入的理解web服务和node创建的web服务 HTTP请求是什么&#xff1f; HTTP请求是客户端&#xff08;通常是浏览器或其他应用程序&#xff09;与服务器之间进行通信的一种方式。 …...

[Day 24] 區塊鏈與人工智能的聯動應用:理論、技術與實踐

AI在自動駕駛中的應用 1. 簡介 自動駕駛技術是現代交通領域的一個革命性進展。通過結合人工智能&#xff08;AI&#xff09;、機器學習&#xff08;ML&#xff09;、深度學習&#xff08;DL&#xff09;和傳感器技術&#xff0c;自動駕駛汽車可以在無人干預的情況下安全駕駛。…...

计算机图形学入门25:BRDF的测量

1.前言 BRDF(双向反射分布函数)可以用各种各样的材质去描述&#xff0c;但是这只是一种基于物理的描述或者近似&#xff0c;那什么是真正的BRDF&#xff1f;只有测出来的才是真正的。 为什么要测出BRDF&#xff1f;因为之前所描述的BRDF并不准确。如下图所示&#xff0c;以菲涅…...

空调计费系统是什么,你知道吗

空调计费系统是一种通过对使用空调的时间和能源消耗进行监测和计量来进行费用计算的系统。它广泛应用于各种场所&#xff0c;如家庭、办公室、商场等&#xff0c;为用户提供了方便、准确的能源使用管理和费用控制。 可实现功能 智能计费&#xff1a;中央空调分户计费系统通过智…...

震惊!张宇25版高数18讲发布,656页惹争议!

这个张宇老师在微博已经解释过了&#xff01; 我觉得张宇老师本意是好的&#xff0c;在考研数学教学创新这方面&#xff0c;他真的有自己的思考。 他为什么要这么做&#xff1f; 其实作为一个考研高数老师&#xff0c;他完全可以像其他老师一样&#xff0c;什么都不做&#x…...

React+TS前台项目实战(二十三)-- 基于属性自定义数值显示组件Decimal封装

文章目录 前言Decimal组件1. 功能分析2. 代码详细注释3. 使用方式4. 效果展示 总结 前言 今天要封装的Decimal 组件&#xff0c;是通过传入的属性进行定制化显示数值&#xff0c;在渲染时&#xff0c;会根据不同的情况显示整数部分、小数部分和单位&#xff0c;支持自定义样式…...

pip install包出现哈希错误解决

如图&#xff0c;当遇到此类错误时&#xff0c;多半是连接不稳定导致的校验失败。我们可以在PC端&#xff0c;或Ubuntu通过浏览器下载.whl安装文件&#xff1a;直接复制报错信息中的网址到浏览器即可弹出下载窗口。...

多线程压测方法模板

主要步骤 创建一个线程池 ExecutorService service Executors.newFixedThreadPool(20);创建任务 Runnable task () -> {// 具体实现 };提交多个任务到线程池 for (int i 0; i < 100000; i) {service.submit(task); }关闭线程池 service.shutdown();等待所有任务完成 s…...

Uniapp软件库全新带勋章功能(包含前后端源码)

源码介绍&#xff1a; Uniapp开发的软件库全新带勋章功能&#xff0c;搭建好后台 在前端找到 util 这个文件 把两个js文件上面的填上自己的域名&#xff0c;电脑需要下载&#xff1a;HBuilderX 登录账号 没有账号就注册账号&#xff0c; 然后上传文件&#xff0c;打包选择 “…...

秋招突击——7/5——设计模式知识点补充——适配器模式、代理模式和装饰器模式

文章目录 引言正文适配器模式学习篮球翻译适配器 面试题 代理模式学习面试题 装饰器模式学习装饰模式总结 面试题 总结 引言 为了一雪前耻&#xff0c;之前腾讯面试的极其差&#xff0c;设计模式一点都不会&#xff0c;这里找了一点设计模式的面试题&#xff0c;就针对几个常考…...

bmob Harmony鸿蒙快速开发搜索功能

搜索功能是很多应用都需要的功能。在很多平台上&#xff0c;要开发一个兼容性较好的搜索功能都还是需要添加比较多的视图代码的。 为了解决这个问题&#xff0c;鸿蒙ArkUI提供了一个快速添加搜索功能的视图组件给我们&#xff0c;结合Bmob Harmony鸿蒙SDK的搜索能力&#xff0…...

软通动力子公司鸿湖万联最新成果SwanLink AI亮相世界人工智能大会

7月4日&#xff0c;2024世界人工智能大会暨人工智能全球治理高级别会议&#xff08;WAIC 2024&#xff09;在上海拉开帷幕&#xff0c;软通动力董事长兼首席执行官刘天文受邀出席开幕式。其间&#xff0c;软通动力携子公司鸿湖万联深度参与到大会各项活动中&#xff0c;并全面展…...

查看Linux系统中日志文件

Linux 系统中 Ubuntu&#xff0c;Debian&#xff0c;CentOS&#xff0c;RedHat 作为常用的服务器软件系统&#xff0c;很多人都已经熟知。不论是服务器出现问题&#xff0c;还是日常维护或各种环境搭建&#xff0c;我们经常需要登录上服务器查看日志。 如果熟知 Linux 下的 ta…...

技术干货|如何轻松完成空调管路的随机振动分析以及疲劳寿命预测

基于NVHD 的虚拟路面谱激励车内结构路噪优化 作者&#xff1a;戴相花 颜磊 吕霞 杨凯 单位&#xff1a;苏州三星电子有限公司 论文摘要 随机振动试验是评估空调管路流通振动耐久性的重要试验之一。本文以某型号空调管路系统为研究对象&#xff0c;评估空调管路随机振动疲劳…...

中英双语介绍中国的城市:上海市(Shanghai)

中文版 上海市是中国最大的城市之一&#xff0c;也是全球重要的金融、贸易和航运中心。作为一座现代化的国际大都市&#xff0c;上海以其繁华的商业区、丰富的文化遗产和多样化的经济结构而闻名。以下是对上海市的详细介绍&#xff0c;包括其地理位置、人口、经济、教育、文化…...