微信扫码
添加专属顾问
我要投稿
技术架构包括以下几个核心组件:
用户接口层:通过自然语言输入需求(prompt),用户与业务系统(应用)交互。
解析与路由层:利用Function Calling解析用户请求,并确定所需的外部功能。
功能调用层:通过LangChain框架管理和执行具体的功能调用。
数据处理层:处理和分析从外部系统获取的数据。
结果反馈层:将处理后的结果反馈给用户。
3.5代码示例
import openai
import os
import tiktoken
# 加载 .env 文件
from dotenv import load_dotenv, find_dotenv
from langchain.prompts import PromptTemplate
from langchain.llms import OpenAI
from langchain.chains import LLMChain
from langchain.chains import LLMRequestsChain
#from langchain.chat_models import AzureChatOpenAI
from langchain.chat_models import ChatOpenAI #直接访问OpenAI的GPT服务
_ = load_dotenv(find_dotenv())
# 从环境变量中获得你的 OpenAI Key和配置URL
openai.api_key = os.getenv('OPENAI_API_KEY')
openai.api_base = os.getenv('OPENAI_API_URL')
model = os.getenv('OPENAI_API_MODEL')
llm = ChatOpenAI(model_name=model, temperature=0) #直接访问OpenAI的GPT服务
#llm = AzureChatOpenAI( model_name=model, temperature=0, max_tokens=200) # 通过Azure的OpenAI服务
#根据查询的结果结果返回给大模型,大模型再组装后进行返回
def query_baidu(question):
template = """Between >>> and <<< are the raw search result text from web.
Extract the answer to the question '{query}' or say "not found" if the information is not contained.
Use the format
Extracted:<answer or "not found">
>>> {requests_result} <<<
Extracted:"""
PROMPT = PromptTemplate(
input_variables=["query", "requests_result"],
template=template,
)
inputs = {
"query": question,
"url": "http://www.baidu.com/s?wd=" + question.replace(" ", "+")
}
requests_chain = LLMRequestsChain(llm_chain = LLMChain(llm=llm, prompt=PROMPT), output_key="query_info", verbose=True)
res = requests_chain.run(inputs)
return res
#python 程序入口
if __name__ == "__main__":
print(query_baidu("今天长沙的天气?"))
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-07-30
用 LangChain 打造你的第一个 AI Agent:从零到一的实践指南(含关键代码)
2025-07-29
LangGraph v0.6 重磅发布!全新 Context API 让智能体开发更简单
2025-07-25
LangChain---Memory:为AI应用赋予“记忆”
2025-07-23
Langchain学习教程一(Hello World)
2025-07-23
Langchain学习教程二(提示词模板和 LCEL 语法)
2025-07-23
Langchain 教程三(FewShotChatMessagePromptTemplate)
2025-07-23
Langchain 教程四(OutputParser)
2025-07-23
Langchain教程五(LCEL 上篇)
2025-06-05
2025-05-06
2025-05-28
2025-05-08
2025-05-28
2025-07-14
2025-05-19
2025-06-26
2025-05-19
2025-05-14
2025-07-14
2025-07-13
2025-07-05
2025-06-26
2025-06-13
2025-05-21
2025-05-19
2025-05-08