介绍
- LangChain-Chatchat 支持RAG和Agent
- 0.3版本跟大模型解耦,支持Xinference、Ollama、LocalAI、FastChat、One API,可以非常方便的切换各个模型,本文只是介绍Xinference
- Xorbits Inference (Xinference) 是一个开源平台,用于简化各种 AI 模型的运行和集成。借助 Xinference,您可以使用任何开源 LLM、嵌入模型和多模态模型在云端或本地环境中运行推理,并创建强大的 AI 应用。
- RAG支持目前基本所有的文本格式和图片
- 有默认可用的WebUI界面和接口可以自定义二次开发
- 本文档是LangChain-Chatchat 0.3版本部署在Windows上
效果图
通过效果图先看看是不是你想要的.
- 基本聊天
- 知识库的管理,可以传入自己本地的各种知识
- 外部函数调用
- 有api文档,支持二次开发
部署
部署Python项目经常需要通过虚拟环境可以创建多个干净的环境,这里使用的是Conda
Conda 的使用
安装Conda
在安装Conda之前,你可以选择安装Miniconda(最小化的Conda版本)或Anaconda(包含一系列常用包的版本)。以下是安装Miniconda的步骤: 下载地址
配置Conda
Windows系统:
- 打开“控制面板” -> “系统与安全” -> “系统” -> “高级系统设置” -> “环境变量”。
- 在“系统变量”下新建一个变量名为
CONDA_HOME
,值为Conda的安装路径(比如C:\Users\YourUsername\Miniconda3
)。 - 编辑“Path”变量,在末尾加上
%CONDA_HOME%\Scripts
和%CONDA_HOME%
。 - 在命令提示符中输入
conda --version
验证配置是否成功。
常用命令
以下是一些常用的Conda命令,包括初始化、激活、创建环境、删除环境、安装包以及设置缓存路径:
1. 初始化Conda
在安装完Conda后,可以使用以下命令初始化Conda配置:
conda init
2. 激活环境
激活一个已存在的Conda环境:
conda activate myenv
3. 创建环境
创建一个新的Conda环境:
conda create --name myenv python==3.10
4. 删除环境
删除一个已存在的Conda环境:
conda remove --name myenv --all
5. 安装包
在激活的环境中安装包,可以指定版本号:
conda install package_name
conda install package_name=1.0
6. 设置缓存路径
设置Conda包缓存路径,可以通过以下命令设置:
conda config --set pkgs_dirs /path/to/cache/directory
7. 列出所有虚拟环境
要列出所有在Conda中创建的虚拟环境,你可以使用以下命令:
conda env list
Xinference的安装
- 首先使用Conda创建一个虚拟环境xinf
- 切换到这个虚拟环境
- 按照Xinference
- 需要本地有GPU,才能跑本地模型
conda create -n xinf python==3.10
conda activate xinf
pip install "xinference[transformers]"
Xinference的运行
xinference-local --host 0.0.0.0 --port 9997
根据自己的GPU情况来选择运行那个大模型, 我是8G的显卡内存,选择chatglm3的量化版本可以正常运行,内存比较大的可以选择glm4或者qwen2
运行成功后,可以在浏览器中打开http://127.0.0.1:9997
选择chatglm3
设置chatglm3,点击最下面的按钮,他会自动下载模型,可能需要比较长时间.
后面的RAG需要这个Embedding Model 来完成量化
Langchain-Chatchat的安装
- 首先使用Conda创建一个虚拟环境chatchat
- 切换到这个环境
- 进行安装
conda create -n chatchat python==3.10
conda activate chatchat
pip install langchain-chatchat -U
可以到Langchain-Chatchat中查看详细的文档
Langchain-Chatchat的运行
- 前面Xinference安装成功后,就可以运行Chatchat了,先配置自己的模型
chatchat-config model --default_llm_model chatglm3
- 配置模型平台,我这里遇到些问题,该命令在Windows好像不能执行,我通过修改源码来指定了该平台.
$ chatchat-config model --set_model_platforms "[{\"platform_name\": \"xinference\",\"platform_type\": \"xinference\",\"api_base_url\": \"http://127.0.0.1:9997/v1\",\"api_key\": \"EMPT\",\"api_concurrencies\": 5,\"llm_models\": [\"chatglm3\"],\"embed_models\": [\"bge-large-zh-v1.5\"],\"image_models\": [],\"reranking_models\": [],\"speech2text_models\": [],\"tts_models\": []
}]"
- 初始化知识库
chatchat-kb -r
- 运行
chatchat -a
运行成功后会调到浏览器打开http://127.0.0.1:8501/
安装过程中遇到的问题
- 遇到了Xinference UI没有更新成最新版本的问题,可以重新编译UI来解决
- 遇到Langchain-chatchat在Windows下配置问题,我是自己修改源码解决的,如果有需要可以单独交流
- 找不到Xinference模型的问题,跟上面类似都是配置问题
欢迎大家使用和关注
仓库地址
- xinference
- langchain-chatchat
如何学习大模型
现在社会上大模型越来越普及了,已经有很多人都想往这里面扎,但是却找不到适合的方法去学习。
作为一名资深码农,初入大模型时也吃了很多亏,踩了无数坑。现在我想把我的经验和知识分享给你们,帮助你们学习AI大模型,能够解决你们学习中的困难。
我已将重要的AI大模型资料包括市面上AI大模型各大白皮书、AGI大模型系统学习路线、AI大模型视频教程、实战学习,等录播视频免费分享出来,需要的小伙伴可以扫取。
一、AGI大模型系统学习路线
很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,我下面分享的这个学习路线希望能够帮助到你们学习AI大模型。
二、AI大模型视频教程
三、AI大模型各大学习书籍
四、AI大模型各大场景实战案例
五、结束语
学习AI大模型是当前科技发展的趋势,它不仅能够为我们提供更多的机会和挑战,还能够让我们更好地理解和应用人工智能技术。通过学习AI大模型,我们可以深入了解深度学习、神经网络等核心概念,并将其应用于自然语言处理、计算机视觉、语音识别等领域。同时,掌握AI大模型还能够为我们的职业发展增添竞争力,成为未来技术领域的领导者。
再者,学习AI大模型也能为我们自己创造更多的价值,提供更多的岗位以及副业创收,让自己的生活更上一层楼。
因此,学习AI大模型是一项有前景且值得投入的时间和精力的重要选择。