不需要AI和数学知识背景,这篇文章带你学会大模型应用开发

转载自公众号「腾讯技术工程」,作者:ronaldo

前言

最近几年,大模型在技术领域的火热程度属于一骑绝尘遥遥领先,不论是各种技术论坛还是开源项目,大多都围绕着大模型展开。大模型的长期目标是实现 AGI,这可能还有挺长的路要走,但是眼下它已经深刻地影响了“编程”领域。各种 copilot 显著地提升了开发者的效率,但与此同时,开发者也变得非常地焦虑。因为开发者们实实在在感受到了它强大的能力,虽然目前只能辅助还有很多问题,但随着模型能力的增强,以后哪天会不会就失业了?与其担忧,我们不如主动拥抱这种技术变革。

macOS安装docker desktop 版失败

环境:macOS / M1 Pro

从官网下载最新的dmg,安装docker desktop时,提示错误信息:

installing vmnetd: retrieving vmnetd version from /Library/LaunchDaemons/com.docker.vmnetd.plist: reading plist /Library/LaunchDaemons/com.docker.vmnetd.plist: open /Library/LaunchDaemons/com.docker.vmnetd.plist: no such file or directory

解决方法:

运行一下brew命令

brew install --cask docker

重新运行下载下来的dmg安装包,问题就解决了

使用vite进行build打包时报错node进程内存溢出

环境:macOS / M1 Pro / node20

报错信息

FATAL ERROR:Reached heap limit Allocation failed - JavaScript heap out of memory

说明是node进程内存溢出,可以使用--max-old-space-size参数进行限制,默认的node进程的内存一般在4G以内,可以通过设置环境变量来临时扩大内存

export NODE_OPTIONS="--max-old-space-size=8192";

yarn build

通过这种方法可以临时扩大node进程的内存,并且在关闭当前终端环境时,环境变量会自动失效。如果要设置永久生效,可以在~/.bashrc文件中添加环境变量。

【vite-plugin-top-level-await】 Bindings not found

环境:macOS / M1 Pro / vue3 / node20

在vue项目中,使用了vite-plugin-top-level-await,但是在npm包中缺少了这个依赖

同时对应的还有另一个报错:
·


error during build:
Error: Bindings not found.
  at Compiler.<anonymous>(/Users/xxx/modules/@swc/core/index.js:125:23)

最开始以为是 @swc 包有问题,但是其实是最开始的报错【vite-plugin-top-level-await】 Bindings not found的问题。安装一下这个包即可

npm install --save-dev vite-plugin-top-level-await
前端依赖安装错误识别不到.node文件引入

报错详情

macOS系统,M1 Pro芯片,node版本20.9.0,vue版本3,项目中引入的node依赖文件是fsevents

项目启动过程中显示报错

[ERROR] No loader is configured for ".node" files: node_modules/fsevents/fsevents.node

解决办法

修改项目中./node_modules/fsevents/fsevents.js 文件

//修改
const Native = require("./fsevents.node")
//更改为
const Native = window.require("./fsevents.node")

举一反三

对于这种「.node」文件的引入报错,基本都可以这样修改,将「require」改为「window.require」即可正常引入

后期补充

该方法并不是万能的,我又找到了一种方法,当上面添加「window」的方法不能用的时候,可以在「vite.config.js」中添加如下配置:

// vite.config.js
optimizeDeps: {
    exclude: ["fsevents"],
  },
scss报错Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0

原因:安装的sass和sass-loader版本过高,进行降级处理

坑:删掉node_modules文件夹,重新安装时会默认安装高版本,即使你在package.json里面写了sass和sass-loader的版本号

查看sass版本方法:进入node_modules文件夹,找到sass依赖,查看package.json中的版本号

解决办法:输入命令来单独安装指定版本

npm i sass@1.62.1
npm i sass-loader@10 -D