Langchain-chatchat的chat接口调用示例

本文介绍了如何利用requests库调用langchain-chatchat的chat接口进行多轮对话,通过提供历史对话内容(history作为包含用户和助手内容的数组)来实现连续对话功能,并处理可能出现的HTTP状态码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

多轮对话时可选择加入history,history是一个数组,格式如下:

hisotyr = [{'role': 'user', 'content': user_content},
	{'role': 'assistant', 'content': assistant_content}]

调用的代码如下:

import requests


# 调用langchain-chatchat的chat接口
def chat(param: str, history: list) -> str:
    url = 'http://ip:端口/chat/chat'
    response = requests.post(url,
                             headers={
                                 'Authorization': '',
                                 'Content-Type': 'application/json'
                             },
                             json={
                                 "query": param,
                                 "history": history,
                                 "model_name": "chatglm2-6b",
                                 "temperature": 0.7,
                                 "prompt_name": "llm_chat"
                             },
                             )
    if response.status_code == 200:
        return response.text
    return ''

如有错误,还望指正。

### Langchain-Chatchat 知识库接口 `knowledge_base_chat` 的使用指南 #### 接口概述 `knowledge_base_chat` 是 Langchain-Chatchat 提供的一个核心功能模块,用于实现基于本地知识库的问答交互。该接口通过加载已有的知识库文件并结合语言模型完成对用户提问的回答。其主要依赖于 Langchain 和 Ollama 技术栈,并支持多种配置选项。 #### 配置准备 在使用 `knowledge_base_chat` 前,需确保已完成以下准备工作: 1. 安装必要的依赖项,包括但不限于 Python、Langchain 及 Ollama。 2. 初始化知识库路径及相关设置文件(如 `basic_settings.yaml` 和 `kb_settings.yaml`),这些文件可采用默认配置[^1],或者根据需求自定义调整[^2]。 3. 执行命令以初始化知识库: ```bash chatchat kb -r ``` #### 使用方法 以下是关于如何调用 `knowledge_base_chat` 接口的具体说明: ##### 1. 加载知识库 在启动应用之前,需要加载已经构建好的知识库数据。这一步通常由框架自动处理,但如果手动操作,则可以通过如下方式实现: ```python from langchain_chatchat import KnowledgeBaseManager # 创建知识库管理器实例 manager = KnowledgeBaseManager() # 载入知识库 manager.load_knowledge_base() ``` ##### 2. 发起对话请求 发起一次基于知识库的对话请求时,可通过传递查询字符串来获取响应结果。具体代码示例如下: ```python response = manager.knowledge_base_chat(query="什么是量子计算?") print(response) ``` 此函数内部会执行一系列逻辑流程,其中包括将用户的输入存储到数据库中以便后续分析或检索[^3]。 ##### 3. 自定义参数 除了基本的功能外,还可以传入额外的参数来自定义行为模式。例如指定某个特定的知识领域范围或是更改返回内容的形式等。 --- ### 示例程序 下面提供了一个完整的例子展示如何利用 `knowledge_base_chat` 实现简单的问答系统: ```python from langchain_chatchat import KnowledgeBaseManager def main(): # 初始化知识库管理者对象 manager = KnowledgeBaseManager() try: # 尝试加载现有的知识库资源 manager.load_knowledge_base() while True: user_input = input("请输入您的问题 (退出请按 'q'): ") if user_input.lower() == 'q': break answer = manager.knowledge_base_chat(user_input) print(f"答案: {answer}") except Exception as e: print(f"发生错误: {e}") if __name__ == "__main__": main() ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值