什么是链式架构
我们已经学习了langchain封闭的一些基础操作,那么如果要用langchain开发一个完整的应用程序,就需要用到链式架构。
首先理解一下langchain中链的概念。链,是封装完成某个功能的一个完整操作流程。
使用 LLMChain / ConversationChain 实现
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
from langchain.chat_models import ChatOpenAI
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
import os
OPENAIKEY = os.getenv("OPENAI_API_KEY") # 建议更名
llm = ChatOpenAI(
model="gpt-4o",
temperature=0,
max_tokens=None,
timeout=30, # 建议设置合理超时
max_retries=2,
api_key=OPENAIKEY,
base_url="https://api.openai-proxy.org/v1",
)
prompt = PromptTemplate(
input_variables=["company","language"],
template="为这家{company}公司取一个亮眼{language}名字:",
)
chain = LLMChain(llm=llm, prompt=prompt)
message = chain.invoke({"company":"咨询","language":"英文"})
print(message)
|
输出:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
{
"company": "咨询",
"language": "英文",
"text": "当然!以下是一些亮眼的英文名字建议,适合咨询公司使用
1. **Visionary Edge**
寓意前瞻性和领先优势,适合强调创新和战略的咨询公司。
2. **Pinnacle Advisory**
“Pinnacle”意为巅峰,传递卓越和专业的形象。
3. **Catalyst Partners**
“Catalyst”意为催化剂,象征推动变革和加速成功。
4. **Elevate Consulting**
“Elevate”意为提升,传递帮助客户迈向更高层次的理念。
5. **Aspire Strategies**
“Aspire”意为追求卓越,适合强调愿景和目标的公司。
6. **Nexus Advisory**
“Nexus”意为连接,象征建立联系和整合资源。
7. **Luminary Insights**
“Luminary”意为杰出人物或启明星,传递智慧和领导力。
8. **Momentum Group**
“Momentum”意为动力,象征推动客户持续发展。
9. **Summit Solutions**
“Summit”意为顶峰,传递帮助客户达到巅峰的理念。
10. **Beacon Consulting**
“Beacon”意为灯塔,象征指引方向和提供清晰的解决方案。
如果有具体的行业或公司定位,可以进一步调整名字以更贴合品牌形象!"
}
|
chain = LLMChain(llm=llm, prompt=prompt),这里的LLMChain就是一个链,它把我们的提示词传给大模型,
并把大模型的返回内容返回给我们,这样的一整个操作流程被封装成为了LLMChain这样的一个链,功能类似一个函数。
微信打赏
支付宝打赏