llm-universe Part one

41

llm-universe Part one


image-20240617105110385

第一部分

大模型开发基本了解

**LLM --(**大语言模型Large Language Model

  • 开发流程

image-20240617105228637

  • LangChain

官方介绍:

LangChain is a framework for developing applications powered by large language models (LLMs).

For these applications, LangChain simplifies the entire application lifecycle:

我目前的理解,我们可以利用这个平台,去更快捷和方便的搭建我们的LLm应用

  • RAG

RAG(Retrieval-Augmented Generation,检索增强生成)是一种结合信息检索与生成式模型的方法,主要用于增强大语言模型(如GPT)的生成能力和准确性。RAG模型由Facebook AI提出,旨在通过将生成模型与检索模型结合,使生成结果更加丰富和准确。

以上是标准解释 -- 主要优势有:

  • 增强准确性:通过引用外部检索到的信息,RAG可以在回答问题时提供更准确和具体的答案。
  • 知识丰富度:生成模型不再仅依赖于预训练时学习到的知识,还可以动态地访问最新和更广泛的知识库。
  • 减少幻觉(Hallucination):生成模型单独使用时可能会生成不准确或虚构的内容,而通过检索相关信息,可以减少这种现象的发生。

这里我查询和了解了大模型的这个幻觉:

大模型的幻觉(Hallucination)是指生成式模型在生成文本时产生的不准确或虚构内容的现象。这种现象在大语言模型中较为常见,特别是在处理没有明确答案的问题或在生成涉及具体事实的内容时。

这里举一个我看到的例子:

 问题:请问亚历山大·弗莱明是什么时候发明青霉素的?
 ​
 正确答案
 亚历山大·弗莱明在1928年发现了青霉素。
 ​
 模型生成的幻觉示例
 亚历山大·弗莱明在1935年发明了青霉素,这一发现极大地推动了抗生素的发展。青霉素首次用于临床是在1941年,拯救了许多在二战期间受伤的士兵。

这个时间并不准确,模型在输出结果的时候产生了幻觉.


阿里云服务器部署与配置

在阿里云上购买了一台基本服务器

**基本规格: **2核2GB 的服务器

操作系统: Ubuntu 22.04 64位 UEFI版

在vscode上连接服务器

  • 下载扩展 ---- “Remote -SSH”

image-20240616152736521

  • 连接
 ssh root@my_ip
  • Linux - 输入密码image-20240616152905548

成功在vscode上连接

  • 其他:
    为了方便我在 xshell 上也连接了这台阿里云服务器

codespace:

image-20240616114626743

**这里也是注册和搭建好了一个 **codespace


环境配置:

ssh介绍

SSH(Secure Shell 的缩写)是一种网络协议,用于加密两台计算机之间的通信,并且支持各种身份验证机制。

生成ssh密钥

 ssh key ssh-keygen -t rsa -C "youremail@example.com"

ssh-keygen: 这是一个用于创建新的 SSH 密钥对的命令。

-t rsa: 这个参数指定要生成的密钥类型为 RSA (一种常见的加密算法)。

-C "youremail@example.com": 这个参数为生成的密钥添加一个标签 (评论),通常是你的电子邮件地址,以便你可以在多个密钥中识别该密钥。

 cat ~/.ssh/id_rsa.pub

将内容复制到GitHub SSH keys 上

配置成功!

安装conda环境

  • 安装
 mkdir -p ~/miniconda3
 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
 bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
 rm -rf ~/miniconda3/miniconda.sh
  • 初始化
 ~/miniconda3/bin/conda init bash
 ~/miniconda3/bin/conda init zsh
  • 检查conda是否安装成功:
 conda --version
 **conda成功安装**!

image-20240616121230782

配置和安装conda

conda create -n llm-universe python=3.10
#新建一个conda虚拟环境

conda activate llm-universe
#激活这个环境
  • 新建完成:

  • 激活完成

image-20240616121908743

  • 在我的工作目录下使用git clone项目文件:
git clone git@github.com:datawhalechina/llm-universe.git
  • 安装对应软件包
cd llm-universe
#切换到对应目录下

pip install -r requirements.txt
#安装

image-20240616123608197

成功安装!

安装vscode对应插件:

在扩展商店中寻找,这里已经成功安装

i

  • Jupyter Notebook 配置 Python 环境

image-20240616124133594

选择我们之前创建的conda环境

下载NLTK 相关资源

cd /root
#安装在root目录下
git clone https://gitee.com/yzy0612/nltk_data.git  --branch gh-pages
#git clone 项目文件
cd nltk_data
mv packages/*  ./
cd tokenizers
unzip punkt.zip
cd ../taggers
unzip averaged_perceptron_tagger.zip

image-20240616144730404

下载和解压后即可

完成NLKT的安装!