Akemi

Akemi

it's better to burn out than to fade away

Langchain模块Callback组件
回调的基本概念: 在llm应用执行的每个阶段,比如日志记录、监控、流处理等 回调处理器是实现了callbackhandler接口的对象,每个可以订阅的事件都有一个方法,当事件被触发时,CallbackManager会在每个处理器上调用相应的方法 在哪些地方定义回调函数: 构造函数时定义:llmchain=(callbacks=[handler]) 发出请求时定义:llm.invoke(callbacks=… 构造函数中设置verbose为true,调用StdOutCallHandler 使用最简单回调123456789101112131415161718...
Langchain模块-DataCollection组件-Retriever检索器
用以查询嵌入到向量数据库中的数据 MultiQueryRetriever请求拆分多索引:将问题拆分出不同的问答 Contextual compression上下文压缩:对每个文件块进行摘要,方便于定位 self-querying元数据过滤器:将请求过滤成请求+过滤器,进行查询 时间加权向量存储检索器:加上时间因素 请求拆分多索引MultiQueryRetriever通过请求拆分多索,生成多维度的查询输入,其本身是一种增强了的检索器,可以被RetrievalQAWithSourcesChain所引用 1234567891011121314151617181920212223242526...
Langchain模块-DataCollection组件-文本嵌入与向量数据库embedding
维度 Chroma FAISS Milvus 类型 嵌入式向量数据库 向量检索库(非数据库) 分布式向量数据库 部署方式 轻量级,Python集成或独立服务 库形式集成,无独立服务 独立的数据库服务,支持集群 持久化 ✅ 支持(本地/云) ❌ 不支持(需额外实现) ✅ 支持(内置) 扩展性 中等,支持简单扩展 低,单机为主 高,分布式架构 生产就绪 适合中小规模 研究/中小应用 企业级大规模 查询功能 基础向量检索+元数据过滤 高性能向量检索 向量+标量混合查询、复杂过滤 社区生态 较新但增长快 成熟,Meta维护 活跃,CNCF项...
Langchain模块DataCollection组件-文件分割器splitter
文档转换器transformer文本切割、特征提取、问答转换、文档翻译、元数据标记器 文本分割这是最基本的将文本切割为不同的文档,可以选择使用换行符、逗号、句号等进行分割 1234567891011121314151617181920212223242526from langchain.text_splitter import CharacterTextSplittertext = """人工智能作为新一轮科技革命和产业变革的核心驱动力,正在对全球经济、社会发展和人类生活产生深刻影响。近年来,中国在人工智能领域取得了举世瞩目的成就,已成为全球人工智能发展的重...
Langchain模块DataCollection组件-文件加载器loader
为了llm应用获取外部数据,langchain提供了加载、转换、存储和查询数据的功能 文档加载器:加载不同来源的文档 文档转换器:拆分文档,将文档转换成问答格式、删除冗余文档 文本嵌入模型Embed:将非结构化文本转换为向量 向量存储:存储和搜索嵌入的数据 检索器:查询数据 文档加载器load csv、html、json、pdf文档加载 加载同一目录下多文档 第三方数据源组件 加载csv文档csv是一种使用逗号来分隔值的文本文件 csv文件加载器允许定制csv解析和加载,可以通过csv_args参数来设置,比如设定分隔符、引用字符和字段名等(跟awk差不多 12345678910...
Langchain模块ModelIO组件输出解析器output parsers
为什么需要输出解析器,因为调用大模型返回的内容并非给人看的,而是需要以特定的格式输出给其他的应用进行解析 解析器类型 输入示例 输出 适用场景 CommaSeparatedListOutputParser “苹果,香蕉,橙子” ['苹果', '香蕉', '橙子'] 简单列表提取 PydanticOutputParser {"name": "苹果", "color": "红"} Fruit(name='苹果', ...
Docker存储迁移实践
在很多情况下,比如docker里跑GPU训练、处理任务,或者是用registry作为私有容器仓库,都很容易遇到爆炸的情况 毕竟docker默认情况下,是将数据存放在/var/lib下的,占根目录的空间 收到开发反馈说这个k8s节点经常遇到临时存储不够的情况 使用ncdu / --exclude /data --exclude /mnt 在排除挂载的空间之后扫描了一下根目录下的文件,结果删除了一堆log之后,ncdu显示只用了40G,实际上用了100多个G 123456789101112131415161718192021222324252627282930313233...
Langchain模块ModelIO组件语言模型应用
langchain本身不提供大模型,提供了llms工具与其他大语言模型进行交互 设置内存缓存12345678910111213141516171819202122232425262728293031from langchain_community.cache import InMemoryCacheimport langchainfrom langchain_deepseek import ChatDeepSeekfrom dotenv import load_dotenvimport timeload_dotenv()llm = ChatDeepSeek(model="dee...
Langchain模块ModelIO组件-提示词、示例选择器
prompt template 提示模板 example selectors 示例选择器 language models 语言模型应用 output parsers 输出解析器 prompt与template最简单的使用prompt template12345678910111213141516171819from langchain_deepseek import ChatDeepSeekfrom langchain.prompts import PromptTemplatefrom dotenv import load_dotenvload_dotenv()llm = ChatD...
langchain模块介绍与简单案例
langchain是一个框架,用以 集成大语言模型、其他数据源(文档、数据库、应用库等) 让不同来源的数据进行交互 支持链,一连串的动作 langchain的基础数据类型 texts 自然语言交互 chat messages 特定消息分类 system:提供背景信息,告诉AI需要做什么 human:用户信息 AI:AI给出的回应 documents 文本和元数据 examples 例子(代表了函数的输入以及预期输出 langchain的组件 模型-IO输入输出 数据连接 文档加载器:加载不同来源的文档 文档转换器:拆分文档,将文档转换为QA格式等 文本嵌入模型:将非结构化的文档...
avatar
王盛
当生命指向成长,时间就是你的朋友
FRIENDS
MyCSDN