LangChain与大语言模型应用开发实战-第五章 行业项目实战_第1页
LangChain与大语言模型应用开发实战-第五章 行业项目实战_第2页
LangChain与大语言模型应用开发实战-第五章 行业项目实战_第3页
LangChain与大语言模型应用开发实战-第五章 行业项目实战_第4页
LangChain与大语言模型应用开发实战-第五章 行业项目实战_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

LangChain与大语言模型应用开发实战第五章:行业项目实战讲师:XXX|日期:XXX年X月从理论到实践:构建真实世界的AI应用夯实理论基石回顾LangChain的核心概念与基础模块,涵盖模型调用、提示工程、链式调用与记忆机制,筑牢AI应用开发的底层逻辑。跨越落地鸿沟理论只是起点,真正的挑战在于如何将技术与业务深度融合。我们将聚焦实际场景,探讨解决真实痛点的思路与方法。全流程项目实战精选四个典型行业案例,带领大家走完从需求分析、架构设计到最终开发的完整流程,将知识转化为生产力。本章学习目标掌握项目开发全流程学会如何分析业务需求,设计软件架构,并使用LangChain框架完成从0到1的应用开发。深入理解RAG技术通过“文档问答系统”与“业务知识库增强系统”实战,掌握检索增强生成(RAG)的核心原理与工程化实践。实践智能代理(Agent)基于“智能客服系统”案例,学习构建能理解意图、拆解并自主执行复杂任务的智能代理。探索自动化工作流通过实现“自动化报告生成器”,学习如何将业务逻辑转化为代码,设计并落地自动化的业务处理流程。提升工程化能力学习多格式文档处理、API密钥安全管理、系统性能优化,最终具备编写健壮、可维护的高质量代码的能力。PROJECT01智能客服系统开发RAG技术应用·智能代理架构·全流程开发实战AIENGINEERINGPRACTICE智能客服系统开发-项目介绍项目背景随着业务规模的快速扩张,企业的客户咨询量呈指数级激增。传统人工客服模式已难以应对海量咨询,普遍面临服务压力大、响应速度慢、人力成本高昂且标准化程度低的痛点,严重影响客户体验与运营效率。建设目标构建一套具备行业领先水平的智能客服系统,实现7x24小时不间断服务。系统需能独立解决80%以上的标准化、高频问题,显著分流人工客服压力,降低运营成本,最终全面提升客户满意度与品牌形象。意图识别基于NLP技术精准解析

用户的语义与提问意图知识库问答自动检索企业知识库

回答产品、服务与政策问题任务执行API直连业务系统

自动查询订单、创建工单多轮对话具备上下文记忆能力

支持连贯的自然语言交互人工转接识别复杂或敏感问题

无缝流转至人工客服处理项目一:软件设计-系统架构用户输入层UserInputLayer作为系统的交互入口,负责接收并标准化用户的自然语言查询请求。意图识别层IntentRecognitionLayer系统的“大脑”与核心决策模块,利用大语言模型(LLM)精准判断用户需求意图。执行层ExecutionLayer•知识库问答链:结合向量数据库与RAG技术回答知识类问题。

•任务执行代理:调用内部API接口执行具体业务操作。

•人工转接:作为兜底方案,确保复杂问题妥善解决。数据层DataLayer包含企业私有化知识库与各类核心业务系统API,为上层提供数据支撑。项目一:软件设计-技术选型开发框架:LangChain构建LLM应用的核心逻辑框架,串联各类组件大语言模型:GPT-4/Claude3负责用户意图精准识别、自然语言生成与推理文档加载:PyPDFLoader/Docx2txtLoader高效读取并加载PDF、Word等格式的企业知识库文档文本分割:RecursiveCharacterTextSplitter将长篇文档切分为适合模型处理的语义块向量化模型:all-MiniLM-L6-v2将文本片段转换为高维向量,实现语义相似度计算向量数据库:Chroma轻量级、易用的向量存储库,支持高效检索知识片段记忆模块:ConversationBufferMemory维护多轮对话的上下文信息,保障交互连贯性智能代理:Agent具备自主逻辑推理能力,根据需求动态决策并调用工具项目一:软件开发-步骤1:环境配置与依赖安装💻终端命令(Bash)#1.创建并激活Python虚拟环境condacreate-ncustomer_service_envpython=3.10-ycondaactivatecustomer_service_env#2.使用Pip安装核心依赖库pipinstalllangchainlangchain-openaipython-dotenvchromadbsentence-transformerspypdfdocx2txt📝代码与依赖解析虚拟环境隔离(VirtualEnv)创建独立的Python3.10环境,有效避免项目间的依赖版本冲突,保障环境纯净。核心框架与AI集成(LangChain&OpenAI)安装langchain与langchain-openai实现LLM应用的快速开发与大模型调用;用python-dotenv安全管理API密钥。数据处理与存储利用chromadb构建轻量级向量数据库;sentence-transformers负责文本向量化;pypdf与docx2txt支持主流文档的读取与加载。项目一:软件开发-步骤2:加载与处理知识库#导入必要的库与工具fromlangchain_community.document_loadersimportPyPDFLoader,Docx2txtLoader,TextLoaderfromlangchain.text_splitterimportRecursiveCharacterTextSplitterimportos#定义支持的文件类型与对应的加载器映射关系LOADER_MAPPING={".pdf":(PyPDFLoader,{}),#PDF文档加载器".docx":(Docx2txtLoader,{}),#Word文档加载器".txt":(TextLoader,{"encoding":"utf8"})}#加载并处理目录中的文档defload_and_split_docs(dir_path):docs=load_documents(dir_path)#调用自定义函数加载多格式文档text_splitter=RecursiveCharacterTextSplitter(chunk_size=1000,chunk_overlap=150)returntext_splitter.split_documents(docs)#切分文本split_docs=load_and_split_docs("knowledge_base/")#执行加载与切分项目一:软件开发-步骤3:创建向量数据库fromlangchain_community.vectorstoresimportChroma

fromlangchain_community.embeddingsimportHuggingFaceEmbeddings

#初始化向量化模型

embeddings=HuggingFaceEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2")

#创建并持久化向量数据库

persist_directory="chroma_db"

vectordb=Chroma.from_documents(

documents=split_docs,

embedding=embeddings,

persist_directory=persist_directory

)

vectordb.persist()

#创建检索器

retriever=vectordb.as_retriever(search_kwargs={"k":3})HuggingFaceEmbeddings初始化一个本地向量化模型,将文本转化为计算机可理解的高维向量。Chroma.from_documents将分割后的文档通过模型转化为向量,并批量存入Chroma数据库中。persist()将内存中的向量数据持久化保存到本地磁盘,避免每次运行重复构建数据库。as_retriever()将向量库转化为检索器,设置返回最相似的3个文档,为后续问答链提供检索支持。项目一:软件开发-步骤4:构建问答链(RAG)RAG问答链核心代码实现(Python)#加载环境变量并初始化模型与问答链

fromlangchain.chainsimportRetrievalQAfromlangchain_openaiimportChatOpenAI

importos;fromdotenvimportload_dotenv

load_dotenv();llm=ChatOpenAI(model_name="gpt-4",temperature=0)

#构建检索问答链:连接大模型与向量数据库检索器

qa_chain=RetrievalQA.from_chain_type(

llm=llm,chain_type="stuff",retriever=retriever,return_source_documents=True

)

#调用问答链进行测试

result=qa_chain.invoke("你们的退货政策是怎样的?");print(result["result"])项目一:软件开发-步骤5:构建任务执行工具#模拟查询订单状态的函数&封装为工具fromlangchain.toolsimportTooldefcheck_order_status(order_id:str)->str:"""根据订单ID查询订单状态"""order_status={"12345":"已发货","67890":"处理中"}returnf"订单{order_id}状态:{order_status.get(order_id,'未找到')}"#将函数封装成Agent可调用的工具tools=[Tool(name="CheckOrderStatus",func=check_order_status,description="查询订单状态,入参为订单ID如'12345'")]自定义业务逻辑函数核心逻辑实现:定义`check_order_status`函数,模拟从数据库或API获取数据的过程。

在实际应用中,这里可以对接企业内部的CRM、ERP或订单系统接口,处理复杂的业务查询。封装为Agent可调用工具使用LangChain的`Tool`类进行包装,使Agent具备执行具体任务的能力。

关键点**:`description`字段是LLM判断是否调用此工具的依据,描述需清晰准确,明确输入输出格式。项目一:软件开发-步骤6:构建智能代理(Agent)代码实现:基于LangChain构建带记忆的对话式Agent#导入必要的库与初始化记忆模块,支持上下文对话

fromlangchain.agentsimportinitialize_agent,AgentType

fromlangchain.memoryimportConversationBufferMemory

memory=ConversationBufferMemory(memory_key="chat_history",return_messages=True)

agent=initialize_agent(tools,llm,agent=AgentType.CHAT_CONVERSATIONAL_REACT_DESCRIPTION,memory=memory,verbose=True)

#启动命令行交互,输入'exit'结束对话

whileTrue:#循环监听用户输入

user_input=input("您:");ifuser_input.lower()=="exit":break

print("客服:",agent.run(user_input))项目一:小结项目成果我们成功构建了一个集知识问答和任务执行为一体的智能客服系统,实现了从单纯的信息检索到主动任务处理的跨越。核心技术•RAG(检索增强生成):精准处理知识问答场景,确保回答的准确性与来源可追溯。

•Agent(智能代理):处理复杂的多步任务执行与用户意图的智能分发。关键组件涵盖文档加载器、文本分割器、向量化模型、向量数据库、检索器、问答链、工具库、记忆模块及智能代理核心模块。开发流程闭环加载知识➔处理数据➔构建索引➔创建问答能力➔构建任务能力➔整合为智能代理系统可扩展性•轻松扩展支持更多格式的非结构化文档。

•无缝集成企业内部各类API接口,连接业务系统。

•灵活增加更复杂的多轮对话与任务编排逻辑。项目二文档问答系统构建基于RAG(检索增强生成)技术的深度实战项目二:文档问答系统构建-项目介绍项目背景企业内部沉淀了大量非结构化文档(如技术文档、产品手册、规章制度等),信息分散且格式不一,导致员工在查找特定信息时效率低下,难以快速定位有效知识,严重影响工作协同效率。建设目标构建基于大语言模型的智能文档问答系统,支持自然语言交互,能够深度理解用户查询意图,从海量非结构化文档中快速精准检索,并生成简洁、准确的回答,赋能企业知识资产高效复用。多格式支持无缝解析PDF、Word、Markdown、TXT等主流文档格式,打破信息格式壁垒。深度语义理解基于NLP技术,不仅匹配关键词,更能精准捕捉并理解用户的问题意图与上下文。海量精准检索结合向量数据库技术,毫秒级从海量文档中定位最相关的信息片段,实现“快且准”。智能总结生成自动归纳检索结果,生成逻辑清晰、简洁易懂的自然语言回答,降低阅读成本。可溯源展示提供回答对应的原文出处和具体片段,确保信息的真实性和可信度,便于深度阅读。项目二:软件设计-核心流程(RAG)01向量化(Embedding)将用户输入的自然语言问题,通过Embedding模型转换为计算机可理解的高维向量,捕捉语义信息。02向量检索(Retrieval)利用向量数据库,通过计算余弦相似度,快速从海量知识库中检索出与问题向量最相关的文档片段。03构建提示词(PromptConstruction)将检索到的相关文档片段作为上下文信息,与用户的原始问题整合,构建一个信息更完整的提示词。04LLM生成回答(Generation)将增强后的提示词输入给大语言模型(LLM)。模型结合内置能力和提供的上下文,生成准确、有据可依的回答。项目二:软件开发-步骤1:环境与依赖#创建并激活虚拟环境(Conda)condacreate-ndoc_qna_envpython=3.10&&condaactivatedoc_qna_env#安装核心依赖库pipinstalllangchainlangchain-openaipython-dotenvchromadbsentence-transformerspypdfpython-docx标准化环境配置与项目一保持一致,先创建独立的虚拟环境,隔离项目依赖,避免包版本冲突。随后一次性安装本项目所需的所有核心依赖。文档处理工具链补充新增python-docx作为处理Word文档的核心库,支持读取.docx文件的文本、样式和元数据,可作为docx2txt的强力补充,满足更复杂的文档解析需求。项目二:软件开发-步骤2:文档加载与预处理document_processing.pyfromlangchain_community.document_loadersimportDirectoryLoader,PyPDFLoader,DocxLoader,TextLoaderfromlangchain.text_splitterimportCharacterTextSplitter#1.批量加载:自动识别目录下的多种文档格式loader=DirectoryLoader('docs/',glob="**/*",loader_cls={'.pdf':PyPDFLoader,'.docx':DocxLoader,'.txt':TextLoader})documents=loader.load()#2.智能分割:保留语义完整性的分块策略text_splitter=CharacterTextSplitter(separator="\n\n",chunk_size=1000,chunk_overlap=200)texts=text_splitter.split_documents(documents)项目二:软件开发-步骤3:创建向量存储与检索器#导入所需库fromlangchain_community.vectorstoresimportFAISSfromlangchain_community.embeddingsimportOpenAIEmbeddings#1.初始化OpenAI嵌入模型(需APIKey)embeddings=OpenAIEmbeddings()#2.利用文档创建FAISS向量存储db=FAISS.from_documents(texts,embeddings)#3.创建检索器(k=2表示返回最相似的2个结果)retriever=db.as_retriever(search_type="similarity",search_kwargs={"k":2})OpenAIEmbeddings调用OpenAI官方的嵌入模型生成向量。优点是效果好、适配性强,但需付费APIKey才能使用。FAISS向量库Facebook开源的相似度搜索库。适合本项目的轻量级场景,能直接在内存中高效完成海量向量检索。相似性检索配置指定检索类型为`similarity`(余弦相似度),并设置`k=2`来限制每次检索返回最相关的2个文档。项目二:软件开发-步骤4:构建高级问答链#导入必要的库与模块fromlangchain.chainsimportRetrievalQAWithSourcesChainfrommptsimportPromptTemplate#1.定义提示词模板:指导模型如何使用上下文回答并引用来源template="""使用上下文回答问题,若不知则直接回答不知道。尽可能详细并引用来源。上下文:{summaries}问题:{question}有用的回答:"""PROMPT=PromptTemplate(template=template,input_variables=["summaries","question"])#2.构建带来源的问答链(RetrievalQAWithSourcesChain)qa_chain=RetrievalQAWithSourcesChain.from_chain_type(llm=llm,chain_type="stuff",retriever=retriever,return_source_documents=True,chain_type_kwargs={"prompt":PROMPT})项目二:小结核心实践我们深入实践了RAG(检索增强生成)技术,从零构建了一个能够基于自有知识库进行回答的文档问答系统。核心技术掌握三大关键技术:将非结构化文本转化为数值向量的文本向量化、高效的向量检索算法、以及结合上下文信息的增强提示词工程。关键组件DirectoryLoader,CharacterTextSplitter,OpenAIEmbeddings,FAISS,RetrievalQAWithSourcesChain技术选型考量对比了本地嵌入模型与API嵌入模型的成本与效果;对比了Chroma与FAISS向量数据库在易用性与性能上的差异,从而选择最适合的方案。未来优化方向尝试map_reduce、refine等不同的chain_type来处理长文档;优化文本分割的策略与粒度以提升检索准确率;引入多模态支持。项目03自动化报告生成器开发实践AUTOMATEDREPORTGENERATORDEVELOPMENTPRACTICE项目三:自动化报告生成器-项目介绍📝项目背景在企业的日常运营中,销售周报、财务月报等业务报告的制作是一项高频且必要的工作。目前的人工制作方式,存在流程繁琐、耗时费力、格式不统一,以及数据引用和计算容易出错等痛点,严重影响了业务效率和数据准确性。🎯建设目标打造一个企业级的自动化报告生成系统。系统能根据配置好的逻辑和模板,自动整合并分析数据源,生成格式规范、内容详实、图文并茂的Word或PDF报告,显著提升报告产出效率与质量,释放人力资源用于更高价值的分析工作。✨五大核心功能模块数据接入支持多源异构数据接入,覆盖数据库、Excel、CSV等主流数据源。数据处理分析内置清洗与转换规则,自动计算并提取业务关键指标(KPI)。智能内容生成结合LLM能力与预设模板,将枯燥数据转化为专业的自然语言文本。自动图表生成根据分析结果,一键生成柱状图、折线图等多种可视化图表。报告自动组装自动将生成的文本与图表整合进模板,输出Word/PDF格式报告。项目三:软件设计-系统流程01.数据提取从不同来源获取原始数据,为后续处理打下坚实基础。02.数据处理对数据进行清洗、转换,并计算出报告所需的各类关键指标。03.内容生成将关键指标和提示词发送给LLM,自动生成报告的文字描述部分。04.图表生成利用Python专业绘图库,根据处理后的数据自动生成可视化图表。05.报告组装调用文档处理库,将生成的文本与图表自动插入模板,输出最终报告。流程价值:实现数据从原始状态到可视化报告的自动化流转,显著提升数据分析与产出效率。项目三:软件开发-步骤1:环境与依赖Terminal—bash#创建并激活虚拟环境condacreate-nreport_generator_envpython=3.10condaactivatereport_generator_env#安装核心依赖库pipinstalllangchainlangchain-openaipython-dotenvpandasmatplotlibpython-docxopenpyxlpandas用于对项目中的各类结构化数据进行高效清洗、转换、分析与整合,是数据处理的核心工具。matplotlibPython生态中最基础的绘图库,支持生成各类高质量的图表、直方图和趋势图,用于可视化分析结果。python-docx用于在程序中自动化创建和修改MicrosoftWord文档(.docx),实现报告内容的结构化导出。openpyxl一个专门用于读取和写入Excel2010+(.xlsx/.xlsm)文件的库,支持处理复杂的电子表格数据。项目三:软件开发-步骤2:数据处理与分析❯Python数据模拟与关键指标分析逻辑#导入数据处理库

importpandasaspd

#1.模拟从数据库读取销售流水数据

defget_sales_data():

data={

'date':pd.date_range(start='2026-01-01',periods=30),#30天日期序列

'product':['A','B','C']*10,#产品循环

'sales':[100,200,150,120,220,180,90,190,160,110,210,170,105,205,155,115,215,175,95,195,165,108,208,158,118,218,178,98,198,168]

}

returnpd.DataFrame(data)

#2.核心分析:计算总销售额、日均、分产品及趋势

defanalyze_sales_data(df):

res={'total_sales':df['sales'].sum(),'avg_daily_sales':df['sales'].mean()}

res['product_sales']=df.groupby('product')['sales'].sum().to_dict()

returnres

#3.执行主逻辑:获取数据->分析数据->结果可直接用于生成报告

sales_df=get_sales_data()#模拟获取数据

analysis_results=analyze_sales_data(sales_df)#生成结构化分析结果项目三:软件开发-步骤3:使用LLM生成报告文本#1.导入必要的库并定义提示词模板frommptsimportPromptTemplatefromlangchain.chainsimportLLMChainprompt=PromptTemplate(template="根据分析结果生成周报,要求:1.总结表现2.分点分析产品3.趋势分析4.两条建议",input_variables=["analysis_results"])#2.创建LLM链并执行生成逻辑llm_chain=LLMChain(llm=llm,prompt=prompt)#将之前步骤生成的分析结果传入模型,生成最终报告report_text=llm_chain.run(analysis_results=analysis_results)项目三:软件开发-步骤4:生成图表并插入Word可视化与文档生成📊绘制销售趋势图

利用Matplotlib库将每日销售数据转化为折线图,自动调整坐标轴并保存为图片,直观呈现业务走势。📄生成自动化报告

使用python-docx库新建文档,依次添加报告标题、分析文本和生成的图表图片,最后输出标准Word文件。#1.导入必要的库

importmatplotlib.pyplotasplt

fromdocximportDocument

fromdocx.sharedimportInches#2.定义函数:生成销售趋势折线图

defgenerate_sales_chart(daily_trend,filename='sales_trend.png'):

dates,sales=list(daily_trend.keys()),list(daily_trend.values())

plt.figure(figsize=(10,6))#设置画布大小

plt.plot(dates,sales,marker='o')#绘制带数据点的折线

plt.title('DailySalesTrend');plt.tight_layout();plt.savefig(filename)

returnfilename#3.定义函数:组装Word文档并插入图表

defcreate_word_report(report_text,chart_filename):

doc=Document()#初始化文档对象

doc.add_heading('销售周报',level=1)#添加一级标题

doc.add_paragraph(report_text);doc.add_heading('销售趋势图',level=2)

doc.add_picture(chart_filename,width=Inches(6))#插入图片

doc.save('sales_report.docx')项目三:小结核心技术栈成功打通从数据到报告的全流程。核心技术包括:

•数据清洗与处理:Pandas

•智能内容生成:LLM(大语言模型)

•可视化图表绘制:Matplotlib

•自动化文档生成:python-docx关键代码组件系统的关键构建基石:

•数据结构:pandas.DataFrame(数据承载)

•流程编排:LLMChain&PromptTemplate(内容生成引擎)

•输出渲染:matplotlib.pyplot,docx.Document项目价值体现•效率飞跃:将耗时数小时的人工报告制作缩短至分钟级,大幅降低人力成本。

•质量保障:消除了人工复制粘贴的错误,确保数据准确性。

•决策赋能:实现了高频、即时的数据驱动决策支持能力。未来扩展方向•连接更多结构化数据源(如SQLServer,MySQL)

•支持动态交互图表与更丰富的报告模板库

•增加PDF、HTML等更多格式的报告输出支持

•开发Web端界面,降低使用门槛,支持团队协作项目四业务知识库增强系统构建融合多维知识源·打造智能化业务引擎项目四:业务知识库增强系统-项目介绍📌项目背景传统的知识库系统通常呈现静态特征,内容更新缓慢且缺乏智能交互能力。用户往往需要耗费大量时间筛选信息,难以快速定位所需内容,导致企业内部沉淀的业务知识无法得到有效复用,也阻碍了知识在团队间的高效传承。🎯建设目标构建一个集“动态化”与“智能化”于一体的业务知识库增强系统。该系统将打破传统模式,不仅支持精准的智能问答,更具备主动发现知识缺口、自动生成关联新知识的能力,最终为业务人员提供强有力的数据支撑和科学的辅助决策建议。智能问答基于RAG技术,对业务问题提供精准、自然的问答服务,提升检索效率。知识图谱构建自动从海量业务文档中提取关键实体及关系,构建可视化的知识网络结构。知识发现深度分析用户高频查询与文档内容,主动识别潜在的知识关联点和信息缺口。辅助决策整合多源业务信息与历史数据,为复杂的业务场景提供客观的数据支撑与决策建议。自动化更新实时监控指定数据源与文档库的变动,自动同步并更新知识库内容,确保时效性。项目四:软件设计-核心架构数据层DataLayer负责从多种来源(结构化、非结构化、实时流数据)进行多模态数据的统一接入与清洗。知识层KnowledgeLayer将原始数据转化为结构化、可计算的知识表示,核心组件包含向量数据库和行业知识图谱。应用层ApplicationLayer对外提供多样化的智能交互服务。请求经智能路由分发,由对应功能引擎处理并返回结果。核心引擎CoreEngine系统的“大脑”,基于LLM(大语言模型)将知识层的静态数据与知识转化为动态的、上下文感知的智能交互服务。项目四:软件开发-步骤1:知识图谱构建#导入必要库与连接图数据库fromlangchain_community.graphsimportNeo4jGraphimportos#初始化图数据库连接,通过环境变量配置以确保安全graph=Neo4jGraph(url=os.getenv("NEO4J_URL"),username=os.getenv("NEO4J_USER"),password=os.getenv("NEO4J_PASSWORD"))#核心逻辑:提取实体与关系并写入图谱(伪代码示意)#entities,relations=llm_extraction_chain.run(raw_text)forrelinrelations:cypher=f"MERGE(a:Person{{name:'{rel.source}'}})MERGE(b:Person{{name:'{rel.target}'}})MERGE(a)-[:{rel.type}]->(b)"graph.query(cypher)#刷新并输出图谱架构,确认数据写入graph.refresh_schema()print(graph.get_schema())项目四:软件开发-步骤2:构建知识图谱问答链#导入问答链类fromlangchain.chainsimportGraphQAChain#1.构建问答链实例graph_qa_chain=GraphQAChain.from_llm(llm=llm,graph=graph,verbose=True)#2.测试问答能力query="谁是王五的上级?"result=graph_qa_chain.run(query)print(result)核心代码解析GraphQAChain.from_llm(...)这是创建知识图谱问答链的核心入口,通过将LLM(大语言模型)和图数据库连接,赋予AI理解和推理关系型数据的能力。它是如何工作的?1.将自然语言问题➝转化为Cypher查询语言

2.在图数据库中执行查询➝获取结构化答案

3.将结果整理➝自然语言回复给用户项目四:软件开发-步骤3:构建混合问答系统#导入依赖库,构建路由问答链fromlangchain.chains.routerimportMultiRetrievalQAChainfromlangchain.chainsimportRetrievalQA#1.初始化:文档问答链&知识图谱问答链doc_qa=RetrievalQA.from_chain_type(llm,"stuff",re

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论