最新LangChain框架快速入门(非常详细),零基础入门到精通,收藏这篇就够了

LangChain入门指南 LangChain是一个强大的框架,旨在帮助开发人员使用语言模型构建端到端的应用程序。它提供了一套工具、组件和接口,可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互,将多个组件链接在一起,并集成额外的资源,例如 API 和数据库。官方文档:https://python.langchain.com/en/latest/ 阅读详情
AI摘要

本文介绍了LangChain框架,它可用于构建和部署基于语言模型的应用程序,能简化开发、集成模型和数据等。还给出了关键模块、安装方法及使用示例。此外,分享了2025最新大模型学习路线,包括四个级别,以及经典PDF书籍、视频教程、项目实战和面试题等学习资源。

本文将会介绍LangChain框架,并以python代码示例来解释该框架的作用,使用到了OpenAI的API,并附上代码和结果,感兴趣的读者可以跟着跑代码。

LangChain框架是什么

LangChain 是一个用于构建和部署基于语言模型(如大型语言模型,LLM)的应用程序的框架。想象一下,LangChain 就像是一个工具箱,里面装满了各种工具和指导手册,帮助你更容易地创建和优化与语言相关的软件项目。

LangChain框架的实际作用主要体现在以下几个方面:

1. 开发LLM应用:

  • LangChain提供了一套工具和组件,简化了基于大型语言模型(LLMs)的应用开发过程。

  • **应用场景:**聊天机器人、虚拟助手、语言翻译工具和情感分析工具等,都是可以利用LangChain来创建的LLM驱动的应用。

2. 集成不同模型和数据:

  • LangChain允许开发者将不同的语言模型、数据源和工具连接起来,创建更强大的应用。

  • **应用场景:**例如,可以结合多个LLMs,使用输出作为下一个LLM的输入,或者将LLMs与外部数据源集成,用于问答系统。

3. 提供模板和工具:

  • LangChain提供了模板,允许开发者快速开始构建特定的应用,如使用自定义数据构建聊天机器人或从非结构化数据中提取结构化数据。

  • **应用场景:**开发者可以使用这些模板来减少开发时间和成本,快速部署应用。

4. 调试、测试和监控:

  • LangSmith作为LangChain的一部分,允许开发者调试、测试、评估和监控他们的LLM应用。

  • **应用场景:**在开发过程中,开发者可以利用LangSmith来优化和部署应用,确保应用的稳定性和性能。

5. 部署为API:

  • LangServe是LangChain的一部分,它帮助开发者将他们的应用部署为REST API,使得应用可以被更广泛地访问和交互。

  • **应用场景:**开发者可以将他们的LLM应用部署为API,提供给其他开发者或用户使用。

6. 处理文档和数据:

  • LangChain提供了多种工具来处理文档和数据,如文档加载器、文本分割器和索引/检索器。

  • **应用场景:**在需要处理大量文档或非结构化数据的场景中,LangChain可以帮助提取、组织和检索信息。

7. 构建复杂的工作流:

  • LangChain允许开发者构建包含多个步骤的工作流,将LLMs与其他组件结合,如提示模板、长期记忆等。

  • **应用场景:**在需要复杂逻辑和多步骤交互的应用中,如客户服务自动化,LangChain可以提供强大的支持。

关键模块

LangChain 框架的关键模块如下:

  • Models (模型)

  • 该模块是由 LangChain 提供的标准接⼝,你可以通过它与各种 LLM 进 ⾏交互。LangChain ⽀持集成 OpenAI 、 Hugging Face 、 Cohere 、 GPT4All 等 提供商提供的不同类型的模型。

  • Prompts (提示词)

  • 提⽰词已成为 LLM 编程的新标准。该模块包含许多⽤于管理提⽰词的 ⼯具。

  • Indexes (索引)或 Retrieval 模块

  • 该模块让你能够将 LLM 与你的数据结合使⽤

  • Chains (链)

  • 通过该模块, LangChain 提供了 Chain 接⼝。你可以使⽤该接⼝创建⼀ 个调⽤序列,将多个模型或提⽰词组合在⼀起。

  • Agents (智能体)

  • 该模块引⼊了 Agent 接⼝。所谓智能体,就是⼀个可以处理⽤户输 ⼊、做出决策并选择适当⼯具来完成任务的组件。它以迭代⽅式⼯作,采 取⼀系列⾏动,直到解决问题。

  • Memory (记忆)

  • 该模块让你能够在链调⽤或智能体调⽤之间维持状态。默认情况下, 链和智能体是⽆状态的。这意味着它们独⽴地处理每个传⼊的请求,就像 LLM ⼀样。

LangChain 是⽤于不同 LLM 的通⽤接⼝,你可以查阅其⽂档以了解更多信 息。LangChain 的⽂档包含⼀份集成列表,其中涉及 OpenAI 和其他许多 LLM 提供商。⼤多数集成需要 API 密钥才能建⽴连接。对于 OpenAI 模 型,可以在环境变量 OPENAI_API_KEY 中设 置 API 密钥。

安装LangChain框架

 pip install langchain

动态提示词

from langchain.chat_models import ChatOpenAI` `from langchain import PromptTemplate, LLMChain` `template = """Question: {question}` `Let's think step by step.` `Answer: """` `prompt = PromptTemplate(template=template,` `input_variables=["question"])` `llm = ChatOpenAI(model_name="gpt-4")` `llm_chain = LLMChain(prompt=prompt, llm=llm)` `question = """ What is the population of the capital of the country` `where the Olympic Games were held in 2016? """` `llm_chain.run(question)

PromptTemplate 负责构建模型的输⼊。也就是说,它能以可复制的⽅式 ⽣成提⽰词。它包含⼀个名为 template 的输⼊⽂本字符串,其中的值可 以通过 input_variables 进⾏指定。在本例中,我们定义的提⽰词会⾃ 动将 “Let’s think step by step” 部分添加到问题中。

本例使⽤的 LLM 是 gpt-4 。⽬前默认模型是 gpt-3.5-turbo 。ChatOpenAI 函数将模型的名称赋给变量 llm 。这个函数假定⽤户在环境变量OPENAI_API_KEY 中设置了 API 密钥 。

提⽰词和模型由 LLMChain 函数组合在⼀起,形成包含这两个元素的⼀条 链。最后,我们需要调⽤ run 函数来请求补全输⼊问题。当运⾏ run 函数 时, LLMChain 使⽤提供的输⼊键值(以及可⽤的记忆键值)格式化提⽰词模板,随后将经过格式化的字符串传递给 LLM ,并返回 LLM 输出。我 们可以看到,模型运⽤ “ 逐步思考 ” 的技巧⾃动回答问题。

智能体及工具

智能体及⼯具是 LangChain 框架提供的关键功能:它们可以使应⽤程序变 得⾮常强⼤,让 LLM 能够执⾏各种操作并与各种功能集成,从⽽解决复杂 的问题。

这⾥所指的 “ ⼯具 ” 是围绕函数的特定抽象,使语⾔模型更容易与之交互。智能体可以使⽤⼯具与世界进⾏交互。具体来说,⼯具的接⼝有⼀个⽂本 输⼊和⼀个⽂本输出。LangChain 中有许多预定义的⼯具,包括⾕歌搜索、 维基百科搜索、 Python REPL 、计算器、世界天⽓预报 API 等。要获取完整 的⼯具列表,请查看 LangChain ⽂档中的⼯具⻚⾯。除了使⽤预定义的⼯ 具,你还可以构建⾃定义⼯具并将其加载到智能体中,这使得智能体⾮常 灵活和强⼤。

本节介绍⼀种适⽤于应⽤程序的智能体,它需要⼀系列中间步骤。该智能 体安排执⾏这些步骤,并可以⾼效地使⽤各种⼯具响应⽤户的查询。从某 种意义上说,因为 “ 逐步思考 ” ,所以智能体有更多的时间来规划⾏动,从 ⽽完成更复杂的任务。

智能体安排的步骤如下所述。

  1. 智能体收到来⾃⽤户的输⼊。

  2. 智能体决定要使⽤的⼯具(如果有的话)和要输⼊的⽂本。

  3. 使⽤该输⼊⽂本调⽤相应的⼯具,并从⼯具中接收输出⽂本。

  4. 将输出⽂本输⼊到智能体的上下⽂中。

  5. 重复执⾏步骤 2 〜步骤 4 ,直到智能体决定不再需要使⽤⼯具。此时, 它将直接回应⽤户。

使用工具的好处

就本节⽽⾔,我们希望模型能够回答以下问题:2016 年奥运会举办国⾸都 的⼈⼝的平⽅根是多少?这个问题并没有特殊的含义,但它很好地展⽰了 LangChain 智能体及⼯具如何提⾼ LLM 的推理能⼒。

如果将问题原封不动地抛给 GPT-3.5 Turbo ,那么我们会得到以下回答:

The capital of the country where the Olympic Games were held in 2016 is Rio de Janeiro, Brazil. The population of Rio de Janeiro is approximately 6.32 million people as of 2021. Taking the square root of this population, we get approximately 2,513.29. Therefore, the square root of the population of the capital of the country where the Olympic Games were held in 2016 is approximately 2,513.29

这个回答⾄少有两处错误:巴⻄的⾸都是巴⻄利亚,⽽不是⾥约热内卢;6 320 000 的平⽅根约等于 2513.96 ,⽽不是 2513.29 。我们可以通过运⽤ “ 逐 步思考 ” 或其他提⽰⼯程技巧来获得更好的结果,但由于模型在推理和数学 运算⽅⾯存在困难,因此我们很难相信结果是准确的。使⽤ LangChain 可 以给我们更好的准确性保证。

如以下代码所⽰, LangChain 智能体可以使⽤两个⼯具:维基百科搜索和计 算器。在通过 load_tools 函数创建⼯具之后,我们使⽤ initialize_agent 函数创建智能体。智能体的推理功能需要⽤到⼀个 LLM ,本例使⽤的是 gpt-3.5-turbo 。参数 ZERO_SHOT_REACT_DESCRIPTION 定义了智能体如何在每⼀步中选择⼯ 具。通过将 verbose 的值设置为 True ,我们可以查看智能体的推理过 程,并理解它是如何做出最终决策的。

from langchain.chat_models import ChatOpenAI` `from langchain.agents import load_tools, initialize_agent, AgentType` `llm = ChatOpenAI(model_name="gpt-3.5-turbo", temperature=0)` `tools = load_tools(["wikipedia", "llm-math"], llm=llm)` `agent = initialize_agent( `   `tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,`   `verbose=True` `)` `question = """What is the square root of the population of the capital of the Country where the Olympic Games were held in 2016?"""` `agent.run(question)

在使⽤维基百科搜索⼯具之前,需要安装相应的 Python 包 wikipedia 。可以使⽤ pip install wikipedia 来安装这个包。

正如你所看到的,智能体决定查询维基百科以获取有关 2016 年奥运会的信息:

> Entering new chain...` `I need to find the country where the Olympic Games were held in 2016 and then find the population of its capital city. Then I can take the square root of that population.` `Action: Wikipedia` `Action Input: "2016 Summer Olympics"` `Observation: Page: 2016 Summer Olympics` `[...]

输出的下⼀⾏包含维基百科关于奥运会的摘录。接下来,智能体使⽤维基 百科搜索⼯具⼜进⾏了两次额外的操作:

Thought:I need to search for the capital city of Brazil.` `Action: Wikipedia` `Action Input: "Capital of Brazil"` `Observation: Page: Capitals of Brazil` `Summary: The current capital of Brazil, since its construction in 1960, is Brasilia. [...]` `Thought: I have found the capital city of Brazil, which is Brasilia.` `Now I need to find the population of Brasilia.` `Action: Wikipedia` `Action Input: "Population of Brasilia"` `Observation: Page: Brasilia` `[...]

下⼀步,智能体使⽤计算器⼯具:

Thought: I have found the population of Brasilia, but I need to calculate the square root of that population.` `Action: Calculator` `Action Input: Square root of the population of Brasilia (population: found in previous observation)` `Observation: Answer: 1587.051038876822

得出最终答案:

Thought: I now know the final answer` `Final Answer: The square root of the population of the capital of the country where the Olympic Games were held in 2016 is approximately 1587.` `> Finished chain.

正如你所⻅,该智能体展⽰了较强的推理能⼒:在得出最终答案之前,它 完成了 4 个步骤。LangChain 框架使开发⼈员能够仅⽤⼏⾏代码就实现这种 推理能⼒。

记忆

在某些应⽤程序中,记住之前的交互是⾄关重要的,⽆论是短期记忆还是 ⻓期记忆。使⽤ LangChain ,你可以轻松地为链和智能体添加状态以管理记 忆。构建聊天机器⼈是这种能⼒最常⻅的⽤例。在 LangChain 中,你可以 使⽤ ConversationChain 很快地完成这个过程,只需⼏⾏代码即可将语 ⾔模型转换为聊天⼯具。

以下代码使⽤ text-ada-001 模型创建⼀个聊天机器⼈。这是⼀个只能执⾏基 本任务的⼩模型。然⽽,它是 GPT-3 系列中速度最快、成本最低的模型。该模型从未针对聊天任务做过微调,但我们可以看到,只需⼏⾏ LangChain 代码,即可使⽤这个简单的⽂本补全模型开始聊天:

from langchain import OpenAI, ConversationChain` `chatbot_llm = OpenAI(model_name='text-ada-001')` `chatbot = ConversationChain(llm=chatbot_llm , verbose=True)` `chatbot.predict(input='Hello')

在以上代码的最后⼀⾏,我们执⾏了 predict(input=‘Hello’) 。这要 求聊天机器⼈回复我们的 ‘Hello’ 消息。模型的回答如下所⽰:

> Entering new ConversationChain chain...` `Prompt after formatting:` `The following is a friendly conversation between a human and an AI. The AI is talkative and provides lots of specific details from its context. If the AI does not know the answer to a question, it` `truthfully says it does not know.` `Current conversation:` `Human: Hello` `AI:` `> Finished chain.` `' Hello! How can I help you?'

由于将 ConversationChain 中的 verbose 设置为 True ,因此我们可 以查看 LangChain 使⽤的完整提⽰词。当我们执⾏ predict(input=‘Hello’) 时, text-ada-001 模型收到的不仅仅是 ‘Hello’ 消息,⽽是完整的提⽰词。该提⽰词位于标签 > Entering new ConversationChain chain… 和 > Finished chain 之间。

如果继续对话,我们会发现该函数在提⽰词中保留了对话的历史记录。如 果我们接着问模型是不是 AI ,那么这个问题也将被包含在提⽰词中:

> Entering new ConversationChain chain...` `Prompt after formatting:` `The following [...] does not know.` `Current conversation:` `Human: Hello` `AI:  Hello! How can I help you?` `Human: Can I ask you a question? Are you an AI?` `AI:` `> Finished chain.` `'\n\nYes, I am an AI.'

ConversationChain 对象使⽤提⽰⼯程技巧和记忆技巧,将进⾏⽂本补 全的 LLM 转换为聊天⼯具。

尽管 LangChain 让所有语⾔模型拥有了聊天能⼒,但这个解决 ⽅案并不像 GPT-3.5 Turbo 和 GPT-4 这样强⼤,后两者已经专门针对聊 天任务进⾏了优化。此外, OpenAI 已经宣布弃⽤ text-ada-001 模型。

嵌入

将语⾔模型与你⾃⼰的⽂本数据相结合,这样做有助于将应⽤程序所⽤的 模型知识个性化。

⾸先检索信息,即获取⽤户 的查询并返回最相关的⽂档;然后将这些⽂档发送到模型的输⼊上下⽂ 中,以便它响应查询。本节展⽰使⽤ LangChain 和嵌⼊技术实现这⼀点是 多么简单。

document_loaders 是 LangChain 中的⼀个重要模块。通过这个模块,你可以 快速地将⽂本数据从不同的来源加载到应⽤程序中。⽐如,应⽤程序可以加载 CSV ⽂件、电⼦邮件、 PowerPoint ⽂档、 Evernote 笔记、 Facebook 聊 天记录、 HTML ⻚⾯、 PDF ⽂件和许多其他格式。要查看完整的加载器列 表,请查阅 LangChain ⽂档。每个加载器设置起来都⾮常简单。

如果 PDF ⽂件位于当前⼯作⽬录下,则以下代码将加载⽂件内容并按⻚进 ⾏划分。

from langchain.document_loaders import PyPDFLoader` `loader = PyPDFLoader("ExplorersGuide.pdf")` `pages = loader.load_and_split()

在使⽤ PDF 加载器之前,需要安装 pypdf 包。这可以通过 pip install pypdf 来完成。

进⾏信息检索时,需要嵌⼊每个加载的⻚⾯。正如我们在第 2 章中讨论的 那样,在信息检索中,嵌⼊是⽤于将⾮数值概念(如单词、标记和句⼦) 转换为数值向量的⼀种技术。这些嵌⼊使得模型能够⾼效地处理这些概念 之间的关系。借助 OpenAI 的嵌⼊端点,开发⼈员可以获取输⼊⽂本的数值 向量表⽰。此外, LangChain 提供了⼀个包装器来调⽤这些嵌⼊,如下所示。

from langchain.embeddings import OpenAIEmbeddings` `embeddings = OpenAIEmbeddings()

要使⽤ OpenAIEmbeddings ,请先使⽤ pip install tiktoken 安装 tiktoken 包。

索引保存⻚⾯嵌⼊并使搜索变得容易。LangChain 以向量数据库为中⼼。有 许多向量数据库可供选择,详⻅ LangChain ⽂档。以下代码⽚段使⽤ Faiss 向量数据库,这是⼀个主要由 Facebook AI 团队开发的相似性搜索库。

from langchain.vectorstores import FAISS` `db = FAISS.from_documents(pages, embeddings)

在使⽤ Faiss 向量数据库之前,需要使⽤ pip install faiss-cpu 命令安装 faiss-cpu 包。

下图展⽰了 PDF ⽂件的内容如何被转换为嵌⼊向量并存储在 Faiss 向量数 据库中。

现在很容易搜索相似内容:

q = "What is Link's traditional outfit color?"` `db.similarity_search(q)[0]

我们得到以下内容:

Document(page_content='While Link’s traditional green tunic is certainly an iconic look, his wardrobe has expanded [...] Dress for Success', `         `metadata={'source': 'ExplorersGuide.pdf', 'page': 35})

这个问题的答案是, Link 的服装颜⾊是绿⾊。我们可以看到,答案就在选 定的内容中。输出显⽰,答案在 ExplorersGuide.pdf 的第 35 ⻚。请记住, Python 从 0 开始计数。因此,如果查看原始 PDF ⽂件,你会发现答案在第 36 ⻚,⽽⾮第 35 ⻚。

下图显⽰了信息检索过程如何使⽤查询的嵌⼊和向量数据库来识别与查询 最相似的⻚⾯。

你可能希望将嵌⼊整合到聊天机器⼈中,以便在回答问题时使⽤它检索到 的信息。再次强调,使⽤ LangChain ,只需⼏⾏代码即可轻松实现。我们使 ⽤ RetrievalQA ,它接受 LLM 和向量数据库作为输⼊。然后,我们像往 常⼀样向所获得的对象提问:

from langchain.chains import RetrievalQA` `from langchain import OpenAI` `llm = OpenAI()` `chain = RetrievalQA.from_llm(llm=llm, retriever=db.as_retriever())` `q = "What is Link's traditional outfit color?"` `chain(q, return_only_outputs=True)

我们得到以下答案:

{'result': " Link's traditional outfit color is green."}

下图显⽰了 RetrievalQA 如何使⽤信息检索来回答⽤户的问题。正如 我们从图中看到的, “ 提供上下⽂ ” 将信息检索系统找到的⻚⾯和⽤户最初 的查询进⾏分组。然后,上下⽂被发送给 LLM 。LLM 可以利⽤上下⽂中的 附加信息正确回答⽤户的问题。

你可能会问:为什么在将信息添加到 LLM 的上下⽂中之前需要进⾏信息检 索?事实上,⽬前已有的语⾔模型⽆法处理包含数百⻚的⼤型⽂件。因 此,如果输⼊⽂件过⼤,那么我们会对其进⾏预过滤。这是信息检索过程 的任务。我们对比一下RAG的流程图,也许也可以发现一些关联了。

在不久的将来,随着输⼊上下⽂的不断增加,可能就不再需要使 ⽤信息检索技术了。

下面给大家分享一份2025最新版的大模型学习路线,帮助新人小白更系统、更快速的学习大模型!
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版优快云大礼包:《AGI大模型学习资源包》免费分享**

一、2025最新大模型学习路线

一个明确的学习路线可以帮助新人了解从哪里开始,按照什么顺序学习,以及需要掌握哪些知识点。大模型领域涉及的知识点非常广泛,没有明确的学习路线可能会导致新人感到迷茫,不知道应该专注于哪些内容。

我们把学习路线分成L1到L4四个阶段,一步步带你从入门到进阶,从理论到实战。

L1级别:AI大模型时代的华丽登场

L1阶段:我们会去了解大模型的基础知识,以及大模型在各个行业的应用和分析;学习理解大模型的核心原理,关键技术,以及大模型应用场景;通过理论原理结合多个项目实战,从提示工程基础到提示工程进阶,掌握Prompt提示工程。

L2级别:AI大模型RAG应用开发工程

L2阶段是我们的AI大模型RAG应用开发工程,我们会去学习RAG检索增强生成:包括Naive RAG、Advanced-RAG以及RAG性能评估,还有GraphRAG在内的多个RAG热门项目的分析。

L3级别:大模型Agent应用架构进阶实践

L3阶段:大模型Agent应用架构进阶实现,我们会去学习LangChain、 LIamaIndex框架,也会学习到AutoGPT、 MetaGPT等多Agent系统,打造我们自己的Agent智能体;同时还可以学习到包括Coze、Dify在内的可视化工具的使用。

L4级别:大模型微调与私有化部署

L4阶段:大模型的微调和私有化部署,我们会更加深入的探讨Transformer架构,学习大模型的微调技术,利用DeepSpeed、Lamam Factory等工具快速进行模型微调;并通过Ollama、vLLM等推理部署框架,实现模型的快速部署。

整个大模型学习路线L1主要是对大模型的理论基础、生态以及提示词他的一个学习掌握;而L3 L4更多的是通过项目实战来掌握大模型的应用开发,针对以上大模型的学习路线我们也整理了对应的学习视频教程,和配套的学习资料。

二、大模型经典PDF书籍

书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。(书籍含电子版PDF)

三、大模型视频教程

对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。

四、大模型项目实战

学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

五、大模型面试题

面试不仅是技术的较量,更需要充分的准备。

在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版优快云大礼包:《AGI大模型学习资源包》免费分享

大模型之LangChain介绍 LangChain 就是一个 LLM 编程框架,你想开发一个基于 LLM 应用,需要什么组件它都有,直接使用就行;甚至针对常规的应用流程,它利用链(LangChain中Chain的由来)这个概念已经内置标准化方案了。下面我们从新兴的大语言模型(LLM)技术栈的角度来看看为何它的理念这么受欢迎。其官方的定义。 阅读详情

相关推荐

一文彻底搞懂什么是LangChain?

LangChain赋予了开发人员将LLM与其他计算和知识来源相结合以构建应用程序的能力。使用LangChain,开发人员可以使用一个抽象LLM应用程序的核心构建块的框架。探索LangChain的能力并尝试其各个组件,会发现可能性几乎无限。LangChain框架提供了一种灵活和模块化的语言生成方法,允许创建根据用户特定需要量身定制的定制解决方案。

女王の专属领地 2万+

什么是LangChain?从零开始入门 LangChain

LangChain 作为一个新兴的开源 LLM 开发框架,它的设计理念和一些实现方法都有值得我们借鉴的地方。当然一个开源项目必然有自己的优点的同时也会存在不少的缺点。我们在实际使用的时候,应该按照自己的需求和实际情况去选择,切记,不要简单的因为网上的评论而做出选择。毕竟,好不好用,只有你自己才清楚。

2401_85375151的博客 3万+

即插即用!5分钟为你的SNN模型添加频谱注意力(DCT-SA模块实战)

本文介绍了如何为脉冲神经网络(SNN)快速集成即插即用的DCT-SA频谱注意力模块。该模块利用离散余弦变换(DCT)在频率域自适应加权特征,能有效提升模型对纹理、边缘的感知能力,并在CIFAR10-DVS等数据集上实现分类精度提升与脉冲发放率下降。文章以SpikingJelly框架和ResNet19为例,提供了详细的代码实现、集成步骤及参数调优实战指南。

kotlin6android的博客 609

从零开始入门 LangChain

本篇文章中将和大家讲述什么是 LangChain ,以及 LangChain 解决了现在大模型发展的哪些问题,然后会讲解LangChain 中基础的概念和组件。

2301_81940605的博客 1万+

FPGA AXI DDR3读写时序调试与FIFO缓存实战解析

本文深入解析FPGA中AXI协议与DDR3的读写时序调试,重点探讨FIFO缓存在数据流控制中的关键作用。通过实战案例详细讲解突发传输中的地址对齐、数据分片等常见问题,并提供状态机设计、仿真波形分析和性能优化技巧,帮助开发者高效解决高速数据存储场景下的时序同步与数据一致性问题。

blockchain9miner的博客 1119

用Origin快速拟合荧光寿命、PL Decay (TRPL)数据分析处理

用Origin快速拟合荧光寿命、PL Decay (TRPL)数据分析处理

A20802013的博客 2万+

LangChain从入门到精通,非常详细,收藏这一篇就够了!!!

LangChain从入门到精通,非常详细,收藏这一篇就够了!!!

ytt0523_com的博客 5514

国产PLC实战:用汇川Easy320搞定TCP通信,手把手教你网口转串口控制设备

本文详细解析了如何使用汇川Easy320 PLC实现TCP通信与串口控制,解决工业自动化中设备间通信协议差异问题。通过实战案例和代码示例,展示了Easy320在协议转换、数据解析和串口转发中的高效应用,帮助工程师快速掌握网口转串口控制技术。

weixin_31774841的博客 500

一文搞懂LangChain是什么(非常详细),零基础入门到精通,看这一篇就够了

一文搞懂LangChain是什么(非常详细),零基础入门到精通,看这一篇就够了

Python单行客的博客 2万+

儿童启蒙教育APP

pinyinList.add(createPinyin("a", "啊,像阿姨的阿", R.raw.pinyin_a));pinyinList.add(createPinyin("i", "衣,像衣服的衣", R.raw.pinyin_i));pinyinList.add(createPinyin("u", "乌,像乌鸦的乌", R.raw.pinyin_u));pinyinList.add(createPinyin("ü", "鱼,像小鱼的鱼", R.raw.pinyin_v));-- 固定竖屏 -->

寒寒豆豆软件公司的博客 167

Dify智能体开发:Dify文件上传

相较于聊天文本,文档文件能够承载大量的信息,例如学术报告、法律合同。受限于 LLM 自身仅能够支持文件或图片,难以获取文件内更加丰富的上下文信息,应用的使用者不得不手动复制粘贴大量信息与 LLM 对话,增加了许多不必要的使用成本。

王国平的博客 2591

langchain从入门到精通(非常详细),零基础入门到精通,看这一篇就够了

langchain从入门到精通(非常详细),零基础入门到精通,看这一篇就够了

Java癫疯的博客 5288

STM32CubeMX | 38-使用硬件SPI驱动以太网模块(W5500)

本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件SPI外设与以W5500通信,驱动以太网模块。 1. 准备工作 硬件准备 开发板 首先需要准备一个开发板,这里我准备的是STM32L4的开发板(BearPi): W5500以太网模块 这里我使用常见的以太网模块W5500: W5500官网 http://www.w5500.cn/ W5500中文手册 iEthernet W5500 Datasheet 软件准备 需要安装好Keil - MDK及芯片对应的包,以

Mculover666的博客(嵌入式) 7388

2025版最新LangChain框架快速入门,(非常详细)零基础入门到精通,收藏这篇就够了

本文将会介绍LangChain框架,并以python代码示例来解释该框架的作用,使用到了OpenAI的API,并附上代码和结果,感兴趣的读者可以跟着跑代码。LangChain 是一个用于构建和部署基于语言模型(如大型语言模型,LLM)的应用程序的框架。想象一下,LangChain 就像是一个工具箱,里面装满了各种工具和指导手册,帮助你更容易地创建和优化与语言相关的软件项目。LangChain提供了一套工具和组件,简化了基于大型语言模型(LLMs)的应用开发过程。

Libra1313的博客 1687

在 ABAP 平台配置 OAuth 2.0 Client(OA2C_CONFIG):一份可落地的全景实践

本文详细介绍了在ABAP平台中配置OAuth 2.0客户端的完整流程。重点讲解了四种授权类型(Client Credentials、Authorization Code、SAML 2.0 Bearer Assertion、Resource Owner Password Credentials)的适用场景和配置要点,以及客户端认证的三种方式(Client Secret、Client Certificate、mTLS)。文章提供了操作步骤、排错建议和工程实践指导,包括端点配置、回调地址管理、scopes设置等关

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 355

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

LangChain开发框架解析(非常详细),零基础入门到精通,看这一篇就够了

LangChain开发框架解析(非常详细),零基础入门到精通,看这一篇就够了

分享Python知识 3368

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

2025版最新langchain原理,零基础入门到精通,收藏这篇就够了

最新越发觉得AI的发展,对未来是一场革命,LangChain已经在工程设计上有了最佳实践,类似于AI时代的编程模型或编程框架,有点Spring框架的意思。之前在LangChain上也有些最佳实践,所以在这里分享记录下。LangChain解决什么问题。

Javachichi的博客 2043

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

2025版最新langchain原理,(非常详细)从零基础入门到精通,收藏这篇就够了

最新越发觉得AI的发展,对未来是一场革命,LangChain已经在工程设计上有了最佳实践,类似于AI时代的编程模型或编程框架,有点Spring框架的意思。之前在LangChain上也有些最佳实践,所以在这里分享记录下。LangChain解决什么问题。

Libra1313的博客 1334

2025版最新LangChain 入门与实战,零基础入门到精通,收藏这篇就够了

想要构建自己的Agent,你一定无法避免和LangChain打交道。所以这篇文章将给大家介绍一下LangChain,知道它是什么,怎么用,基于LangChain能做了,并且它有什么问题。LangChain的文字资料和视频资料挺多的,我就不重复了,我会在文末添加相关的资料,有兴趣的朋友自行学习。我相信很多人是因为不了解LangChain,不了解Agent,才来看我的文章,而且大部分人时间也很宝贵,没有这么时间花几天时间来系统化学习,而且主要也不确定学习LangChain对自己的工作有没有帮助。

Javachichi的博客 3497

LangChain快速入门,收藏这一篇就够了!

这是一个相当多的内容要涵盖!让我们开始吧。

z551646的博客 1456

使用 LangChain 快速构建 RAG 应用,langchain从入门到精通,收藏这篇就足够了

相信你现在已经知道如何使用 LangChain 快速构建 RAG 应用。建议你不妨亲自动手去实践,使用 LangChain 去构建出一个自己的 RAG 应用。

Y525698136的博客 1355

【2025版】一文搞懂LangChain是什么?(非常详细)从零基础到精通,收藏这篇就够了

LangChain是一个专门为利用语言模型创建应用程序而设计的全面框架。它的主要目标是帮助开发人员轻松构建基于语言模型的应用。虽然LangChain与多种语言模型兼容,但它特别与OpenAI ChatGPT无缝集成,从中受益于其先进功能。本文学习知识点: 语言模型(LLMs)和LangChain。提示工程。语言模型的内存。语言模型的链式结构。LangChain索引。工具和代理。

Libra1313的博客 3137

java安装教程详细,零基础入门到精通,收藏这篇就够了

指定的是jdk下的bin目录。

leah126的博客 1742

langchain有必要学吗(非常详细),零基础入门到精通,看这一篇就够了

langchain有必要学吗(非常详细),零基础入门到精通,看这一篇就够了

Python单行客的博客 1496

深度剖析大模型Agent框架,零基础入门到精通,收藏这篇就够了

Agent 框架代表着人工智能系统设计模式的重大转变。与依赖静态、预定义工作流程的传统 AI 应用程序不同,Agent 框架引入了动态自适应系统,该系统具备自主感知、推理和行动的能力。这些框架可以把复杂任务拆解成多个小子任务,交给专门的 Agent 协作完成,以实现更宏大的目标。借助大型语言模型(LLM),Agent 框架能够管理工作流程、做出决策,还能无缝集成各种工具,这使得它成为动态决策、实时问题解决等高级应用的理想之选。

Python_0011的博客 2743

python安装教程(非常详细),零基础入门到精通,看这一篇就够了

python安装教程(非常详细),零基础入门到精通,看这一篇就够了

Python单行客的博客 1万+
上一篇: 2025版最新如何构建大模型代理 LLM Agent?零基础入门到精通,收藏这篇就够了
下一篇: 最新大模型训练微调需要什么样的硬件配置,(非常详细)零基础入门到精通,收藏这篇就够了
程序员_大白
博客等级 码龄5年 1万+粉丝 4001原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值