搭建 Langchain-Chatchat 详细过程
前言
本文参考官网和其他多方教程,将搭建 Langchain-Chatchat 的详细步骤进行了整理,供大家参考。
我的硬件
- 4090 显卡
- win10 专业版本
搭建环境使用 chatglm2-6b 模型
1. 创建虚拟环境 chatchat ,python 3.9 以上
conda create -n chatchat python=3.10
2. 激活环境
conda activate chatchat
3. 在自己选好的目录下拉取仓库
git clone https://github.com/chatchat-space/Langchain-Chatchat.git
4. 安装所需要的依赖
pip.exe install -r requirements.txt (使用清华源应该能加速下载 -i https://pypi.tuna.tsinghua.edu.cn/simple)
5. 安装 pytorch ,进入 https://pytorch.org/get-started/previous-versions/
页面搜索 11.6
(这是我的 cuda 版本),即可找到对应版本的下载命令
pip.exe install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116
6. 拉取 chatglm2-6b 模型(需要配置好 VPN )
git clone https://huggingface.co/THUDM/chatglm2-6b (如果网络稳定应该可以成功下载,如果不稳定,直接去页面点击各个模型进行下载,然后放到指定的目录中即可,反正原则就是将网页的文件都下载到本地目录即可)
7. 拉取 m3e 模型(这个和上面同样的操作)
git clone https://huggingface.co/moka-ai/m3e-base
如果 git 拉取代码的时候报下面的错 Failed to connect to huggingface.co port 443 after 21045 ms: Couldn’t connect to server ,将 git 的代理重新设置一下,然后尝试重新 clone 。
git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy http://127.0.0.1:7890
8. 将 Langchain-Chatchat/configs 下面的所有以 .example 结尾的文件都复制一份,将原文件名结尾的 .example 去掉,这样得到所有的新文件就是 py 文件,如图所示。下面的 model_config.py 文件需要特殊处理,其他的文件使用默认配置。
9. model_config.py 中的配置需要修改,配置 m3e 和 chatglm2-6b 的模型的绝对路径
MODEL_PATH['embed_model']['m3e-base'] 改为自己存放 m3e 的绝对路径 'D:\\m3e-base'
MODEL_PATH['llm_model']['chatglm2-6b'] 改为自己存放 chatglm2-6b 的绝对路径 'D:\\chatglm2-6b'
TEMPERATURE 不建议过高,如果是 Agent 对话或者知识库问答,强烈建议设置为接近 0 或者 0
TEMPERATURE = 0.1
同样的道理,如果你使用其他的模型如 chatglm3-6b
,那么就提前将 huggingface 中的 chatglm3-6b 项目下载到本地,然后在 MODEL_PATH["llm_model"]
中仿照上下文的格式新增一行内容,配置好绝对路径即可。如果想在启动的时候使用 chatglm3-6b 要把 LLM_MODEL
参数改为 chatglm3-6b 即可。
10. 初始化知识库
python.exe init_database.py --recreate-vs
打印如下表示成功:
database talbes resetedrecreating all vector stores2023-11-08 19:08:33,030 - faiss_cache.py[line:75] - INFO: loading vector store in 'samples/vector_store' from disk.{}2023-11-08 19:08:33,100 - SentenceTransformer.py[line:66] - INFO: Load pretrained SentenceTransformer: D:\m3e-base2023-11-08 19:08:33,560 - loader.py[line:54] - INFO: Loading faiss with AVX2 support.2023-11-08 19:08:33,560 - loader.py[line:58] - INFO: Could not load library with AVX2 support due to:ModuleNotFoundError("No module named 'faiss.swigfaiss_avx2'")2023-11-08 19:08:33,560 - loader.py[line:64] - INFO: Loading faiss.2023-11-08 19:08:33,570 - loader.py[line:66] - INFO: Successfully loaded faiss.2023-11-08 19:08:33,580 - faiss_cache.py[line:75] - INFO: loading vector store in 'samples/vector_store' from disk.Batches: 100%|███████████████████████████████████████████████████████████████████████████| 1/1 [00:01<00:00, 1.08s/it]2023-11-08 19:08:34,821 - utils.py[line:287] - INFO: UnstructuredFileLoader used for D:\Langchain-Chatchat\knowledge_base\samples\content\test.txt
11. 启动项目,因为我的 20000 端口已经被占了,而且杀不掉所以重启电脑再启动项目
python.exe .\startup.py -a
会打印如下信息:
==============================Langchain-Chatchat Configuration==============================
操作系统:Windows-10-10.0.19045-SP0.
python版本:3.10.13 | packaged by Anaconda, Inc. | (main, Sep 11 2023, 13:24:38) [MSC v.1916 64 bit (AMD64)]
项目版本:v0.2.6
langchain版本:0.0.331. fastchat版本:0.2.31
当前使用的分词器:ChineseRecursiveTextSplitter
当前启动的LLM模型:['chatglm2-6b'] @ cuda
{'device': 'cuda','host': '127.0.0.1','infer_turbo': False,'model_path': 'D:\\chatglm2-6b','port': 20002}
当前Embbedings模型: m3e-base @ cuda
==============================Langchain-Chatchat Configuration==============================
2023-11-08 20:20:45,665 - startup.py[line:626] - INFO: 正在启动服务:
2023-11-08 20:20:45,665 - startup.py[line:627] - INFO: 如需查看 llm_api 日志,请前往 D:\Langchain-Chatchat\logs
2023-11-08 20:20:48 | ERROR | stderr | INFO: Started server process [6772]
2023-11-08 20:20:48 | ERROR | stderr | INFO: Waiting for application startup.
2023-11-08 20:20:48 | ERROR | stderr | INFO: Application startup complete.
2023-11-08 20:20:48 | ERROR | stderr | INFO: Uvicorn running on http://127.0.0.1:20000 (Press CTRL+C to quit)
2023-11-08 20:20:48 | INFO | model_worker | Register to controller
2023-11-08 20:20:48 | INFO | model_worker | Loading the model ['chatglm2-6b'] on worker 928af55b ...
Loading checkpoint shards: 0%| | 0/7 [00:00<?, ?it/s]
Loading checkpoint shards: 14%|████████▏ | 1/7 [00:01<00:06, 1.09s/it]
Loading checkpoint shards: 29%|████████████████▎ | 2/7 [00:02<00:05, 1.14s/it]
Loading checkpoint shards: 43%|████████████████████████▍ | 3/7 [00:03<00:04, 1.11s/it]
Loading checkpoint shards: 57%|████████████████████████████████▌ | 4/7 [00:04<00:03, 1.06s/it]
Loading checkpoint shards: 71%|████████████████████████████████████████▋ | 5/7 [00:05<00:02, 1.10s/it]
Loading checkpoint shards: 86%|████████████████████████████████████████████████▊ | 6/7 [00:06<00:01, 1.10s/it]
Loading checkpoint shards: 100%|█████████████████████████████████████████████████████████| 7/7 [00:07<00:00, 1.06it/s]
Loading checkpoint shards: 100%|█████████████████████████████████████████████████████████| 7/7 [00:07<00:00, 1.03s/it]
2023-11-08 20:20:56 | ERROR | stderr |
2023-11-08 20:20:58 | INFO | model_worker | Register to controller
INFO: Started server process [23280]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://127.0.0.1:7861 (Press CTRL+C to quit)
==============================Langchain-Chatchat Configuration==============================
操作系统:Windows-10-10.0.19045-SP0.
python版本:3.10.13 | packaged by Anaconda, Inc. | (main, Sep 11 2023, 13:24:38) [MSC v.1916 64 bit (AMD64)]
项目版本:v0.2.6
langchain版本:0.0.331. fastchat版本:0.2.31
当前使用的分词器:ChineseRecursiveTextSplitter
当前启动的LLM模型:['chatglm2-6b'] @ cuda
{'device': 'cuda','host': '127.0.0.1','infer_turbo': False,'model_path': 'D:\\chatglm2-6b','port': 20002}
当前Embbedings模型: m3e-base @ cuda
服务端运行信息:OpenAI API Server: http://127.0.0.1:20000/v1Chatchat API Server: http://127.0.0.1:7861Chatchat WEBUI Server: http://127.0.0.1:8501
==============================Langchain-Chatchat Configuration==============================Welcome to Streamlit!If you’d like to receive helpful onboarding emails, news, offers, promotions,and the occasional swag, please enter your email address below. Otherwise,leave this field blank.
到这里是个坑!!!!大家一定要注意!!!!终端停在这里只是在等待输入,我们还要按下回车
才行,才会打印下面的成功信息,并自动跳出默认浏览器界面:
You can find our privacy policy at https://streamlit.io/privacy-policySummary:- This open source library collects usage statistics.- We cannot see and do not store information contained inside Streamlit apps,such as text, charts, images, etc.- Telemetry data is stored in servers in the United States.- If you'd like to opt out, add the following to %userprofile%/.streamlit/config.toml,creating that file if necessary:[browser]gatherUsageStats = falseYou can now view your Streamlit app in your browser.URL: http://127.0.0.1:8501
12. 报错解决 ERROR: RemoteProtocolError: API通信遇到错误:peer closed connection without sending complete message body (incomplete chunked read)
使用 openai==0.28.1 即可解决问题
13. 报错解决
{'base_url': 'http://127.0.0.1:7861', 'timeout': 60.0, 'proxies': {'all://127.0.0.1': None, 'all://localhost': None, 'http://127.0.0.1': None, 'http://': None, 'https://': None, 'all://': None, 'http://localhost': None}}
2023-11-10 17:36:15,387 - utils.py[line:287] - INFO: UnstructuredFileLoader used for D:\Langchain-Chatchat\knowledge_base\samples\content\sanguo.txt
2023-11-10 17:37:15,386 - utils.py[line:95] - ERROR: ReadTimeout: error when post /knowledge_base/update_docs: timed out
2023-11-10 17:37:15,405 - utils.py[line:287] - INFO: UnstructuredFileLoader used for D:\Langchain-Chatchat\knowledge_base\samples\content\sanguo.txt
14. 最终 python 库版本号
accelerate 0.24.1
aiohttp 3.8.6
aiosignal 1.3.1
altair 5.1.2
antlr4-python3-runtime 4.9.3
anyio 3.7.1
async-timeout 4.0.3
attrs 23.1.0
backoff 2.2.1
beautifulsoup4 4.12.2
blinker 1.7.0
blis 0.7.11
cachetools 5.3.2
catalogue 2.0.10
certifi 2023.7.22
cffi 1.16.0
chardet 5.2.0
charset-normalizer 3.3.2
click 8.1.7
cloudpathlib 0.16.0
colorama 0.4.6
coloredlogs 15.0.1
confection 0.1.3
contourpy 1.2.0
cryptography 41.0.5
cycler 0.12.1
cymem 2.0.8
dataclasses-json 0.6.1
distro 1.8.0
effdet 0.4.1
einops 0.7.0
emoji 2.8.0
et-xmlfile 1.1.0
exceptiongroup 1.1.3
faiss-cpu 1.7.4
fastapi 0.104.1
filelock 3.13.1
filetype 1.2.0
flatbuffers 23.5.26
fonttools 4.44.0
frozenlist 1.4.0
fschat 0.2.31
fsspec 2023.10.0
gitdb 4.0.11
GitPython 3.1.40
greenlet 3.0.1
h11 0.14.0
httpcore 0.17.3
httpx 0.24.1
huggingface-hub 0.17.3
humanfriendly 10.0
idna 3.4
importlib-metadata 6.8.0
iniconfig 2.0.0
iopath 0.1.10
Jinja2 3.1.2
joblib 1.3.2
jsonpatch 1.33
jsonpointer 2.4
jsonschema 4.19.2
jsonschema-specifications 2023.7.1
kiwisolver 1.4.5
langchain 0.0.331
langchain-experimental 0.0.38
langcodes 3.3.0
langdetect 1.0.9
langsmith 0.0.60
layoutparser 0.3.4
lxml 4.9.3
Markdown 3.5.1
markdown-it-py 3.0.0
markdown2 2.4.10
MarkupSafe 2.1.3
marshmallow 3.20.1
matplotlib 3.8.1
mdurl 0.1.2
mpmath 1.3.0
msg-parser 1.2.0
multidict 6.0.4
murmurhash 1.0.10
mypy-extensions 1.0.0
networkx 3.2.1
nh3 0.2.14
nltk 3.8.1
numexpr 2.8.7
numpy 1.24.0
olefile 0.46
omegaconf 2.3.0
onnx 1.14.1
onnxruntime 1.15.1
openai 0.28.1
opencv-python 4.8.1.78
openpyxl 3.1.2
packaging 23.2
pandas 2.0.3
pathlib 1.0.1
pdf2image 1.16.3
pdfminer.six 20221105
pdfplumber 0.10.3
peft 0.6.0
Pillow 9.5.0
pip 23.3
pluggy 1.3.0
portalocker 2.8.2
preshed 3.0.9
prompt-toolkit 3.0.39
protobuf 3.19.0
psutil 5.9.6
pyarrow 14.0.0
pyclipper 1.3.0.post5
pycocotools 2.0.7
pycparser 2.21
pydantic 1.10.13
pydeck 0.8.1b0
Pygments 2.16.1
PyMuPDF 1.23.6
PyMuPDFb 1.23.6
pypandoc 1.12
pyparsing 3.1.1
pypdfium2 4.23.1
pyreadline3 3.4.1
pytesseract 0.3.10
pytest 7.4.3
python-dateutil 2.8.2
python-decouple 3.8
python-docx 1.1.0
python-iso639 2023.6.15
python-magic 0.4.27
python-magic-bin 0.4.14
python-multipart 0.0.6
python-pptx 0.6.21
pytz 2023.3.post1
pywin32 306
PyYAML 6.0.1
rapidfuzz 3.5.2
rapidocr-onnxruntime 1.3.8
referencing 0.30.2
regex 2023.10.3
requests 2.31.0
rich 13.6.0
rpds-py 0.12.0
safetensors 0.4.0
scikit-learn 1.3.2
scipy 1.11.3
sentence-transformers 2.2.2
sentencepiece 0.1.99
setuptools 68.0.0
shapely 2.0.2
shortuuid 1.0.11
simplejson 3.19.2
six 1.16.0
smart-open 6.4.0
smmap 5.0.1
sniffio 1.3.0
soupsieve 2.5
spacy 3.7.2
spacy-legacy 3.0.12
spacy-loggers 1.0.5
SQLAlchemy 2.0.19
srsly 2.4.8
starlette 0.27.0
streamlit 1.28.1
streamlit-aggrid 0.3.4.post3
streamlit-antd-components 0.2.3
streamlit-chatbox 1.1.10
streamlit-option-menu 0.3.6
svgwrite 1.4.3
sympy 1.12
tabulate 0.9.0
tenacity 8.2.3
tensorflow-hub 0.15.0
tf2crf 0.1.33
tf2onnx 1.15.1
thinc 8.2.1
threadpoolctl 3.2.0
tiktoken 0.5.1
timm 0.9.10
tokenizers 0.14.1
toml 0.10.2
tomli 2.0.1
toolz 0.12.0
torch 1.13.1+cu116
torchaudio 0.13.1+cu116
torchvision 0.14.1+cu116
tornado 6.3.3
tqdm 4.66.1
transformers 4.35.0
transformers-stream-generator 0.0.4
typer 0.9.0
typing_extensions 4.8.0
typing-inspect 0.9.0
tzdata 2023.3
tzlocal 5.2
unstructured 0.10.29
unstructured-inference 0.7.11
unstructured.pytesseract 0.3.12
urllib3 2.0.7
uvicorn 0.23.2
validators 0.22.0
wasabi 1.1.2
watchdog 3.0.0
wavedrom 2.0.3.post3
wcwidth 0.2.9
weasel 0.3.4
websockets 12.0
wheel 0.41.2
xformers 0.0.22.post7
xlrd 2.0.1
XlsxWriter 3.1.9
yarl 1.9.2
zipp 3.17.0
15. LLM 对话体验
这里使用的是 chatglm3-6b 模型,效果感觉一般。
16. 知识库问答体验
我将自己的数据做成 cvs
格式,然后导入到项目中。因为是知识库问答,所以 Temperature
要尽量调整到 0
附近,避免模型自由发挥。可以看出每个问题都能回答准确,这是让我满意的一点。如果点开“知识库匹配结果”
可以看到准确的原文引用内容。
16. 上传 csv 文件的时候报错 ERROR: RuntimeError: 从文件 samples/小区描述2_6.csv 加载文档时出错:Error loading D:\描述.csv
经过我“二分法”在文件中不断删除文件内容,最终定位到原来有一行数据是有一个柠檬的图像🍋,如下,将这个柠檬的图像删掉即可:
“徐大柠🍋手打柠檬茶是一个餐饮服务...”
重新搭建环境使用 Baichuan2-13B-Chat-4bits 模型
1. 安装 11.8 的 cuda
在 https://pytorch.org/get-started/locally/
中可以查看 pytorch 最高支持 11.8 cuda
版本,然后进入 https://developer.nvidia.com/cuda-toolkit-archive
找到 CUDA Toolkit 11.8
进行下载,下载结束之后双击基本上是傻瓜式下一步按钮即可,不懂的可以见参考中的链接。此时重新打开命令行,查看 nvcc -V
已经变成了 11.8 版本:
nvcc: NVIDIA (R) Cuda compiler driverCopyright (c) 2005-2022 NVIDIA CorporationBuilt on Wed_Sep_21_10:41:10_Pacific_Daylight_Time_2022Cuda compilation tools, release 11.8, V11.8.89Build cuda_11.8.r11.8/compiler.31833905_0
2. 创建支持 python=3.10 的虚拟环境 torch-2.x-py-3.10
先创建号支持 python 3.10 的虚拟环境,然后进行虚拟环境,在浏览器 [pytorch.org/get-started…]页面中找到支持 CUDA 11.8 的 pytorch2.1 命令在虚拟环境中进行安装,然后安装项目所需的 requirements.txt 中的库,同上一样。
pip3.exe install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
3. 拉取 0.2.6 版本的项目,按照上面的步骤重新配置 Chatchat 项目中的各个文件中的配置
4. 初始化数据库
python.exe .\init_database.py -r
如果遇到卡住不动的情况,直接结束进行,去下一步中找原因
5. 启动项目
python.exe .\startup.py -a
进入浏览器中发现成功启动,可以开始交互。
6. 解决启动时候报错 AttributeError: ‘BaichuanTokenizer’ object has no attribute ‘sp_model’
安装 transformers==4.33.2
7. 解决启动报错 ImportError: Needs import model weight init func to run quantize.
安装 pip.exe install bitsandbytes==0.41.1
8. 解决启动时候报错 RuntimeError:
CUDA Setup failed despite GPU being available. Please run the following command to get more information:python -m bitsandbytesInspect the output of the command and see if you can locate CUDA libraries. You might need to add them to your LD_LIBRARY_PATH. If you suspect a bug, please take the information from python -m bitsandbytes and open an issue at: https://github.com/TimDettmers/bitsandbytes/issues
参考这里 [github.com/TimDettmers…]中的答案。卸载 bitsandbytes 和 bitsandbytes-windows 库,然后编译包 bitsandbytes-0.41.1-py3-none-win_amd64.whl
pip.exe uninstall bitsandbytes-windows bitsandbytes
pip.exe install https://github.com/jllllll/bitsandbytes-windows-webui/releases/download/wheels/bitsandbytes-0.41.1-py3-none-win_amd64.whl
9. 最终 python 库版本号
accelerate 0.24.1
aiohttp 3.8.6
aiosignal 1.3.1
altair 5.1.2
antlr4-python3-runtime 4.9.3
anyio 3.7.1
async-timeout 4.0.3
attrs 23.1.0
backoff 2.2.1
beautifulsoup4 4.12.2
bitsandbytes 0.41.1
blinker 1.7.0
blis 0.7.11
Brotli 1.1.0
cachetools 5.3.2
catalogue 2.0.10
certifi 2022.12.7
cffi 1.16.0
chardet 5.2.0
charset-normalizer 2.1.1
click 8.1.7
cloudpathlib 0.16.0
colorama 0.4.6
coloredlogs 15.0.1
confection 0.1.3
contourpy 1.2.0
cryptography 41.0.5
cycler 0.12.1
cymem 2.0.8
dataclasses-json 0.6.2
distro 1.8.0
effdet 0.4.1
einops 0.7.0
emoji 2.8.0
et-xmlfile 1.1.0
exceptiongroup 1.1.3
faiss-cpu 1.7.4
fastapi 0.104.1
filelock 3.9.0
filetype 1.2.0
flatbuffers 23.5.26
fonttools 4.44.0
frozenlist 1.4.0
fschat 0.2.32
fsspec 2023.10.0
gitdb 4.0.11
GitPython 3.1.40
greenlet 3.0.1
h11 0.14.0
h2 4.1.0
hpack 4.0.0
httpcore 1.0.2
httpx 0.25.1
huggingface-hub 0.17.3
humanfriendly 10.0
hyperframe 6.0.1
idna 3.4
importlib-metadata 6.8.0
iniconfig 2.0.0
iopath 0.1.10
Jinja2 3.1.2
joblib 1.3.2
jsonpatch 1.33
jsonpointer 2.4
jsonschema 4.19.2
jsonschema-specifications 2023.7.1
kiwisolver 1.4.5
langchain 0.0.335
langchain-experimental 0.0.40
langcodes 3.3.0
langdetect 1.0.9
langsmith 0.0.63
layoutparser 0.3.4
lxml 4.9.3
Markdown 3.5.1
markdown-it-py 3.0.0
markdown2 2.4.10
markdownify 0.11.6
MarkupSafe 2.1.3
marshmallow 3.20.1
matplotlib 3.8.1
mdurl 0.1.2
mpmath 1.3.0
msg-parser 1.2.0
multidict 6.0.4
murmurhash 1.0.10
mypy-extensions 1.0.0
networkx 3.0
nh3 0.2.14
nltk 3.8.1
numexpr 2.8.7
numpy 1.25.0
olefile 0.46
omegaconf 2.3.0
onnx 1.14.1
onnxruntime 1.15.1
openai 0.28.1
opencv-python 4.8.1.78
openpyxl 3.1.2
packaging 23.2
pandas 2.0.3
pathlib 1.0.1
pdf2image 1.16.3
pdfminer.six 20221105
pdfplumber 0.10.3
peft 0.6.1
Pillow 9.3.0
pip 23.3
pluggy 1.3.0
portalocker 2.8.2
preshed 3.0.9
prompt-toolkit 3.0.40
protobuf 3.20.1
psutil 5.9.6
pyarrow 14.0.1
pyclipper 1.3.0.post5
pycocotools 2.0.7
pycparser 2.21
pydantic 1.10.13
pydeck 0.8.1b0
Pygments 2.16.1
PyMuPDF 1.23.6
PyMuPDFb 1.23.6
pypandoc 1.12
pyparsing 3.1.1
pypdfium2 4.24.0
pyreadline3 3.4.1
pytesseract 0.3.10
pytest 7.4.3
python-dateutil 2.8.2
python-decouple 3.8
python-docx 1.1.0
python-iso639 2023.6.15
python-magic 0.4.27
python-magic-bin 0.4.14
python-multipart 0.0.6
python-pptx 0.6.23
pytz 2023.3.post1
pywin32 306
PyYAML 6.0.1
rapidfuzz 3.5.2
rapidocr-onnxruntime 1.3.8
referencing 0.30.2
regex 2023.10.3
requests 2.28.1
rich 13.6.0
rpds-py 0.12.0
safetensors 0.4.0
scikit-learn 1.3.2
scipy 1.11.3
sentence-transformers 2.2.2
sentencepiece 0.1.99
setuptools 68.0.0
shapely 2.0.2
shortuuid 1.0.11
simplejson 3.19.2
six 1.16.0
smart-open 6.4.0
smmap 5.0.1
sniffio 1.3.0
socksio 1.0.0
soupsieve 2.5
spacy 3.7.2
spacy-legacy 3.0.12
spacy-loggers 1.0.5
SQLAlchemy 2.0.19
srsly 2.4.8
starlette 0.27.0
streamlit 1.27.2
streamlit-aggrid 0.3.4.post3
streamlit-antd-components 0.2.3
streamlit-chatbox 1.1.11
streamlit-feedback 0.1.2
streamlit-option-menu 0.3.6
strsimpy 0.2.1
svgwrite 1.4.3
sympy 1.12
tabulate 0.9.0
tenacity 8.2.3
tensorflow-hub 0.15.0
tf2crf 0.1.33
tf2onnx 1.15.1
thinc 8.2.1
threadpoolctl 3.2.0
tiktoken 0.5.1
timm 0.9.10
tokenizers 0.13.3
toml 0.10.2
tomli 2.0.1
toolz 0.12.0
torch 2.1.0+cu118
torchaudio 2.1.0+cu118
torchvision 0.16.0+cu118
tornado 6.3.3
tqdm 4.66.1
transformers 4.33.2
transformers-stream-generator 0.0.4
typer 0.9.0
typing_extensions 4.8.0
typing-inspect 0.9.0
tzdata 2023.3
tzlocal 5.2
unstructured 0.10.30
unstructured-inference 0.7.11
unstructured.pytesseract 0.3.12
urllib3 1.26.13
uvicorn 0.23.2
validators 0.22.0
wasabi 1.1.2
watchdog 3.0.0
wavedrom 2.0.3.post3
wcwidth 0.2.9
weasel 0.3.4
websockets 12.0
wheel 0.41.2
xformers 0.0.22.post7
xlrd 2.0.1
XlsxWriter 3.1.9
yarl 1.9.2
zipp 3.17.0
那么,我们该如何学习大模型?
作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
一、大模型全套的学习路线
学习大型人工智能模型,如GPT-3、BERT或任何其他先进的神经网络模型,需要系统的方法和持续的努力。既然要系统的学习大模型,那么学习路线是必不可少的,下面的这份路线能帮助你快速梳理知识,形成自己的体系。
L1级别:AI大模型时代的华丽登场
L2级别:AI大模型API应用开发工程
L3级别:大模型应用架构进阶实践
L4级别:大模型微调与私有化部署
一般掌握到第四个级别,市场上大多数岗位都是可以胜任,但要还不是天花板,天花板级别要求更加严格,对于算法和实战是非常苛刻的。建议普通人掌握到L4级别即可。
以上的AI大模型学习路线,不知道为什么发出来就有点糊,高清版可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
二、640套AI大模型报告合集
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
三、大模型经典PDF籍
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。
四、AI大模型商业化落地方案
作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。
相关文章:
搭建 Langchain-Chatchat 详细过程
前言 本文参考官网和其他多方教程,将搭建 Langchain-Chatchat 的详细步骤进行了整理,供大家参考。 我的硬件 4090 显卡win10 专业版本 搭建环境使用 chatglm2-6b 模型 1. 创建虚拟环境 chatchat ,python 3.9 以上 conda create -n chat…...
C++期末复习
目录 1.基本函数 2.浅拷贝和深拷贝 3.初始化列表 4.const关键字的使用 5.静态成员变量和成员函数 6.C对象模型 7.友元 8.自动类型转换 9.继承 1.基本函数 (1)构造函数,这个需要注意的就是我们如果使用类名加括号,括号里面…...
2005-2022年各省居民人均消费支出数据(无缺失)
2005-2022年各省居民人均消费支出数据(无缺失) 1、时间:2005-2022年 2、来源:国家统计局、统计年鉴 3、指标:全体居民人均消费支出 4、范围:31省 5、缺失情况:无缺失 6、指标解释 居民人…...
swaggerHole:针对swaggerHub的公共API安全扫描工具
关于swaggerHole swaggerHole是一款针对swaggerHub的API安全扫描工具,该工具基于纯Python 3开发,可以帮助广大研究人员检索swaggerHub上公共API的相关敏感信息,整个任务过程均以自动化形式实现,且具备多线程特性和管道模式。 工具…...
【Rust】——面向对象设计模式的实现
🎼个人主页:【Y小夜】 😎作者简介:一位双非学校的大二学生,编程爱好者, 专注于基础和实战分享,欢迎私信咨询! 🎆入门专栏:🎇【MySQL࿰…...
C#朗读语音
最近有个需求,需要在C#程序发生异常时候,朗读文字,C#提供了.net framework可以提供简单的语音朗读功能。 引入依赖 using System.Media; using System.Speech.Synthesis; using System.Runtime.InteropServices; //报警音量 SystemSounds.…...
c++ 简单的日志类 CCLog
此日志类,简单地实现了向标准输出控制台和文件输出日志信息的功能,并能在这两者之间进行切换输出,满足输出日志的不同需求。 代码如下: /** CCLog.h* c_common_codes** Created by xichen on 12-1-12.* Copyright 2012 cc_te…...
一文读懂 Compose 支持 Accessibility 无障碍的原理
前言 众所周知,Compose 作为一种 UI 工具包,向开发者提供了实现 UI 的基本功能。但其实它还默默提供了很多其他能力,其中之一便是今天需要讨论的:Android 特色的 Accessibility 功能。 采用 Compose 搭建的界面,完美…...
Redis到底支不支持事务?
文章目录 一、概述二、使用1、正常执行:2、主动放弃事务3、全部回滚:4、部分支持事务:5、WATCH: 三、事务三阶段四、小结 redis是支持事务的,但是它与传统的关系型数据库中的事务是有所不同的 一、概述 概念: 可以一次执行多个命令,本质是一…...
美颜相机「BeautyCam」v12.0.80 祛广告解索会员版(美妆相机功能,展现女神魅力)
软件介绍 美颜相机,一款由知名移动互联网企业Meitu Inc.开发的移动设备照片编辑与美化应用,起初主要针对娱乐消费市场,随后集成了商业营销功能。目前,它已跻身全球最受欢迎的手机摄影应用程序之列。在中国,美颜相机和…...
Oracle的优化器
sql优化第一步:搞懂Oracle中的SQL的执行过程 从图中我们可以看出SQL语句在Oracle中经历了以下的几个步骤: 语法检查:检查SQL拼写是否正确,如果不正确,Oracle会报语法错误。 语义检查:检查SQL中的访问对象…...
[线程与网络] 网络编程与通信原理(六):深入理解应用层http与https协议(网络编程与通信原理完结)
🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏:🍕 Collection与数据结构 (92平均质量分)https://blog.csdn.net/2301_80050796/category_12621348.html?spm1001.2014.3001.5482 🧀Java …...
个人博客的未来出路在哪里?
说起个人博客的未来这就是个悲伤的话题,估计不少个人博客站长们都在苦苦的坚持和挣扎着吧,反正明月这两年感受最深刻的就是又有不少个人博客站点停更和 404 了都。自从坚持写博客这近十来年这种情况也都见怪不怪了,但这两年最突出的就是很多站长都是迷茫和悲观。 明月去年在…...
【TensorFlow深度学习】实现Actor-Critic算法的关键步骤
实现Actor-Critic算法的关键步骤 实现Actor-Critic算法的关键步骤:强化学习中的双剑合璧Actor-Critic算法简介关键实现步骤代码示例(使用TensorFlow)结语 实现Actor-Critic算法的关键步骤:强化学习中的双剑合璧 在强化学习的广阔…...
微服务架构-可见可观测与量化分析体系
目录 一、可见可观测 1.1 概述 1.2 服务可见性 1.2.1 概述 1.2.2 服务描述 1.2.3 服务所有权 1.2.4 服务对外接口 1.2.5 服务SLA 1.2.6 服务的上下游拓扑 1.2.7 服务变更 1.2.8 服务接入和资源配额管理 1.2.9 服务线上部署和线下测试环境信息 1.3 变更可见性 1.4 …...
PostgreSQL的视图pg_indexes
PostgreSQL的视图pg_indexes 基础信息 OS版本:Red Hat Enterprise Linux Server release 7.9 (Maipo) DB版本:16.2 pg软件目录:/home/pg16/soft pg数据目录:/home/pg16/data 端口:5777pg_indexes 是 PostgreSQL 中的一…...
暂停系统更新
电脑左下角搜索注册表编辑器 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings 找到这个目录 打开FlightSettingsMaxPauseDays,没找到的话就创建一个同名文件夹然后选择10进制填入3550 最后进入系统暂停更新界面选择最下面…...
Python离线查询IP地址对应的国家和城市
使用场景: 在没网的情况下使用python代码实现对ip地址进行查询国家和地市 代码实现: 需要安装 pip install geoip2 库 import geoip2.databasedef get_location_by_ip(ip_address, db_path):reader geoip2.database.Reader(db_path)try:response r…...
使用Aspose技术将Excel/Word转换为PDF
简介:本文将介绍如何使用Aspose技术将Excel文件转换为PDF格式。我们将使用Aspose-Cells-8.5.2.jar包,并演示Java代码以及进行测试。 一、Aspose技术概述 Aspose是一款强大的文档处理库,支持多种编程语言,如Java、C#、Python等。…...
Opencv 色彩空间
一 核心知识 色彩空间变换; 像素访问; 矩阵的、-、*、、; 基本图形的绘制 二 颜色空间 RGB:人眼的色彩空间; OpenCV默认使用BGR; HSV/HSB/HSL; YUV(视频); 1 RGB 2 BGR 图像的多种属性 1 访问图像(Ma…...
FileZilla:不安全的服务器,不支持 FTP over TLS 原因与解决方法
今天在用FileZilla Client连接某个主机的FTP的时候,主机地址、账号、密码、端口确定百分之百正确的情况下,结果报错如下: 状态: 正在解析 x.x.x 的地址 状态: 正在连接 x.x.x.x:21... 状态: 连接建立,等待欢迎消息... 状态: 不安全…...
自定义注解实现Excel 导出
概述 一个用自定义注解实现导出字段定义的工具实现。 1. 注解定义,定义导出Excel的字段 Target(ElementType.FIELD) Retention(RetentionPolicy.RUNTIME) public interface PoiExportField {// Label of the columnString label();// Order of the column,default 0,means t…...
先求生存,再谋发展:俞敏洪的创业哲学与产品创新之路
引言: 在创业的道路上,每一个创业者都面临着无数的挑战和选择。俞敏洪,新东方教育科技集团的创始人,以其独特的创业哲学和坚韧不拔的精神,带领新东方从一个小小的培训机构成长为全球知名的教育品牌。他的成功经验告诉…...
【Spark】直接从DataFrame的schema创建表
// 基于DataFrame创建表 def createTable(dataFrame: DataFrame,partitionColumns: Array[String],databaseName: String,tableName: String): Unit = {...
Decimal要从str转换以避免精度问题
最近遇到一个python的小数的问题,本来应该很简单的小于判断,无论如何都不正确,而且浮点小数都没问题,但decimal小数有问题,给我整蒙了,后来才发现是对decimal不了解所致,如果你还用float转decim…...
STM32项目分享:智能家居安防系统
目录 一、前言 二、项目简介 1.功能详解 2.主要器件 三、原理图设计 四、PCB硬件设计 1.PCB图 2.PCB板及元器件图 五、程序设计 六、实验效果 七、资料内容 项目分享 一、前言 项目成品图片: 哔哩哔哩视频链接: https://www.bilibili.c…...
qt c++类继承QWidget和不继承有什么区别
class CheckBoxSetting {Q_OBJECT public:CheckBoxSetting(); };和 class CheckBoxSettingsEditor : public QWidget {Q_OBJECTpublic:explicit CheckBoxSettingsEditor(QWidget *parent 0);~CheckBoxSettingsEditor();有什么区别? 这两个类 CheckBoxSetting 和 C…...
什么是SIEM
SIEM 解决方案是一种企业级应用程序,可集中和自动化与网络安全相关的操作,该工具通过收集、分析和关联从组织 IT 基础设施中的各种实体聚合的网络事件来帮助应对网络威胁。 与帮助监控和评估组织物理空间中的危险的监视控制台相比,SIEM解决方…...
浅谈一下实例化
实例化对象是面向对象编程中非常重要的概念,它允许我们根据类的定义创建具体的对象,并操作这些对象的属性和方法。下面具体谈一下实例化对象的一些特点和用途: 封装性和复用性:实例化对象可以将数据和行为封装在一起,从…...
【人工智能】第三部分:ChatGPT的应用场景和挑战
人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…...
seo推广怎么收费/seo技术优化技巧
1.右键单击,选择 Import,进入导入项目窗口 图片.png2.点击选择从SVN检出项目,点击Next下一步 图片.png3.选择创建新的资源库位置,点击Next,如果项目之前已经导入过删除掉了,重新导入的时候,只需…...
做响应式网站多少钱/优化设计答案六年级上册
打造私家园林 苏州翠园再续园林情结http://www.sina.com.cn 2001年02月21日10:58 解放日报一座460平方米的现代版私家园林———翠园,近日出现在苏州古城西北街木谷巷。园林主人苏州国画院副院长、金石篆刻大师蔡廷辉利用住宅拆迁的机会,费时14个月设计监…...
小学网站建设工作小组/刷移动端seo软件
最近做关于登录注册的功能自动化测试,涉及到获取错误提示信息的问题,当时纠结了好久,以为所有的提示信息都是放在一个集合中,然后分别获取,进行断言就行,试了多次都不能成功,后台将这个集合中的…...
轴承外贸网站怎么做/打开百度网站
在login屏幕一直不能登录进去,输入admin密码admin后还会是停止在登录屏幕,要求输入用户和密码.百思不得其解,后面在cacti的官方论坛上找答案,发现有人有同样的问题,他有发apache的日志。突然一想,我也可以看…...
雪锐琴网站建设/东莞网站建设方案外包
外部样式表调用:页面内嵌法:就是将样式表直接写在页面代码的head区。 如: <style type”text/css”><!– body { background : white ; color : black ; } –> </style> 外部调用法:将样式表写在一个独立的.cs…...
电商网站怎么推广/免费外链网站seo发布
作者:HotHeart 时间: 2006-08-28 文档类型:原创 来自:蓝色理想 在给blog加上无刷新搜索和即时验证检测后,又看了下代码,感觉太过麻烦,就把XMLHttpRequest请求封装到一个类里面,用…...