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

个人知识库助手项目

目录

个人知识库助手项目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 服务了

相关推荐
lifallen16 分钟前
Agent 框架不是 API 包装器,而是一个微型操作系统内核
人工智能·学习·ai·ai编程
是隼人27 分钟前
buuctf-pwn pwnable_start(ret2shellcode)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
my059233 分钟前
跳出单一信息工具局限:奥米豆构建认知与心智并行的学习范式
大数据·人工智能·python·学习
却道天凉_好个秋1 小时前
音视频学习(一百零五):Access Unit (AU)和RTP分包
学习·音视频·access unit·rtp分包
艾莉丝努力练剑1 小时前
【AI大模型接入SDK】Gemini模型接入知识体系
java·开发语言·网络·人工智能·网络协议·学习·http
传奇开心果编程1 小时前
【Rust入门知识点学与练】第13课:枚举 Enum
开发语言·学习·rust
火眼金睛炼单词2 小时前
零基础高效记忆单词:小程序学习法的完整实操指南
学习·小程序
山岚的运维笔记3 小时前
mysql 专业笔记 -- 第 14 章:GROUP BY
运维·数据库·笔记·后端·学习·mysql·dba
阳光宅男@李光熠3 小时前
【电子通识】PCB外观检查机AVI(Automated Visual Inspection)
笔记·学习