新手小白动手学习大模型应用开发-搭建个人知识库

个人知识库助手项目

目录

个人知识库助手项目Chat_with_Datawhale_langchain

本项目可以实现基于 Datawhale 的现有项目 README 的知识问答,使用户可以快速了解 Datawhale 现有项目情况。

部署:
python 复制代码
git clone https://github.com/logan-zou/Chat_with_Datawhale_langchain.git
cd Chat_with_Datawhale_langchain

#创建环境
conda create -n llm-universe python==3.9.0
# 激活 Conda 环境
conda activate llm-universe
# 安装依赖项
pip install -r requirements.txt

注意这里在安装依赖时会报错,解决方案,重新执行requirements.txt 安装即可

python 复制代码
langchain
langsmith==0.1.0
langchain-community==0.0.31
packaging
运行:
python 复制代码
cd serve

启动服务为本地API:

python 复制代码
uvicorn api:app --reload

再打开另外一个终端窗口

python 复制代码
conda activate llm-universe

cd Chat_with_Datawhale_langchain/serve

修改run_gradio.py

python 复制代码
DEFAULT_DB_PATH = "/opt/data/private/xxx/Datawhale/Chat_with_Datawhale_langchain/knowledge_db"
DEFAULT_PERSIST_PATH = "/opt/data/private/xxx/Datawhale/Chat_with_Datawhale_langchain/vector_db/chroma"
AIGC_AVATAR_PATH = "/opt/data/private/xxx/Datawhale/Chat_with_Datawhale_langchain/figures/aigc_avatar.png"
DATAWHALE_AVATAR_PATH = "/opt/data/private/xxx/Datawhale/Chat_with_Datawhale_langchain/figures/datawhale_avatar.png"
AIGC_LOGO_PATH = "/opt/data/private/xxx/Datawhale/Chat_with_Datawhale_langchain/figures/aigc_logo.png"
DATAWHALE_LOGO_PATH = "/opt/data/private/xxx/Datawhale/Chat_with_Datawhale_langchain/figures/datawhale_logo.png"
python 复制代码
#注意安装
pip install sentence-transformers
获取API:

智谱 AI :首先进入到 智谱AI开放平台,输入手机号及验证码进行注册。对于需要使用 API key 来搭建应用的话,需要在控制台点击右上角就会进入个人的 API 管理列表中。在该界面,就可以看到获取到的 API 所对应的应用名字和 API key 了。我们可以点击 添加新的 API key 并输入对应的名字即可生成新的 API key

复制API key,并粘贴在.env文件中编辑 ZHIPUAI_API_KEY即可

运行命令

python 复制代码
python run_gradio.py -model_name='chatglm_std' -embedding_model='m3e' -db_path='../knowledge_db' -persist_path='../vector_db'
本地运行:

因为我是在远程 Linux 服务器运行,但是在自己本地 Windows 浏览器打开相关网页

选择使用 SSH 做端口转发,本地用 127.0.0.1:7860

python 复制代码
#在本地电脑打开终端(CMD)执行
ssh -p 25xx -L 7860:127.0.0.1:7860 root@10.xxx.xx.xxx

这时本地浏览器访问:http://127.0.0.1:7860,就能通过 SSH 隧道访问到服务器上的 Gradio 服务了

相关推荐
代码游侠44 分钟前
学习笔记——Linux字符设备驱动开发
linux·arm开发·驱动开发·单片机·嵌入式硬件·学习·算法
charlie1145141911 小时前
嵌入式C++教程——ETL(Embedded Template Library)
开发语言·c++·笔记·学习·嵌入式·etl
李小星同志1 小时前
VID2WORLD: CRAFTING VIDEO DIFFUSION MODELSTO INTERACTIVE WORLD MODELS论文学习
学习
laplace01232 小时前
Claude Code 逆向工程报告 笔记(学习记录)
数据库·人工智能·笔记·学习·agent·rag
lingggggaaaa2 小时前
安全工具篇&Go魔改二开&Fscan扫描&FRP代理&特征消除&新增扩展&打乱HASH
学习·安全·web安全·网络安全·golang·哈希算法
Daydream.V3 小时前
网页学习——HTML
学习
张永清-老清3 小时前
每周读书与学习->JMeter性能测试脚本编写实战(四)-利用JMeter对MySQL数据库查询进行性能测试
学习·jmeter·性能调优·jmeter性能测试·性能分析·每周读书与学习
InterestOriented3 小时前
中老年线上学习发展:兴趣岛“内容+服务+空间”融合赋能下的体验升级
人工智能·学习
宇钶宇夕3 小时前
CoDeSys入门实战一起学习(二十八):(ST)三台电机顺起逆停程序详解
运维·学习·自动化·软件工程
£漫步 云端彡3 小时前
Golang学习历程【第十篇 方法(method)与接收者】
开发语言·学习·golang