GPT实战系列-LangChain如何构建基通义千问的多工具链

GPT实战系列-LangChain如何构建基通义千问的多工具链

LangChain

GPT实战系列-LangChain如何构建基通义千问的多工具链

GPT实战系列-构建多参数的自定义LangChain工具

GPT实战系列-通过Basetool构建自定义LangChain工具方法

GPT实战系列-一种构建LangChain自定义Tool工具的简单方法

GPT实战系列-搭建LangChain流程简单应用

GPT实战系列-简单聊聊LangChain搭建本地知识库准备

GPT实战系列-LangChain + ChatGLM3构建天气查询助手

GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手

GPT实战系列-简单聊聊LangChain

大模型查询工具助手之股票免费查询接口

随着OpenAI的GPT-4这样的大型语言模型(LLMs)已经风靡全球,现在让它们自动执行各种任务,如回答问题、翻译语言、分析文本等。LLMs是在交互上真正体验到像"人工智能"。如何管理这些模块呢?

LangChain在这方面发挥重要作用。LangChain使构建由LLMs驱动的应用程序变得简单,使用LangChain,可以在统一的界面中轻松与不同类型的LLMs进行交互,管理模型版本,管理对话版本,并将LLMs连接在一起。

准备

本例子中,采用通义千问作为LLM

python 复制代码
# 引入需要的模块
from langchain.chains import LLMChain, SimpleSequentialChain

from langchain import PromptTemplate

import os

设置 千问的相关环境,和模型接口函数:

python 复制代码
from langchain_community.llms import Tongyi
os.environ["DASHSCOPE_API_KEY"] = "your key"
llm = Tongyi()

构建第一个Prompt链

LangChain可以连接到自己定义的工具,也可以连接到内嵌的tool提供商。此处,先用Prompt构建简单的链路。

python 复制代码
# 第一步 prompt工具链
template = "Can you provide a brief summary of the movie {movie_title}? Please keep it concise."

first_prompt = PromptTemplate(input_variables=["movie_title"],template=template)

chain_one = LLMChain(llm=llm, prompt=first_prompt)

构建第二个Prompt链

python 复制代码
# 第二步 prompt工具链

second_prompt = PromptTemplate(input_variables=["actor"],

template="Can you list three movies featuring {actor}?")

chain_two = LLMChain(llm=llm, prompt=second_prompt)

可以看到 两个int 参数:

multiply
multiply(a: int, b: int) -> int - Multiply two numbers.
{'a': {'title': 'A', 'type': 'integer'}, 'b': {'title': 'B', 'type': 'integer'}}

SimpleSequentialChain把链串起来

通过SimpleSequentialChain 把 各个链串起来,形成信息处理流。

python 复制代码
# 结合第一和第二链
overall_chain = SimpleSequentialChain(chains=[chain_one, chain_two], verbose=True)

final_answer = overall_chain.run("Inception")

print(final_answer)

最后打印,实现功能。效果取决于定义的Prompt和模型的能力,得到类似的输出::

> Entering new SimpleSequentialChain chain...
Inception is a 2010 science fiction thriller film directed by Christopher Nolan. The movie follows Dom Cobb (Leonardo DiCaprio), an expert thief who specializes in infiltrating people's dreams to steal their ideas. Cobb is offered a chance to have his criminal history erased if he completes an impossible task: implanting an idea into the subconscious mind of a wealthy businessman, Robert Fischer (Cillian Murphy). To do this, Cobb assembles a team including a chemist, an architect, and a forger, and they delve into multiple layers of dream-sharing, facing challenges like time dilation and the risk of being trapped in their own subconscious. As the dreamscapes become more complex, Cobb's haunted past threatens to derail the mission and jeopardize the lives of his team members. The film explores themes of reality, dreams, and the power of the human mind.
1. The Matrix (1999) - This science fiction action film, directed by the Wachowskis, also blurs the lines between reality and the virtual world. It follows Neo (Keanu Reeves), a computer programmer who discovers that his reality is actually a simulated world created by intelligent machines. With the help of a group of rebels, including Morpheus (Laurence Fishburne) and Trinity (Carrie-Anne Moss), Neo learns to manipulate this simulated reality and fights against the machine-controlled dystopia.

2. Interstellar (2014) - Another Christopher Nolan-directed film, Interstellar explores the boundaries of space, time, and human endeavor. Matthew McConaughey plays Cooper, a former pilot and engineer who leads an expedition through a wormhole in search of a new habitable planet for humanity. The movie delves into complex scientific concepts like relativity and the fifth dimension while examining the emotional impact of leaving loved ones behind.

3. Paprika (2006) - This Japanese animated psychological science fiction film, directed by Satoshi Kon, revolves around a device that allows therapists to enter and explore their patients' dreams. Dr. Atsuko Chiba, using her alter ego Paprika, must navigate a chaotic dreamscape when the device falls into the wrong hands, causing dream and reality to merge dangerously. The film explores similar themes of dreams and their impact on the human psyche as Inception.

> Finished chain.
1. The Matrix (1999) - This science fiction action film, directed by the Wachowskis, also blurs the lines between reality and the virtual world. It follows Neo (Keanu Reeves), a computer programmer who discovers that his reality is actually a simulated world created by intelligent machines. With the help of a group of rebels, including Morpheus (Laurence Fishburne) and Trinity (Carrie-Anne Moss), Neo learns to manipulate this simulated reality and fights against the machine-controlled dystopia.

2. Interstellar (2014) - Another Christopher Nolan-directed film, Interstellar explores the boundaries of space, time, and human endeavor. Matthew McConaughey plays Cooper, a former pilot and engineer who leads an expedition through a wormhole in search of a new habitable planet for humanity. The movie delves into complex scientific concepts like relativity and the fifth dimension while examining the emotional impact of leaving loved ones behind.

3. Paprika (2006) - This Japanese animated psychological science fiction film, directed by Satoshi Kon, revolves around a device that allows therapists to enter and explore their patients' dreams. Dr. Atsuko Chiba, using her alter ego Paprika, must navigate a chaotic dreamscape when the device falls into the wrong hands, causing dream and reality to merge dangerously. The film explores similar themes of dreams and their impact on the human psyche as Inception.

LangChain是一个Python框架,可以使用LLMs构建应用程序。它与各种模块连接,使与LLM和提示管理,一切变得简单。

觉得有用 收藏 收藏 收藏

点个赞 点个赞 点个赞

End

GPT专栏文章:

GPT实战系列-实战Qwen通义千问在Cuda 12+24G部署方案_通义千问 ptuning-CSDN博客

GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案

GPT实战系列-Baichuan2本地化部署实战方案

GPT实战系列-让CodeGeeX2帮你写代码和注释_codegeex 中文-CSDN博客

GPT实战系列-ChatGLM3管理工具的API接口_chatglm3 api文档-CSDN博客

GPT实战系列-大话LLM大模型训练-CSDN博客

GPT实战系列-LangChain + ChatGLM3构建天气查询助手

GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)

GPT实战系列-ChatGLM2模型的微调训练参数解读

GPT实战系列-如何用自己数据微调ChatGLM2模型训练

GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案

GPT实战系列-Baichuan2等大模型的计算精度与量化

GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF

GPT实战系列-探究GPT等大模型的文本生成-CSDN博客

相关推荐
我爱学Python!5 小时前
基于 LangChain 的自动化测试用例的生成与执行
人工智能·自然语言处理·langchain·自动化·llm·测试用例·大语言模型
龙的爹23336 小时前
论文翻译 | LLaMA-Adapter :具有零初始化注意的语言模型的有效微调
人工智能·gpt·语言模型·自然语言处理·nlp·prompt·llama
罗曼蒂克在消亡8 小时前
github项目——gpt-pilot自动创建应用
gpt·github·github项目
牛右刀薛面10 小时前
launcher.py: error: the following arguments are required: --output_dir
llm·sft·llamafactory
wgggfiy1 天前
chatgpt学术科研prompt模板有哪些?chatgpt的学术prompt有哪些?学术gpt,学术科研
论文阅读·人工智能·gpt·chatgpt·prompt·aigc
JasonLiu19191 天前
论文推荐 |【Agent】自动化Agent设计系统
人工智能·自动化·llm·agent·智能体
ulimpid1 天前
LLM | Xinference 安装使用(支持CPU、Metal、CUDA推理和分布式部署)
llm·xinference
Ephemeroptera1 天前
通过python-api使用openai的gpt
人工智能·python·gpt
DC10201 天前
GPT 的工作原理:深入解析
java·开发语言·gpt