Langchain与OpenAI
一、Langchain
langchain官网地址:https://python.langchain.com/docs/get_started/introduction.html
1、介绍
LangChain 是一个利用语言模型开发应用程序的框架,它使应用程序能够:
Data-aware:将语言模型与其他数据源连接起来
Proxy:允许语言模型与其环境交互
LangChain的主要价值部分:
Components:用于处理语言模型的抽象概念,以及每个抽象概念的实现集合。无论您是否使用 LangChain 框架的其他部分,组件都是模块化的,易于使用。
Off-the-shelf chains:用于完成特定高级任务的组件结构化组合,现成的链可以让您轻松上手。对于更复杂的应用和细微的用例,组件可以轻松定制现有链或构建新链。
LangChain 为下列模块提供了标准的、可扩展的接口和外部集成,这些模块的复杂程度从低到高依次排列:
Model I/O(模型输入输出):语言模型接口
Retrieval(检索):与特定应用数据的接口
Chains(链):构建调用 ...
Go Gorm使用
一、Gorm介绍
go常用技巧
一、构建Go应用docker镜像1、go官方镜像介绍
go官方提供了官方镜像方便我们去构建go镜像,地址:https://hub.docker.com/_/golang
主要有三种镜像版本可供我们选择
golang:<version>:当不确定你的需求是什么,你可能想使用这个镜像
golang:<version>-alpine:精简版的go镜像,可以构建出更小体积的go应用镜像
golang:<version>-windowsservercore:服务于windows平台的构建镜像
2、构建镜像选择
我们可以选择不同go版本的镜像作为基础镜像进而构建出属于我们自己的go应用镜像
下文全部采用golang:1.17.13-alpine3.16作为基础镜像
12# 拉取镜像docker pull golang:1.17.13-alpine3.16
从下图可以看出golang:1.17.13-alpine3.16镜像大小为314M
3、初次构建web应用镜像
下面是自行编写的docker镜像,采用了golang:1.17.13- ...
node使用
一、node介绍1、浏览器中的JavaScript
浏览器中的javascript由两部分组成:
JS核心语法
变量
函数
对象
等等
WEBAPI
DOM操作
BOM操作
基于XMLHTTPRequest的ajax操作
等等
每个浏览器内置了DOM、BOM这样的API函数,因此浏览器中的JavaScript才可以调用
浏览器中的运行环境是指代码运行的所需必要环境,主要包括:
V8引擎负责解析和执行javascript代码
内置API是由运行环境提供的特殊接口,只能在所需的运行环境中调用
2、什么是node
node.js是一个基于Chrome V8 引擎的JavaScript运行环境
浏览器是JavaScript的前端运行环境
node.js是JavaScript的后端运行环境
node.js中无法调用DOM和BOM等浏览器内置API
node.js可以做什么?
能够构建web应用,比如express
可以构建跨平台应用,比如Electron
可以快速构建API接口,比如restify
3、安装node.js
从node.js官网下载LTS ...
Go LeetCode
一、学习笔记
https://books.halfrost.com/leetcode/
Go常用包
一、air包1、air介绍
air包可以用来热加载项目,而不用每次修改完代码以后重启项目,只要项目文件有修改,air会监听文件是否有修改,有修改的话就会自动重新编译运行
air特点:
彩色的日志输出
自定义构建或必要的命令
支持外部子目录
在 Air 启动之后,允许监听新创建的路径
更棒的构建过程
下图来自官方介绍
2、air安装
前提要在环境变量中设置GOPATH,因为下面两种方式都会安装在GOPATH目录下的bin目录中
如果没有设置GOPATH,那么下面两种方式安装完以后,在命令行输入air,会出现air命令未找到的错误
下图是GOPATH设置方式,mac中如果安装了iterm2,则需要修改的配置文件是~/.zshrc
2.1 使用go install(个人推荐)
使用Go的版本为1.16或更高
1go install github.com/cosmtrek/air@latest
2.2 使用install.sh(官方推荐)
安装的binary文件会存在目录GOPATH/bin/air
1curl -sSfL https://raw.githubuser ...
Git使用
一、Git简介
git教程:https://www.liaoxuefeng.com/wiki/896043488029600
Git官网:https://git-scm.com/
Git是一个免费且开源的分布式版本控制系统,旨在以高效的方式处理从小型到大型项目的所有内容。
Git学习起来简单,占用空间小,性能极快。它通过本地分支廉价、方便的暂存区和多工作流等功能,超越了Subversion、CVS、Perforce和ClearCase等SCM工具
二、Git使用1、本地仓库操作1.1 创建git仓库
在本地创建git仓库
创建git仓库以后,在当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了
如果你没有看到.git目录,那是因为这个目录默认是隐藏的,用ls -ah命令就可以看见
12# 在对应项目的目录下git init
12# 查看隐藏的.git目录ls -la
1.2 添加文件到git仓库
本步骤仅仅是添加文档到本地的git仓库
1234567# 添加文件 ...
计算机网络
一、计算机网络二、TCP
https://zhuanlan.zhihu.com/p/224595048
https://zhuanlan.zhihu.com/p/28894266
Go与gRPC
一、RPC协议
https://www.jianshu.com/p/5ade587dbc58
https://zhuanlan.zhihu.com/p/506415782
https://www.cnblogs.com/wongbingming/p/11086773.html
https://zhuanlan.zhihu.com/p/524902149
1、RPC概念
RPC(Remote Procedure Call Protocol)是远程过程调用的缩写,通俗的说就是调用远处服务器的一个函数,与之相对应的是本地函数调用
PRC的理解:
像调用本地函数一样,去调用远程服务器上的函数
进程间通信–应用层协议(http协议同层),底层使用TCP实现
一般调用函数时,最常见的就是本地调用和RPC调用,下面就来说说二者的区别
2、本地调用
当在本地调用代码时,就是定义函数,然后函数名()调用
下面代码:
先定义了一个useError函数
然后在main函数中调用
这是在本地调用的方式
1234567891011121314151617181920package mainim ...