AI Agent从无到有43: LangChain 数据加载器全解析 — PDF、网页、CSV 与自定义 Loader

「文智助手」全场景办公AI助理AI+OPC全流程实践方案(大赛作品) 阅读详情

纲要

  • 数据加载器在 RAG 系统中的定位与 LangChain 统一契约
  • 常见内置加载器实战
    • PyPDFLoader:文本型 PDF 解析
    • 多模态图文 PDF:结合视觉模型与 Base64 编码的解析方案
    • WebBaseLoader:基于 BeautifulSoup 的网页内容提取
    • UnstructuredURLLoader:非结构化网页自动解析
    • CSVLoader:CSV 文件逐行加载
    • Excel 加载方案:Azure Document Intelligence 与本地 pandas 备选
  • 自定义加载器开发
    • 继承 BaseLoader,实现 lazy_load 迭代器
    • 使用 yield 返回 Document 对象,保留元数据
  • 完整可运行 Demo:整合 TextLoader、CSVLoader 与自定义逐行加载器的本地演示

引言

在 RAG(检索增强生成)系统中,数据摄取是决定最终检索质量的首个关键环节。原始数据通常以 PDF、网页、表格等形式分散在不同存储中,格式各异。LangChain 通过定义统一的 Document 对象(包含 page_content 文本和 metadata 元数据)和丰富的加载器生态,将多源异构数据转化为标准流水线输入。本文以实战代码为主线,系统讲解常用加载器的用法、注意事项,并手把手实现一个支持逐行读取的自定义加载器,为后续文本切片、向量嵌入与检索打下基础。

文档加载器:从原始数据到 Document

LangChain 中所有加载器均遵循同一契约:输入为文件路径或网络 URL,输出为 Document 对象的列表(或迭代器)。每个 Document 包含:

  • page_content:字符串形式的文本内容
  • metadata:字典,记录来源、页码、时间戳等上下文信息

该统一设计使得下游的文本分割器、嵌入模型和向量存储能够无缝对接,无需关心数据来源的具体格式。

常见加载器实战

PDF 加载:文本型 PDF

PyPDFLoader 是最基础的 PDF 文本提取工具,底层依赖 pypdf 库,支持按页解析。适用于原生文本型 PDF(非扫描件)。

from langchain_community.document_loaders import PyPDFLoader

loader = PyPDFLoader("example.pdf")   # 替换为实际文件路径
pages = loader.load()
for page in pages:
    print(f"Page {page.metadata['page']}: {page.page_content[:200]}")

若 PDF 为扫描图像或包含复杂表格,纯文本提取将丢失大量信息,需采用多模态方案。

多模态图文 PDF 解析

对于含图表、照片的 PDF,可将页面转换为 Base64 编码的图像,并借助多模态大模型(如 GPT‑4o)进行视觉理解。以下示例展示如何构建包含图像和文本的对话消息。

import base64
from langchain_core.messages import HumanMessage
from langchain_openai import ChatOpenAI

# 假设已有函数将 PDF 页面转为 Base64 字符串(实际可使用 pdf2image 或 PyMuPDF)
def pdf_page_to_base64(pdf_path, page_num=0):
    # 此处省略具体转换逻辑,返回图片的 base64 编码
    return "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg=="

image_base64 = pdf_page_to_base64("chart.pdf", page_num=0)
model = ChatOpenAI(model="gpt-4o-mini")
response = model.invoke([
    HumanMessage(content=[
        {"type": "text", "text": "图中一线城市消费者占比是多少?"},
        {"type": "image_url", "image_url": {"url": f"data:image/png;base64,{image_base64}"}}
    ])
])
print(response.content)

注意:该方案依赖外部图像转换库,且会消耗较多 token,适用于对视觉信息要求较高的场景。

网页加载:WebBaseLoader

WebBaseLoader 基于 requests 和 BeautifulSoup,可从指定 URL 提取清洗后的纯文本内容。默认过滤掉脚本、样式等无关元素。

from langchain_community.document_loaders import WebBaseLoader

loader = WebBaseLoader("https://example.com")
docs = loader.load()
print(docs[0].page_content[:500])

若只需提取页面中特定区域(如某个 CSS 类),可通过 bs_kwargs 传递 SoupStrainer 进行精细控制。

from bs4 import SoupStrainer

loader = WebBaseLoader(
    "https://example.com",
    bs_kwargs={"parse_only": SoupStrainer(class_="main-content")}
)
docs = loader.load()

非结构化网页:UnstructuredURLLoader

当目标网页结构复杂或无法预知时,可使用 UnstructuredURLLoader,它内部调用 unstructured 库自动识别并提取正文,无需手动编写解析规则。

from langchain_community.document_loaders import UnstructuredURLLoader

loader = UnstructuredURLLoader(["https://example.com"])
docs = loader.load()

该加载器对动态渲染的页面(JavaScript 生成内容)支持有限,必要时可结合 Selenium 等工具。

CSV 加载:CSVLoader

CSVLoader 将 CSV 文件的每一行转换为一个独立的 Document,默认合并所有列内容。可通过 source_column 指定用作元数据来源的列(如标题)。

from langchain_community.document_loaders import CSVLoader

loader = CSVLoader(file_path="data.csv", source_column="Title")
docs = loader.load()
for doc in docs:
    print(doc.metadata, doc.page_content[:50])

Excel 加载

Excel(.xlsx / .xls)的解析推荐使用云服务如 Azure Document Intelligence,它能智能识别表格结构和合并单元格。本地轻量替代方案是利用 pandas 读取后手动构造 Document 列表,但需自行处理表头、空值等细节。

自定义加载器:逐行读取文件

当内置加载器无法覆盖特殊格式(例如日志文件、自定义分隔符文本)时,可继承 BaseLoader 并实现 lazy_load 方法。该方法返回一个迭代器,使用 yield 逐个产出 Document,避免将所有内容一次性加载到内存。

以下示例实现了一个逐行读取文本文件的自定义加载器,每行生成一个 Document,并记录行号和来源路径。

from langchain_core.document_loaders import BaseLoader
from langchain_core.documents import Document
from typing import Iterator

class LineDocumentLoader(BaseLoader):
    def __init__(self, file_path: str):
        self.file_path = file_path

    def lazy_load(self) -> Iterator[Document]:
        with open(self.file_path, "r", encoding="utf-8") as f:
            for line_no, line in enumerate(f, start=1):
                yield Document(
                    page_content=line.strip(),
                    metadata={"line_number": line_no, "source": self.file_path}
                )

完整可运行 Demo

以下示例整合了 TextLoader、CSVLoader 和上述自定义 LineDocumentLoader,全部使用临时文件,无需外部 API 即可直接运行。

环境依赖(确保已安装):

pip install langchain langchain-community

完整代码:

import tempfile
import os
from langchain_community.document_loaders import TextLoader, CSVLoader
from langchain_core.document_loaders import BaseLoader
from langchain_core.documents import Document
from typing import Iterator

# ---------- 自定义逐行加载器 ----------
class LineDocumentLoader(BaseLoader):
    def __init__(self, file_path: str):
        self.file_path = file_path

    def lazy_load(self) -> Iterator[Document]:
        with open(self.file_path, "r", encoding="utf-8") as f:
            for line_no, line in enumerate(f, start=1):
                yield Document(
                    page_content=line.strip(),
                    metadata={"line_number": line_no, "source": self.file_path}
                )

# ---------- 使用临时目录演示 ----------
with tempfile.TemporaryDirectory() as tmpdir:
    # 创建文本文件
    txt_path = os.path.join(tmpdir, "sample.txt")
    with open(txt_path, "w", encoding="utf-8") as f:
        f.write("LangChain 是一个强大的 LLM 框架。\n它支持链式调用和 RAG。\n")
    
    # 创建 CSV 文件
    csv_path = os.path.join(tmpdir, "data.csv")
    with open(csv_path, "w", encoding="utf-8") as f:
        f.write("title,content\nAI Agent,智能体\nRAG,检索增强生成\n")

    # 1. TextLoader 加载
    text_loader = TextLoader(txt_path)
    text_docs = text_loader.load()
    print("--- TextLoader 结果 ---")
    for doc in text_docs:
        print(doc.page_content)

    # 2. CSVLoader 加载
    csv_loader = CSVLoader(csv_path)
    csv_docs = csv_loader.load()
    print("\n--- CSVLoader 结果 ---")
    for doc in csv_docs:
        print(doc.page_content)

    # 3. 自定义 LineDocumentLoader 加载
    line_loader = LineDocumentLoader(txt_path)
    line_docs = list(line_loader.lazy_load())
    print("\n--- 自定义逐行加载器结果 ---")
    for doc in line_docs:
        print(f"第{doc.metadata['line_number']}行: {doc.page_content}")

运行后,三种加载器分别输出相同源文件的不同粒度表示,充分展示 LangChain 加载器生态的灵活性与可扩展性。

API 速览

加载器所属包主要构造参数关键方法返回值
PyPDFLoaderlangchain_community.document_loadersfile_path: strload()List[Document]
WebBaseLoaderlangchain_community.document_loadersweb_path: str, bs_kwargs: dictload()List[Document]
UnstructuredURLLoaderlangchain_community.document_loadersurls: List[str]load()List[Document]
CSVLoaderlangchain_community.document_loadersfile_path: str, source_column: strload()List[Document]
TextLoaderlangchain_community.document_loadersfile_path: strload()List[Document]
自定义加载器用户实现任意lazy_load()Iterator[Document]

参考文档

官方文档

参考链接

总结

本文系统梳理了 LangChain 中常用数据加载器的使用方法,涵盖 PDF、网页、CSV 等常见格式,并给出了多模态 PDF 解析和自定义加载器的开发范例。

通过统一 Document 结构,开发者可以轻松将不同来源的数据接入 RAG 流水线。

掌握这些工具后,下一步即可对 Document 列表进行文本切片、向量嵌入并存入向量数据库,从而构建完整的智能检索与生成应用。

船载 OpenHarmony AIS 航海工作台:告警与防碰撞预警系统 船载OpenHarmony AIS航海工作台的告警与防碰撞系统,集成十余类告警(超速、偏航、会遇、SOS等),通过网格空间索引实现高效邻近判定,保障实时性。告警管理器统一调度规则、去重、通知与日志,支持悬浮球、语音、跑马灯、弹窗多渠道触达,确保航行安全。SOS紧急通道独立运行,避免干扰。系统设计强调性能优化与多场景适配,为航海安全提供核心支撑。 阅读详情

相关推荐

内网穿透-frp二层隧道搭建

环境: weblogic: 192.168.0.133 10.10.20.12 win7 : 10.10.20.7 10.10.10.7go语言、跨平台的 可以分为frpc和frps frpc—>请求----->frps frps:放到黑客公网上 1.需要出网 2.配置: frpc:放到肉鸡上,请求frps 2.端口转发 2.1frpc传到肉鸡(weblogic) 利用工具,传入内存马到weblogic,然后使用冰蝎进行连接 然后在文件管理中上传frpc.exe和frpc.ini文件 fr

yyytaotao的博客 2103

【AI大模型应用开发】【基础】7.LangChain基础知识入门

LangChain是一个围绕大语言模型(LLMs)构建的框架,组件包括: Models:支持LLMs、ChatModels和Embeddings, Prompts:通过模板管理提示词,支持Zero-Shot和Few-Shot提示方式, Memory:保存交互上下文,分短期和长期记忆Indexes:处理文档加载、分割(如CharacterTextSplitter)、向量存储(如Chroma/FAISS)及检索,Chains:组合多个组件,Agents:动态调用外部工具(如计算器、搜索引擎)解决模型局限问题

资深系统架构,深耕高并发研发与 AI 大模型工程化落地。技术栈以 Python (AI/NLP/RAG/Agent) 与 Golang (高并发架构) 为双核心,兼具 PHP 大型应用经验。专注算法落地、复杂系统设计及团队技术赋能 356

uCOS中的消息邮箱(:task与task之间传递一个数据(数据缓冲区))

程序需求,需要完成task与task之间  字符数组的数据传输 比如:在ucos中,串口2接收的字符数组是不定时的&不定长的;只有当接收到数据的时候_才将数据赋值给新数组 具体的程序示意如下: 图1:消息邮箱测试中的     向消息邮箱发送消息(OSMboxPost(Str_Box,(void*)rec);//发送消息--(向 消息邮箱_msg_key发送消息) ),实际项目需求的

faguoduifangui的博客 4540

视频隐私脱敏工程化:CSRT/KCF追踪算法在本地推理中的实现与边界

在短视频内容合规审查中,动态遮挡(Dynamic Masking)是高频且高耗时的环节。传统手动关键帧打码不仅效率低下,且在目标快速移动或遮挡时极易出现遮罩漂移。本文从计算机视觉工程角度,解析基于CSRT与KCF算法的目标追踪方案在视频隐私处理中的技术路径、性能权衡及落地实践。

Mysssone的博客 224

解决mmdet3d安装中因PyTorch高版本引发的THC.h缺失问题

本文详细分析了在安装mmdet3d时,因PyTorch版本过高导致THC.h头文件缺失的常见报错问题。文章指出该错误的本质是PyTorch 1.7+版本废弃了旧API,与老版本C++扩展代码不兼容。提供了两种核心解决方案:一是降级PyTorch至1.6及以下版本;二是修改源码,将THC.h引用替换为ATen/cuda等新头文件,并给出了具体的代码修改示例和排查技巧。

weixin_29085151的博客 379

零代码搭建专业知识库:Wiki.js+cpolar让团队协作像写笔记一样简单

"项目文档又找不到了!“团队负责人小张第N次在群里看到这样的抱怨——技术文档分散在邮件、网盘和个人电脑里,新人入职要花一周熟悉文档位置,远程协作时版本混乱更是家常便饭。Wiki.js与cpolar内网穿透服务的出现,就像给团队协作装上了"中央大脑”,用写Markdown笔记的简单方式,搭建一个专业的知识库系统。普通人对知识管理的需求其实很简单:方便记录、容易查找、大家能用。但传统方案把这个过程搞得异常复杂:建服务器、配环境、学语法、搞权限……大部分团队还没开始就放弃了。

Yawesh的博客 2040

6 款电商 AI 图片生成软件实测|国内 + 跨境卖家工具清单

电商 AI 作图工具已经从 "能不能用" 进入了 "好不好用" 的阶段。对于绝大多数卖家而言,现在的 AI 工具已经可以覆盖 60%-80% 的基础商品图需求,显著降低拍摄和设计成本。选择工具的核心逻辑不是 "哪款最强",而是 "哪款最适配你的品类、平台规模和团队能力"。垂直电商工具胜在工作流效率,通用生图工具强在创意上限,模板类工具赢在上手速度。建议根据自身业务阶段,搭配 1-2 款主力工具 + 1 款辅助工具,形成适合自己的视觉生产流程。

Mardi_Ladin的博客 398

Delta-Sigma调制(DSM)技术

前言 数字信号处理和通信系统的性能很大程度上受到了模拟信号到数字信号转换接口——ADC的精度和分辨率的限制。而传统的线性脉冲编码调制(PCM)ADC受到了制造工艺的限制,无法达到很高的分辨率。但基于Delta-Sigma调制技术的ADC可以在现有工艺下实现高分辨率(大于16位),同时由于结构简单,所以易于实现。低成本高性能使得Delta-Sigma调制技术得到了广泛的应用。 Delta-Sigma型ADC的结构原理图如下图所示: 它最大的优势在于仅用1位ADC进行数据转换,同时其模拟电路部分结构简单不需要

阿星的博客 2万+

我用 GPUWorks 在 M1 Pro 上搭了个发票识别原型

公司里经常要看电子发票。我想先做个小原型:把 PDF 发给一个自己部署的图文模型,让它提取发票类型、日期、交易双方和金额,再把结果交给同事核对。这个原型不用先接财务系统,先看看从部署到调用要走多少步,模型返回的内容能不能帮上忙。

鸽芷咕的博客 2万+

pwm电机调速的原理介绍与代码实现

1、pwm实现调速的原理与介绍 PWM(Pulse Width Modulation)脉冲宽度调制。 1)占空比 pwm占空比就是一个脉冲周期内有效电平在整个周期所占的比例。 通过调节PWM的占空比就能调节IO口上电压的持续性变化,因此也能够控制外设的功率进行持续性变化,也就能控制直流电机的转速快慢。 那么重点就在于如何调节PWM波形的输出。如下图所示 图中的ARR是我们给定时器的一个预装载值,CCRx的上下变化是产生PWM波的关键。我们假设ARR大于CCRx的部分输出为高电平(即t1-t2、t3-t4

Clichong 7万+

第0章 《机器人工程师带你入门SLAM》专栏所有文章目录汇总(截止目前115篇文章),方便大家查看阅读

《机器人工程师带你入门SLAM》专栏文章汇总:优快云热销专栏已更新100+篇优质内容,涵盖SLAM技术全栈知识体系。文章分为三大类:1)基础工具与环境配置,包括Ubuntu、Git等必备技能;2)C++编程从入门到进阶,详解变量、类、模板等核心概念;3)SLAM核心库实战,深入解析ROS、Eigen、PCL等关键库的应用。专栏提供从计算机基础到项目实战的系统学习路径,并附代码实例。点击专栏主页可订阅查看全部内容,后续将保持更新。

行知SLAM 1068

您您这可以把问小白的多个会话比如说。左侧的多个会话一次性导出吗?不是单条会话里面的多次会对话。AI导出鸭

第三层是格式编译层。这个决策背后的判断很清晰:一个批量导出工具的价值,不在于“试三次”,而在于你真正用它处理了几十份技术文档、访谈记录或课程讲义之后,它是否值得留在你的工作流里。问小白的会话列表通过分页接口加载,AI导出鸭 在页面运行时建立旁路监听,捕获每一次分页请求返回的完整对话清单,包括会话 ID、标题、时间戳和隐藏的元数据字段。让AI导出回归优雅——这句话说的是:导出不该是体力活,而应该是一次完整的、可预期的文件交付。注意:这里的“批量”指的是左侧列表里的多个独立会话,不是一条会话内的多轮对话。

laoyunsi的博客 246

使用Simulink进行无刷电机霍尔传感器信号处理电路的仿真

位置检测:霍尔传感器可以检测转子的位置,这对于实现无刷电机的电子换向至关重要。提高效率:通过准确的位置信息,可以优化电机的工作状态,提高效率和性能。通过上述步骤,我们简要介绍了如何基于Simulink实现无刷电机霍尔传感器信号处理电路的仿真。

MHD0815的博客 431

【从零理解 Spring AI · 12】MCP 的两种角色:做客户端还是做服务端

上一篇讲了 MCP 的概念:标准协议、三大角色、M+N 替代 M×N。

nice_lcj520的博客 500

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

河道漂浮物目标检测数据集

目标检测,yolo,河道漂浮物目标检测数据集

DL_data_set的博客 201

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

AI Agent之核心框架

A: 显式 Thought 有三类价值:可解释性(便于人类审计)、可调试性(定位哪一步选错工具)、学习信号(可做监督微调或评估中间步骤质量)。ReAct 把推理与 可执行行动 绑定,每一步行动后都有 真实 Observation 反馈,从而用工具结果约束生成,降低闭卷幻觉。做完不等于结束——还要 评估做得好不好,把 教训 记下来,下次 带着教训重试,反思作为 记忆,影响后续尝试的策略。工作流程:Action → Evaluation → Reflection → Retry。A: 普通 CoT 只在。

剑雨巍巍的博客 199

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

AI 应用开发工程师技术实践:大模型接入、通用组件封装与性能优化

本文提出AI应用从PoC到生产的核心挑战:模型调用的持续可用、可控与可优化。通过构建统一LLM网关实现多供应商路由与故障转移,封装对话、工具调用与RAG组件以解耦业务逻辑,结合前缀缓存、批处理与流式背压治理等性能优化手段,形成“接通→接稳→接快”的工程路径,最终以工程化能力决定AI应用的生产可用性。

2301_79189962的博客 558

AI前沿日报 · 2026-11-04 | 祛魅时刻:Astra“纯读权重“神话的崩塌

①Astra"裸权重通吃"被spaCy创始人Honnibal精准祛魅——仅1/3实验真裸读,数学能力提升依赖Python+50次迭代;②Simon Willison用Qwen 3.8-27B端侧复现权重空间编程;③Nvidia开源Auto-Ontology自动知识图谱;④$800开源全域抓取机器人Stringman;⑤OpenAI悄然重开Codex训练开关引信任危机;⑥DeepMind发布Gemini 4 Argon机器人基础模型;⑦美国科技巨头隐性AI债务达3.2万亿美元,6个月增90%。

johnsong2009的博客 573

大模型 Embedding 与向量相似度详解

Embedding 解决的问题:计算机不懂文字,但懂数字│▼文本 → 向量(1024维浮点数数组)│▼相似度解决的问题:怎么判断两个向量(文本)有多接近│▼余弦相似度:看向量方向的夹角,越接近0°越相似│▼最终效果:语义搜索——理解意思,而非字面匹配一句话总结:Embedding 把文字变成数字,余弦相似度比较数字的方向,两者结合实现了"理解语义"的搜索。

T3165919332的博客 90

GPT-1 架构和计算细节

下面配合框图,对 GPT-1 的每个组件做公式展开 + 数值实例(配置:12 层 × 768,12 头,FFN 3072,词表 40478,共 117M 参数)。GPT-1 把翻译模型的编码器-解码器砍掉一半,只留解码器,然后以"预测下一个词"为目标在 BooksCorpus 上预训练。与 2017 原版的四个架构差异(框图中标 ★):h0=E[token]+Epos[position],E∈R40478×768, Epos∈R512×768h^0 = E[\text{token}] + E_{pos}[\

eloudy的专栏 278

终端 AI 审计与 “龙虾” 类智能体风险治理:从可见性到闭环溯源

生成式 AI 办公普及之后,数据泄露风险逐步下沉到终端。员工将合同、源代码、客户资料粘贴至公有大模型,以及龙虾(OpenClaw)这类本地开源 AI 智能体的滥用,成为企业安全新挑战。传统网络边界防护存在审计盲区,本文从风险链路拆解、核心能力模型、分级治理策略、落地踩坑点以及技术局限性多角度,分享终端侧 AI 安全治理的实践思路。

2401_86491085的博客 640

2.53 基于极稀疏指纹的室内定位注意力图元学习

该论文发表于IEEE Transactions on Mobile Computing(TMC)2026年6月,面向极稀疏指纹条件下的WiFi室内定位,针对指纹采集人力成本高、标记指纹稀缺时定位精度大幅下降的痛点,提出注意力图元学习模型AGML(Attentional Graph Meta‑Learning),结合图神经网络、元学习、两种指纹数据增强与分布对齐技术,在标记指纹极少的场景实现高精度室内定位,同时公开了多套真实+仿真定位数据集用于基准测试。场景:二维室内空间,障碍物造成信号遮挡,

weixin_42963026的博客 338

语音识别与语音合成的技术原理及应用

语音识别 #语音合成 #人工智能 #大模型。语音识别与语音合成的技术原理及应用。一、语音识别的核心原理。二、语音合成的核心原理。三、工程落地的主要难点。五、需要关注的现实问题。

weixin_62919816的博客 210

设计师工作室 GEO 实操:如何提升 AI 实体推荐概率

设计工作室 GEO 的本质,是把创意服务转化为 AI 可理解的结构化信息。核心动作可归纳为:区分事实与审美、建立实体图谱、预判用户提问、输出脱敏内容、搭建多信源、持续测试验证。梳理工作室的 6 个实体属性:品类、城市、流程、边界、团队、渠道。在官网或作品集平台发布至少 3 篇结构化项目复盘,只陈述事实。输出 1 篇「设计报价影响因素」科普内容,覆盖甲方高频提问。争取 1 次行业媒体或本地媒体专访,形成第三方信源。每周用「XX 城市 + 品类 + 设计工作室推荐」指令测试,记录出现频率。

goujunwe的博客 337

AI作图软件技术选型:从4个技术维度出发的实测对比

AI作图软件技术选型:从4个技术维度出发的实测对比

Vbaoke的博客 205

WorkBuddy 实战:一句话需求 → 七屏可交互原型,户外徒步 App 的 AI 设计全流程

WorkBuddy 实战:一句话需求 → 七屏可交互原型,户外徒步 App 的 AI 设计全流程,跟着博主一起来还原整个过程。

夜郎King的博客 4628
上一篇: AI Agent从无到有42: RAG 数据预处理实战 — 文档加载、切片与向量化
下一篇: AI Agent从无到有44: RAG 文档切分策略深度解析——从长度切割到语义边界
Wang's Blog
博客等级 码龄12年 7420粉丝 2411原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wang's Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值