<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Hugo的博客]]></title><description><![CDATA[一个在技术海洋中争取不被淘汰的猫]]></description><link>https://blog.youkuaiyun.com/wangjiansui</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wangjiansui]]></copyright><item><title><![CDATA[8、LangGraph]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147457145</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147457145</guid><author>wangjiansui</author><pubDate>Tue, 29 Apr 2025 01:00:00 +0800</pubDate><description><![CDATA[我们需要两个主要节点- `agent` 节点：负责决定采取什么（如果有）行动。- 调用工具的 `tools` 节点：如果代理决定采取行动，此节点将执行该行动。首先，我们需要设置图执行的入口点——agent节点。然后，我们定义一个普通边和一个条件边。条件边意味着目的地取决于图状态（）的内容。在本例中，目的地在代理（LLM）决定之前是未知的。- 条件边：调用代理后，我们应该要么* a. 如果代理说要采取行动，则运行工具* b. 如果代理没有要求运行工具，则完成（回复用户）。]]></description><category></category></item><item><title><![CDATA[7、langChain和RAG实战：基于LangChain和RAG的常用案例实战]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147457113</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147457113</guid><author>wangjiansui</author><pubDate>Tue, 29 Apr 2025 00:00:00 +0800</pubDate><description><![CDATA[基于 LangChain 和 Streamlit 的 Web 应用，用于使用 LLM 和嵌入从 SQLite 数据库中搜索相关的offer。用户可以输入与品牌、类别或零售商相关的搜索查询，也支持通过SQL语句进行搜索，应用程序将从数据库中检索并显示相关的offer。一旦用户输入他们的 OpenAI 密钥，我们就会初始化 GPT 模型并要求他们输入搜索查询，该查询将用于抓取相关的 Wikipedia 页面。你就拥有了专属于您的友好机器人，它可以回答您关于维基百科文章的查询。用于访问文章的 URL 的模块。]]></description><category></category></item><item><title><![CDATA[6、LangChain进阶：自定义组件专题]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147456969</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147456969</guid><author>wangjiansui</author><pubDate>Mon, 28 Apr 2025 00:45:00 +0800</pubDate><description><![CDATA[LangChain具有一些内置的回调处理程序，但通常您会希望创建具有自定义逻辑的自定义处理程序。要创建自定义回调处理程序，我们需要确定我们希望处理的event(s)，以及在触发事件时我们希望回调处理程序执行的操作。然后，我们只需将回调处理程序附加到对象上，例如通过构造函数或运行时。在下面的示例中，我们将使用自定义处理程序实现流式处理。在我们的自定义回调处理程序中，我们实现了处理程序，以打印我们刚收到的令牌。然后，我们将自定义处理程序作为构造函数回调附加到模型对象上。]]></description><category></category></item><item><title><![CDATA[5、Rag基础：RAG 专题]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147456837</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147456837</guid><author>wangjiansui</author><pubDate>Mon, 28 Apr 2025 00:00:00 +0800</pubDate><description><![CDATA[接受一个关键字参数，用于自定义传递给 Python 的的参数。有关支持的 csv 参数的更多信息，请参阅csv 模块文档。#示例：csv_custom.pycsv_args={},page_content='Name: 名称Species: 种类Age: 年龄Habitat: 栖息地' metadata={'source': '../../resource/doc_search.csv', 'row': 0}page_content='Name: 狮子。]]></description><category></category></item><item><title><![CDATA[4、Embedding基础：Embedding 与向量数据库]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147456801</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147456801</guid><author>wangjiansui</author><pubDate>Sun, 27 Apr 2025 00:30:00 +0800</pubDate><description><![CDATA[Qdrant（读作：quadrant  /'kwɑdrənt/  n. 象限；象限仪；四分之一圆）是一个向量相似度搜索引擎。它提供了一个生产就绪的服务，具有方便的 API 来存储、搜索和管理点 - 带有附加载荷的向量。专门支持扩展过滤功能，使其对各种神经网络或基于语义的匹配、分面搜索和其他应用非常有用。以下展示了如何使用与向量数据库相关的功能。有各种运行的模式，取决于所选择的模式，会有一些细微的差异。选项包括：本地模式，无需服务器Qdrant 云请参阅安装说明。]]></description><category></category></item><item><title><![CDATA[3、LangChain基础：LangChain Tools & Agent]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147456745</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147456745</guid><author>wangjiansui</author><pubDate>Sun, 27 Apr 2025 00:15:00 +0800</pubDate><description><![CDATA[自定义 Tools在构建代理时，您需要为其提供一个列表，以便代理可以使用这些工具。除了实际调用的函数之外，由几个组件组成：属性类型描述namestr在提供给LLM或代理的工具集中必须是唯一的。str描述工具的功能。LLM或代理将使用此描述作为上下文。可选但建议，可用于提供更多信息（例如，few-shot示例）或验证预期参数。boolean仅对代理相关。当为True时，在调用给定工具后，代理将停止并将结果直接返回给用户。LangChain 提供了三种创建工具的方式：使用。]]></description><category></category></item><item><title><![CDATA[3、LangChain基础：LangChain Chat Model]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147456705</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147456705</guid><author>wangjiansui</author><pubDate>Sat, 26 Apr 2025 00:30:00 +0800</pubDate><description><![CDATA[Few shot(少量示例)创建少量示例的格式化程序创建一个简单的提示模板，用于在生成时向模型提供示例输入和输出。向LLM提供少量这样的示例被称为少量示例，这是一种简单但强大的指导生成的方式，在某些情况下可以显著提高模型性能。少量示例提示模板可以由一组示例或一个负责从定义的集合中选择一部分示例的示例选择器类构建。配置一个格式化程序，将少量示例格式化为字符串。这个格式化程序应该是一个对象。创建示例集合接下来，我们将创建一个少量示例的列表。]]></description><category></category></item><item><title><![CDATA[3、LangChain基础：LangChain 基础]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147456641</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147456641</guid><author>wangjiansui</author><pubDate>Sat, 26 Apr 2025 00:15:00 +0800</pubDate><description><![CDATA[即，逐个处理输入块，并产生相应的输出块。这种处理的复杂性可以有所不同，从简单的任务，如发出 LLM 生成的令牌，到更具挑战性的任务，如在整个 JSON 完成之前流式传输 JSON 结果的部分。如果这与您构建的内容无关，您也可以依赖于标准的命令式编程方法，通过在每个组件上调用invoke、batch或stream，将结果分配给变量，然后根据需要在下游使用它们。对于某些链，这意味着我们直接从 LLM 流式传输标记到流式输出解析器，您将以与 LLM 提供程序输出原始标记的速率相同的速度获得解析的增量输出块。]]></description><category></category></item><item><title><![CDATA[2、Prompt基础：Prompt Engineering 提示词工程]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147456593</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147456593</guid><author>wangjiansui</author><pubDate>Fri, 25 Apr 2025 01:00:00 +0800</pubDate><description><![CDATA[定义：Prompt Engineering 是设计和优化输入提示（prompt）以获得预期输出的过程。在与大型语言模型（如 GPT-4）交互时，如何构造提示会显著影响模型的回答质量。例子简单提示"告诉我关于猫的事情。优化提示"请详细描述猫的生物学特征、行为习惯以及它们在不同文化中的象征意义。通过优化提示，用户可以引导模型生成更详细和有用的回答。Prompt Engineering 是设计和优化输入提示以获得预期输出的过程。应用场景：定义特定功能的函数。示例提示。]]></description><category></category></item><item><title><![CDATA[1、AI及LLM基础：Python语法入门教程]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147456532</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147456532</guid><author>wangjiansui</author><pubDate>Fri, 25 Apr 2025 00:15:00 +0800</pubDate><description><![CDATA[​	这是一份全面的Python语法入门教程，涵盖了注释、变量类型与操作符、逻辑运算、list和字符串、变量与集合、控制流和迭代、模块、类、继承、进阶等内容，通过详细的代码示例和解释，帮助大家快速熟悉Python语法。Python中用#表示单行注释，#之后的同行的内容都会被注释掉。
使用三个连续的双引号表示多行注释，两个多行注释标识之间内容会被视作是注释。
二、基础变量类型与操作符
Python当中的数字定义和其他语言一样：
我们分别使用+, -, *, /表示加减乘除四则运算符。
这里要注意的是，在Pyth]]></description><category></category></item><item><title><![CDATA[1.3、AI及LLM基础：Streamlit的基础开发]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147454420</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147454420</guid><author>wangjiansui</author><pubDate>Thu, 24 Apr 2025 00:15:00 +0800</pubDate><description><![CDATA[streamlit.exe 是一个二进制文件，导致字符集解析出错。在这里把 linux 环境下的 streamlit 复制过来。Help | Find Action | Registry | python.debug.asyncio.repl 去掉勾。复制到 D:/software/python/python-3.12.4/.venv/Scripts/配置Pycharm调试Streamlit应用。再次点击 debug 就可以正常调试了。再次启动 debug 按钮，报错如下。点击调试按钮会报错。]]></description><category></category></item><item><title><![CDATA[1.2、AI及LLM基础：OpenAI 开发]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147454173</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147454173</guid><author>wangjiansui</author><pubDate>Thu, 24 Apr 2025 00:00:00 +0800</pubDate><description><![CDATA[US$5.00/1M input tokens”在GPT-4o中表示按百万个输入token来计费，每百万个输入token的计算费用为5美元。这种计费方式让用户能够更透明地了解和管理使用这些高级自然语言处理模型的成本。通过理解token的分割方式和具体的使用范例，用户可以更有效地计划和控制使用成本。GPT-4 可能提供两种不同的定价模式，分别为标准定价和批量API（Batch API）定价。让我们详细解释这些定价模式及其区别，以及为什么价格不同。两个不同的定价方案主要区别在于使用模式和规模的不同。]]></description><category></category></item><item><title><![CDATA[使用 LangChain 掌握检索增强生成 (RAG) 的终极指南：6、索引]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/141136843</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/141136843</guid><author>wangjiansui</author><pubDate>Wed, 23 Apr 2025 14:41:51 +0800</pubDate><description><![CDATA[本节介绍了两种索引技术：多表示索引和RAPTOR。多表示索引通过生成文档摘要并使用向量存储和文档存储来优化检索过程。RAPTOR则通过构建一个树状结构，递归地嵌入、聚类和摘要文本块，以更有效地处理大型文档和多文档检索场景。这些技术展示了如何使用Langchain库来实现复杂的文档检索和处理流程。]]></description><category></category></item><item><title><![CDATA[1.1、AI及LLM基础：AI 领域基础概念]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/147453435</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/147453435</guid><author>wangjiansui</author><pubDate>Wed, 23 Apr 2025 14:40:51 +0800</pubDate><description><![CDATA[欠拟合 (Under-fitting)：模型太简单，不能很好地捕捉数据中的模式。简单例子：用直线拟合“U”形数据。实际例子：房价预测中只用面积一个特征。最佳拟合 (Optimal-fitting)：模型恰到好处，既能很好地拟合训练数据，也能对新数据有良好表现。简单例子：用合适的二次曲线拟合“U”形数据。实际例子：房价预测中使用了多个重要特征。过拟合 (Over-fitting)：模型太复杂，过度记住了训练数据，无法泛化到新数据。简单例子。]]></description><category></category></item><item><title><![CDATA[使用 LangChain 掌握检索增强生成 (RAG) 的终极指南：5、将自然语言问题转换为结构化查询]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/141136475</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/141136475</guid><author>wangjiansui</author><pubDate>Mon, 12 Aug 2024 17:19:51 +0800</pubDate><description><![CDATA[本文介绍了如何使用Langchain将用户用自然语言提出的问题转换为结构化查询，以便从特定数据源检索信息。通过定义Pydantic模型和构建链，我们可以将用户问题转化为数据库查询，从而优化检索最相关结果的过程。]]></description><category></category></item><item><title><![CDATA[使用 LangChain 掌握检索增强生成 (RAG) 的终极指南：4、逻辑路由与语义路由的实现]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/141136252</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/141136252</guid><author>wangjiansui</author><pubDate>Mon, 12 Aug 2024 16:57:50 +0800</pubDate><description><![CDATA[本文介绍了在RAG中实现路由的方法，包括逻辑路由和语义路由两种技术。逻辑路由通过预定义选项让LLM决定路由，而语义路由则基于查询和提示之间的语义相似性来选择路由。通过这两种方法，可以有效地将用户查询路由到最合适的数据源，以提供更准确的答案。]]></description><category></category></item><item><title><![CDATA[使用 LangChain 掌握检索增强生成 (RAG) 的终极指南：3、HyDE（假设文档嵌入）在RAG中的应用]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/140500939</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/140500939</guid><author>wangjiansui</author><pubDate>Wed, 17 Jul 2024 17:28:56 +0800</pubDate><description><![CDATA[HyDE不是基于原始问题生成查询，而是专注于为给定的查询生成假设性文档。生成这种假设性文档的直觉是它们的嵌入向量可以用来在语料库嵌入空间中识别一个邻域，在这个邻域中，基于向量相似性检索类似的真实文档。在这种情况下，RAG将能够基于假设性文档检索更相关的文档，以准确回答用户查询。尽管这种技术可能有助于回答问题，但由于基于错误/虚构的假设性段落检索文档，答案有可能是错误的。首先，与之前的笔记本类似，我们首先创建我们的向量存储，并使用。使用生成的段落，我们使用我们的检索器检索相似的文档。回答我们原始的问题。]]></description><category></category></item><item><title><![CDATA[LangChain-v0.2文档翻译：3.13、如何配置运行时链内部结构]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/140500639</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/140500639</guid><author>wangjiansui</author><pubDate>Wed, 17 Jul 2024 17:23:40 +0800</pubDate><description><![CDATA[本文介绍了如何在LangChain框架中配置运行时链的内部步骤。LangChain是一个用于构建和部署机器学习模型的Python库，特别适用于构建和配置复杂的处理链。通过。]]></description><category></category></item><item><title><![CDATA[构建LangChain应用程序的示例代码：68、如何使用百度千帆平台和百度ElasticSearch实现检索增强生成(RAG)]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/140500472</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/140500472</guid><author>wangjiansui</author><pubDate>Wed, 17 Jul 2024 17:15:13 +0800</pubDate><description><![CDATA[本文档展示了如何使用百度千帆平台和百度ElasticSearch实现检索增强生成(RAG)。它涵盖了从BOS加载文档、文本分割、嵌入向量生成、向量存储、检索器创建到最终的问答系统实现的完整流程。该实现利用了百度云的多个服务,包括千帆大模型平台、ElasticSearch和对象存储(BOS),展示了如何集成这些服务来创建一个强大的RAG系统。]]></description><category></category></item><item><title><![CDATA[构建LangChain应用程序的示例代码：67、如何使用OpenAI函数实现文本引用提取]]></title><link>https://blog.youkuaiyun.com/wangjiansui/article/details/140500330</link><guid>https://blog.youkuaiyun.com/wangjiansui/article/details/140500330</guid><author>wangjiansui</author><pubDate>Wed, 17 Jul 2024 17:11:14 +0800</pubDate><description><![CDATA[本文档展示了如何使用OpenAI的函数能力从文本中提取引用。它使用LangChain库创建了一个模糊匹配链,该链可以从给定的上下文中提取与问题相关的事实和证据。文档包括了完整的代码示例,演示了如何设置环境、创建链、运行查询以及格式化输出结果。]]></description><category></category></item></channel></rss>