1. Langchain-Chatchat 部署与配置概述
Langchain-Chatchat 是一个轻量级、高易用性的大模型应用框架,它封装了标准化的 API 接口,使得开发者能够快速将大模型能力集成到业务系统中。作为一个长期从事 NLP 部署的工程师,我认为这个框架最大的优势在于其模块化设计和灵活的配置选项,这为不同场景下的模型应用提供了极大的便利。
在实际部署过程中,配置文件是控制框架行为的关键。与许多开发者一样,我最初也低估了配置文件的重要性,直到在多个项目中踩过坑后才真正理解其价值。下面我将分享我在 Langchain-Chatchat 配置方面的实战经验,特别是针对模型配置和自定义工具开发这两个核心环节。
重要提示:在进行任何配置修改前,请务必备份原始配置文件。我在多个项目中都遇到过因配置错误导致服务不可用的情况,备份可以大大减少故障恢复时间。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 模型配置文件深度解析
2.1 模型配置文件结构剖析
model_settings.yaml 是 Langchain-Chatchat 的核心配置文件之一,它定义了框架支持的平台和模型选项。从我实际部署的经验来看,这个文件的设计非常灵活,允许混合使用不同平台的模型。例如,你可以同时使用 Ollama 平台的嵌入模型和 OpenAI 的语言模型。
配置文件的基本结构如下:
yaml复制# 平台选项
platforms: ['xinference', 'ollama', 'oneapi', 'fastchat', 'openai', 'custom openai']
# 默认模型设置
DEFAULT_LLM_MODEL: "qwen2.5:7b"
DEFAULT_EMBEDDING_MODEL: "smartcreation/bge-large-zh-v1.5"
在实际项目中,我发现这种设计特别适合需要组合不同模型优势的场景。比如,某些中文任务可能需要专门的嵌入模型,而语言生成则可以使用通用的大模型。
2.2 Ollama 模型配置实战
2.2.1 模型下载与安装
配置 Ollama 模型的第一步是下载所需模型。根据我的经验,使用以下命令可以稳定地获取模型:
bash复制ollama pull qwen2.5:7b
ollama pull smartcreation/bge-large-zh-v1.5
这里有一个容易忽略的细节:下载速度可能会受到网络环境影响。我在国内部署时发现,使用镜像源可以显著提高下载速度。例如:
bash复制OLLAMA_HOST=mirror.ollama.ai ollama pull qwen2.5:7b
2.2.2 模型参数配置
配置模型参数时,有几个关键点需要特别注意:
-
模型名称格式:对于 smartcreation/bge-large-zh-v1.5 这样的模型,必须包含完整的命名空间(smartcreation/),否则会导致加载失败。
-
API 基础地址:本地部署时,api_base_url 应设置为
http://127.0.0.1:11434/v1。我在一个项目中曾错误地使用了 https,结果浪费了半天时间排查连接问题。 -
代理模型设置:SUPPORT_AGENT_MODELS 列表必须包含你将使用的语言模型,否则代理功能将无法正常工作。
一个完整的配置示例如下:
yaml复制DEFAULT_LLM_MODEL: "qwen2.5:7b"
DEFAULT_EMBEDDING_MODEL: "smartcreation/bge-large-zh-v1.5"
SUPPORT_AGENT_MODELS: ["qwen2.5:7b"]
api_base_url: "http://127.0.0.1:11434/v1"
2.3 局域网访问配置
在生产环境中,通常需要从局域网其他设备访问 Langchain-Chatchat 服务。根据我的部署经验,这需要两个步骤:
- 检查端口开放状态:
bash复制# Windows
netstat -aon|findstr 11434
# Linux
netstat -aon|grep 11434
- **配置 Oll
